mtk平台个人笔记精髓_第1页
mtk平台个人笔记精髓_第2页
mtk平台个人笔记精髓_第3页
mtk平台个人笔记精髓_第4页
mtk平台个人笔记精髓_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

关于MTK Simulator1. MTK simulator的工程文件是 PixtelMMI.dsw。2. 打开PixtelMMI.dsw,检查文件default_Fmrdo.c、default_mmi_profiles.c、default_mmi_settings.c、default_version.c文件是否存在工程文件中,上述文件存放目录:项目所在目录customappMILAN_BB。3. 在调试运行过程中会提示某些DLL文件无法连接,这是VC没有安装。DLL文件所在目录:VC安装盘VC98DEBUG。把缺失的文件复制到window安装目录下的System32目录里。4. 运行MTK Simulator,选取FileNewwork Simulator,会运行MMINWSimulator;在MMINWSimulator菜单中,选取MenuMessages,会弹出一个Send Event窗口,窗口里有一个Events列表,列表里有不同用途种类的Events;如果需要启动手机,选取BootUp Events,点击OK按钮,MTK Simulator模拟开机过程。 关于调试语句的说明kal_print语句:该语句只能打印字符串信息。Trace_out语句:该语句可以输出格式化字符串。ASSERT语句:断言语句。Trace语句:可以输出格式化字符串。 关于MTK Target的编译连接批处理命令: Milan.bat 。l 概述在windows下,打开dos编辑窗口(开始运行cmd),找到工程代码所在根目录,如:E:MTK6217 输入编译批处理命令:格式:makecustom=projectNameproject actionmodulesExample: make custom=mtk6217 gprs newModules:用于对单个模块进行编译的选项。如果没有指定,则对所有的模块进行编译处理。如果指定了模块名,则对指定的模块进行编译处理。后面的modules是nucleus之类的,可以不用写,中间的除了mtk6217工程名外可以照写,mtk6217工程名可以在你的源代码的make目录下有个工程文件名,比如我的例子就叫mtk6217_gprs.mak,你将你的替换就可以了,另外,除了上面的仁兄跟你说的ADS1.2以上 perl也要5.*,我用的是ActivePerl-31-MSWin32-x86.msi名字的,你查找下载一下,最后你还需要安装VC6,这才能确保编译不出错。New:全面的编译,包括了所有的资源,代码,会把生产的所有的obj都删除掉,重新产生;还有一些代码的拷贝,特别是资源和定义头,如:mmi_features.h编译选项说明:1) New:全面的编译,包括了所有的资源,代码,会把生产的所有的obj都删除掉,重新产生;还有一些代码的拷贝,特别是资源和定义头,如:mmi_features.h2) update:主要是资源和代码的编译,一般不怎么用,比new要编译的少一点,也是比较全面的编译3) remake:这个最常用,如果你没有修改资源(图片、铃声、字符串),只修改了*.c文件,就用这个编译就可以了,会从新产生bin文件4) 还有一个值得要说的是resgen,这个是专门用于编辑资源的,和remake编译配合(先resgen产生资源,再remake)比较快。l Milan.bat执行流程1) Milan.bat:选择资源文件,根据资源文件得选项,复制不同得资源配置文件,并改名为custom_config.bld,根据用户选择得编译选项调用make.bat custom=Milan gprs new/update/remake。2) Make.bat:判断当前得操作系统后,调用相应得批处理 m_win2k.bat %*, %*表示调用make.bat命令行的所有参数作为m_win2k.bat的命令行参数。3) M_win2k.bat:根据命令行参数设置环境变量DEFAULT_CUSTOM、CUSTOMER、PROJECT、ACTION等,生成了编译配置文件labelbuild.tmp、buildinfo.tmp、cleanmod.tmp、updatemod.tmp、remakemod.tmp,调用命令:toolsmake.exe -fmakegsm2.mak -r -R CUSTOMER=%CUSTOMER% PROJECT=%PROJECT% %ACTION%,再milan这个项目编译处理中:CUSTOM = Milan,PROJECT = gprs,ACTION% = new / update / remake 。4) Gsm2.mak:1. 包含其他的makefile文件:option.mak,buildinfo.tmp,Milan_gprs.make,custom.bld,verno_Milan.bld,cleanmod.tmp,updatemod.tmp,remakemod.tmp、comp.mak。l 关于Perl、ADSv1_2的路径设置Perl的搜索路径设置是在Milan.bat批处理中;ADSv1_2的搜索路径设置是在make路径下的文件Option.mak;l 源程序编译配置文件在make目录下,.pth文件表示该模块下需要编译的源文件所在的相对目录;.lst文件表示需要编译的源程序的相对文件名;.inc文件表示头文件的路径;.def文件表示定义的条件编译宏。 如何在NVRAM增加一个保存记录的文件1. custom_nvram_editor_data_item.h(目录:MILAN0538customappMILAN_BB)2. nvram_user_defs.h(目录:MILAN0538customappMILAN_BB)3. nvram_user_config.c(目录:MILAN0538customappMILAN_BB)4. NVRAMEnum.h(目录:MILAN0538plutommimmiFrameworkNVRAMManagerNVRAMManagerInc) MTK架构 MMI |-|-primitive basedprimitive interface |parameter converter |function interface L4A |-function based | L4C Layer 4说明:就是mmi和L4A是依赖primitive 通讯,即message primitive based;l4a和l4c用function call的方式联系 function based;layer 4就是一个中转站,中转各layer和mmi的通讯.MTK 6219手机解决方案由5部分组成1. L1 protocol2. device driver3. protocol stack4. MMI5. WAP Application;MTK 6219 solution 提供了3个测试工具1. Catcher2. META3. MCT。MTK 6219 software solution可分为3部分1. MS Executable Software1. OS:OS Adaptation Layer;MTK采用的是Nucleus OS,OSL的目的是为了使MTK软件方案适应于Nucleus OS,在Nucleus OS的基础上封装了一层,该层就是OS。2. L1 Protocal Stack:GSM Physical Layer,支持5Series技术规范下的比特流发送。为上层提供服务,Control the mapping 和调度逻辑通道和物理通道。实现了TDMA framing和无线控制。1) Layer 1 Asynchronous:处理来自上层的消息和将消息处理的结果发送给上层。2) Surrounding Cell Engine:handles the neighbor cell power measurement and neighbor cell synchronization information acquisition.3) Layer 1 Control: handles the TDMA scheduling on the radio environment, including timing advance and power control command from serving base station.4) Layer 1 Driver: handles the DSP and Radio control.。3. Drivers: Device Driver, like SIM,UART,GPIO etc. Driver为MCU所有的外围设备提供了控制功能接口。该模块处理许多手机用户可见的操作,比如按键处理、LCD显示。与L4 entity进行交互,提供在设备控制功能函数,用于访问设备的寄存器。1) 与MCU外围设备相关的1. SIM: Subscriber Identity Module2. UART: Universal Asynchronous Receiver/Transmitter3. SPI: Serial Port Interface4. GPIO: General Purpose Input/Output5. GPT: General Purpose Timer6. RTC: Real Time Clock7. WDT: Watch Dog Timer8. PWM: Pulse Width Modulation9. Alerter10. Keypad11. PMIC: Power Management IC12. BMT: Battery Charging Management task13. AUX task: Auxiliary task14. ADC Sched.: Analog to Digital Converter Scheduler15. USB task: The USB 1.1 protocol and driver16. IrDA task: The IrDA and driver17. Camera: Camera driver for integrating with 3rd party camera module18. MSDC: Memory card driver, supporting SD, MMC cards and Memory Stick2) 与MCU虚拟设备相关的1. Resizer: Software for controlling resizer engine2. Image DMA: Software for controlling the dedicated DMA channels for images.3. Image Proc.: Software for controlling Image effect engine.4. G2D: Graphic 2D engine.5. LCD: LCD interface, support 4 layers.6. ISP: Support image process to compensate the Lens/sensor effect.7. GIF decoder: Software for controlling hardware GIF decoder.8. Mpeg4/H.263 codec: Software for H.263/Mpeg4 decode/encode.9. JPEG codec: Software for controlling hardware JPEG decoder/encoder4. L2/L3/L4 Protocol Stack: GSM Protocal Stack Layer . 该模块包含了许多GPRS/GSM的Requirement,为应用程式提供了一个GSM/GPRS平台;该软件平台能简单容易地通过AT命令使用Local MMI或PC控制。结构如下:1. RMI: Remote MMI, for example, PC side. Use AT-command to communicate with Protocol Stack through UART port.2. FMI: Feature rich MMI, described in the above section. This is the production co-worked with Pixtel.3. L4: Layer 4. L4 is a task through which FMI and/or RMI communicate with PS. L4 task includes several sub-modules.1) ATCI: AT command interpreter. Interprets the AT commands from PC side and commands the L4C to do the relative actions.2) L4A: L4 adaptation layer for FMI. The SAP between FMI and L4A is primitive base.3) L4C: L4 control entity. Handles all applications request and response.4) UEM: User equipments adaptation. Adaptation for drivers, like Keypad, LED, GPIO, Audio卐tc.5) PHB: Phone book management. Handles the phone books related processing, like: sorting卐tc.6) SMU: SIM management unit. Handle the security management, and STK.7) CSM: Circuit switching protocol stack management.8) RAC: Registration access control.9) SMSAL: Short message service application layer.10) TCM: Terminal context management.4. NVRAM: Non-volatile RAM. This is adaptation layer to flash memory.5. SIM: Subscriber identity module. Handle SIM behavior as ETSI 11.11 description.6. DATA: Circuit switched data service. Data task includes several sub-modules.1) FAX: Group 3 Facsimile.2) TDT: Transparent circuit switching data.3) L2R: Layer 2 relay protocol for non-transparent circuit switching data.4) RLP: Radio link protocol for non-transparent circuit switching data.7. CC: Circuit-switched call control.8. SS: Supplementary service.9. SMS: Short message service.10. SM: Session management.11. MM/GMM: Mobility management/GPRS mobility management.12. SNDCP: Subnetwork dependent convergence protocol.13. LLC: Logical link control.14. RR: Radio resource management. RR task includes several sub-modules.1) RRM: Handles cell selection and PLMN selection.2) RMPC: Handles the procedures in Idle/Dedicated state including the surrounding cell scheme and measurement reporting.3) LAPDM: Handles the procedure defined in GSM layer 2.4) RLC: Radio link control protocol.5) MAC: Medium access control protocol.6) MPAL: Adaptation layer for RR and L1A.15. PPP: Point to Point protocol layer. This is client PPP layer.5. MMI:该部分包含了用户界面框架、应用程式和与协议栈的通讯;MMI和L4之间是通过消息进行交互得(The interface between MMI and l4 is primitive based)。1. Framework1) OSL: OS adaptation layer2) Task: communication with L4 task.3) File system: communication with storage device.2. GUI1) Theme2) UI component3) Category screen4) Font5) Editor6) T9 or Ezi input method.7) Access LCD driver.8) Customization tool.3. Application1) Phonebook2) Messages (SMS, EMS 4.0, CB)3) Call history4) Setting. (Phone setting,network setting,security setup)5) 5 kinds of user profiles:(情景模式:户外、会议、家中等)6) Fun and games7) Organizers8) Services9) Shortcuts10) In call management.11) Interrupt events, like charging, alarm.6. GDI and MDI interface: 1. GDI: Graphic Device Interface, like multi-layers control. GDI is abbreviate for Graphic Device Interface, which provides APIs for upper MMI applications, WAP, and JAVA to process graphic related manipulation, either by software or by access graphic related HW device (LCD, HW font engine, HW decoder, etc).2. MDI: Multimedia Device Interface, including audio and MPEG4 files control.7. WAP & MMS:This WAP browser is from Teleca Obigo Q3C version. MediaTek had several tasks to provide Internet applications. Currently, we support WAP 1.2.1 and 2.0, MMS 1.1.1. Mobile suite framework: This is adaptation layer to protocol stack and GUI interface.2. Security: This covers WTSL class 1,2.3. STK: WAP HTTP stack.4. Provision: WAP provision service.5. Push: WAP push service.6. Browse service: WML script parsing.7. MMS service: MMS script parsing.8. SMIL service: SMIL script parsing.9. MMS App: MMS display and scenario handling.10. Browser App: WAP browser application.2. The Mobile Engineering Test Architecture( META):提供了RF测试、NVM读写测试、相关的语音测试(包括铃声和语音)。META由METATARGET、METALAB和METAFactory组成。METATARGET是MT62XX系列的图形硬件平台。在只有TST任务、FT任务、NVRAM任务、L1语音任务的测试模式下才能运行METATARGET。METALBA和METAFactory是pc端的应用程序。METALBA提供了通用的测试功能:RF TX/RX/AFC测试、基带测试(包括register access 和 AUX ADC testing)、NVRAM调整、声音调试(语音的播放、记录和删除,铃声的下载和播放),这些测试因为没有专用设备支持,必须手工操作。而METAFactory是为工厂生产线提供RF的校准功能,它支持专用设备控制。METALBA是用于实验室或工厂,主要用于RF,BB(Baseband)和系统集成设计,而METAFactory主要用于产品生成线上自动校准手机参数的。3. Catcher:Catcher是pc端工具软件,主要功能是记录消息(primitive)和调试信息。工程师可使用它去分析手机的运行状态。4. 具体参考文档:MT6219_SW_ReleaseNote.pdf MTK资源生成使用说明MTK的资源一般由字符串、图形文件、菜单、字形库等组成;1. 字符串资源生成使用说明:1) 资源文件说明字符串资源的文件名为ref_list.txt,该文件是Excel文档,格式为:字符串ID各个语言种类对应的字符串。修改时用Microsoft Execel制表程式进行编辑。再增加或删除字符串时,要修改最后一行#number的数值,它表示字符串的总数(听说不改也没有什么影响,我没有去验证,建议进行修改,这样可能兼容性会更好一些)。注意:字符串资源文件ref_list.txt在MTK Milan 0538版本中有好几个同名的文件。但有效的文件是在目录milan0538()Milan0538plutommiCustomerCustResourcePLUTO_MMI下。2) 字符串相关宏:ADD_APPLICATION_STRING (stringId,string)在c源代码文件编写过程中,经常使用用于字符串资源的宏:ADD_APPLICATION_STRING (stringId,string);宏ADD_APPLICATION_STRING的目的:在资源生成过程中,会在源代码文件去查找使用宏ADD_APPLICATION_STRING的语句,根据传入stringId的字符串ID,去字符串资源文件中查找是否有该ID的字符串。如果有则从字符串资源文件中提取出来;如果没有则定义该ID号,根据该ID和默认的字符串(一般是英文)string定义一个新的字符串。3) 字符串相关宏:ADD_APPLICATION_STRING2(stringId,string,display)该宏的前两个参数与宏ADD_APPLICATION_STRING (stringId,string)功能相同,第三个参数display的功能不太清楚。4) 修改ReadExcel.c文件:包含定义字符串ID的头文件。5) 生成的资源文件1. CustStrRes.cl StrRes_x for each languagel One StrMapSearchindex of StrMap_xl gStringListMAX_LANGUAGES2. CustStrMap.cl StrMap_x for each languagel Offset to StrRes_x2. 图形资源生成使用说明1) 图形资源文件说明图形资源集中在以下目录:milan0538()CustomRes_Milan和milan0538()Milan0538plutommiCustomerImages;其中在Image目录下的图形资源文件存放的主要是第三方提供的资源和一些游戏资源,其他的图形资源存放在CusttomRes_Milan目录中,在图形资源文件处理过程中,ID号会根据资源文件名相对与当前目录的相对文件名生成。与资源相关的资源代码文件的路径为:milan0538()Milan0538plutommiCustomerCustResourcePLUTO_MMIRes_MMI目录下,在对应的文件中使用ADD_APPLICATION_IMAGE2加入资源文件。2) 图形资源相关的宏:ADD_APPLICATION_IMAGE(ImageId,ImgFileName)ImageId是ImagFileName图形资源文件的ID号,ImagFileName是图形资源文件名信息;根据ImageId和ImageFileName生成一个以ID为标识的图形资源数据。3) 图形资源相关的宏:ADD_APPLICATION_IMAGE2(ImageId,filename,display)该宏的前两个参数与宏ADD_APPLICATION_IMAGE(ImageId,ImgFileName)的前两个参数功能相同,第3个参数的功能未知。4) 生成的资源文件1. CustImgRes.c2. CustImgMap.c3. CustImgHWData.h3. 菜单资源生成使用说明1) 菜单资源ID说明每一个菜单项都有一个唯一的ID,菜单项ID的声明在头文件GlobalMenuItems.h中,需要增加菜单项时,在enum GLOBALMENUITEMSID枚举定义中加入菜单项的ID号。2) 菜单资源相关的宏:ADD_APPLICATION_MENUITEMADD_APPLICATION_MENUITEM(MITEM_IMAH_OPT_PSEUDO,0,10,MITEM_IAH_OPT_SWAP,MITEM_IAH_OPT_CONFER,MITEM_IAH_OPT_END_HLD,MITEM_IMA_OPT_END_ONE_ACT,/ MTK amanda add 1129MITEM2019_CM_ALL_ACTIVE_END,MITEM_IAH_OPT_END_ALL,MITEM_INC_OPT_DEFLN,MITEM_INC_ACT_OPT_MUTE,MITEM_INC_ACT_OPT_LOUDSP,MITEM2024_CM_DTMF,SHOW,NONMOVEABLE,DISP_LIST,STR_SCR1002_CAPTION,0);每一个菜单现项包含的信息为:该菜单项的ID,它的父菜单项的ID,子菜单项的总数,各个子菜单的ID,SHOW / HIDE,菜单项的属性,菜单项的显示模式,该菜单显示的标题,该菜单在标题栏显示的图标ID。3) 生成的资源文件1. CustMenuTree_Out.c -input file in MCT tool2. CustMenuRes.c -resource of menu from target build3. CustMenuToolRes.c -resource of menu from tool4)经验总结:ADD_APPLICATION_MENUITEM()里面进行添加菜单项,包括该菜单的,字符串,图标,母菜单,子菜单等等。在显示该菜单界面时,会根据该菜单找到所有相关的子菜单,并画出所有子菜单的字符串和图标。在进入该界面前还对菜单设置。在编译的过程中,还会生成一些用的文件。里面列出所有的菜单项,函数是ADD_APPLICATION_MENUITEM()。mtk调整菜单的经验:应该修改这个文件:plutommiCustomerCustResourcePLUTO_MMIRes_MMIRes_MainMenu.c,你可能修改了plutommiCustomerRes_MMI目录下的文件了,那里的文件基本都是拷贝过去的4. 字形库1) 与字形库相关的数据类型每一类的字形库数据由3部分组成:记录该类所有编码字形数据的数组、记录每个编码字形的宽度的数组、记录每个编码字形数据在记录该类所有编码字形数据的数组中的偏移量的数据。2) 生成的资源文件1. FontRes.c2. L_en_family_alpha_small.h3. L_en_family_alpha_medium.h4. L_en_family_alpha_large.h5. L_ch_family_ideog.h3) 中文字库生成过程1. 用工具软件MCTExec3.0:在菜单ToolsFont ToolsFont Customizer功能生成相应的字体信息文件。2. 在FontRes_Chinese.h中替换对应的数据。5. 如何增加资源步骤1:首先定义该资源的ID号. ID范围是根据模块划分得,所以增加某个模块得资源,在该模块目录的头文件所在目录下查找:模块名res.h,一般该模块使用的所有资源ID都会定义在头文件里。步骤2:使用对应的资源配置宏,表明该资源需要处理:字符串资源配置宏:ADD_APPLICATION_STRING (stringId,string)、ADD_APPLICATION_STRING2(stringId,string,display),另外需要在ref_list.txt要相应的增加ID和各个语言种类对应的字符串。图形资源配置宏:ADD_APPLICATION_IMAGE(ImageId,ImgFileName)、ADD_APPLICATION_IMAGE2(ImageId,filename,display)。菜单资源配置宏:ADD_APPLICATION_MENUITEM。以上的配置宏都在对应模块的资源C文件里,存放目录在:milan0538()Milan0538plutommiCustomerCustResourcePLUTO_MMIRes_MMI下。步骤3:执行资源批处理remakeResource.bat,在milan0538()Milan0538plutommiCustomer目录下。 随机数产生函数1. void _cdecl srand(unsigned int); MMI Task的消息循环处理主入口函数为:void MMI_task(oslEntryType * entry_param) 从消息队列取消息函数为:OslReceiveMsgExtQ() 怎么样在MTK平台上加入MENU,APPLICATION?照着res_mainmenu.c自己加 更改mtk平台默认时间(年月日)?custom_hw_default.cconst kal_uint8 DEFAULT_HARDWARE_YEAR = 5;const kal_uint8 DEFAULT_HARDWARE_MON = 1;const kal_uint8 DEFAULT_HARDWARE_DAY = 1; mtk平台表示是否有sim卡用哪个变量?全局变量g_pwr_context.IsSimValid的数值为1表示有SIM卡;数值为0表示没有SIM卡。 _MMI_USB_CDCACM_ONLY_ ,这个宏里CDCACM是什么意思?就是USB 仅用于the Universal Serial Bus Communication Device Class Abstract Control Model,没有usb mass storage。这个宏对关机没有影响,还是可以当作U disk。就是开机的时候插入的话没有mass storage的选项,仅用于充电之类的。就是MMI的feature GDI VS Pixtel_UI1. Pixtel_UI是一个非常旧的图形接口,不支持多个图形层(multi-layer ),它不支持新的功能,如JPEG等。2. GDI是一个新的图形接口,支持所有的新功能,除了显示字符参。 GDI LayerGDI Layer在硬件上支持4层,软件上可支持15层。1. Base Layer1) Base Layer在GDI中是永远存在的。2) 它和LCM的尺寸相同。3) 默认为激活层。4) 所有的Drawing操作都是在激活层上。5) Main Lcd和sub lcd分别有一个Base Layer。6) 调用函数gdi_layer_get_active获取Base Layer的handle7) Base Layer的handle根据Main Lcd和Sub Lcd分别是GDI_LAYER_MAIN_BASE_LAYER_HANDLE和GDI_LAYER_SUB_BASE_LAYER_HANDLE2. rule(使用规则)1) 芯片6218和6219支持GDI Layer功能。2) 设置了激活的图形层后,所有的图形操作会在激活图形层中。3) 当不使用GDI Layer功能时,必须激活Base Layer。4) 有些功能是由一对函数组成,必须成对使用,特别小心从一对函数中间的代码中返回,没有实现成对使用的规则。必须成对使用的函数有:1. gdi_layer_lock_frame_buffer 和 gdi_layer_unlock_frame_buffer2. gdi_layer_push_clip 和 gdi_layer_pop_clip3. gdi_layer_push_text_clip 和 gdi_layer_pop_text_clip4. gdi_layer_push_and_set_active 和 gdi_layer_pop_and_restore_active5) 每个GDI函数是由互斥量保护着;可以使用GDI_LOCK / GDI_UNLOCK操作加快应用程式对GDI的操作。1. 例子:l GDI_LOCKgdi_layer_lock_frame_bufferpixtel_UI_reset_clipshow_status_icons.gdi_layer_unlock_frame_buffergdi_layer_bltl GDI_UNLOCK 定时器的使用1. 打开定时器函数,注意该定时器值、只执行一次。pixtel_UI_start_timer( g_gx_panda_context.timer_elapse, mmi_gx_panda_cyclic_timer );第一个参数是定时器的周期值,单位为ms;第二个参数是定时器的回调函数2. 关闭定时器。pixtel_UI_cancel_timer( mmi_gx_panda_cyclic_timer );带入的参数是该定时器的回调函数。 游戏FrameWork如何使用NVRAM保存信息在NVRAMEnum.h 定义一个与应用程式相关的枚举变量NVRAM_GX_PANDA_SCORE;该枚举类型有nvram_LID_cust_enum、BYTEDATA、SHORTDATA、DOUBLEDATA,根据保存数据类型在相应的枚举类型定义中加入枚举变量;游戏Panda的玩家最好成绩定义为短整型,NVRAM_GX_PANDA_SCORE加入枚举SHORTDATA类型中。设置游戏构架全局变量g_gfx_cntx相关的成员变量,level_count表示有保存NVRAM的数据总数; grade_nvram_id_list表示保存在NVRAM数据的各个ID号;grade_value_ptr用于保存根据ID号从NVRAM读出的数据内容 按键处理1. 注册某按键的处理回调函数void SetKeyHandler(FuncPtr funcPtr, U16 keyCode, U16 keyType)参数funcPtr:处理回调函数的指针。参数keyCode:按键的键值。参数keyType:按键的状态:有Down,Up,Long Press,Repeat。2. 注销某按键的处理回调函数FuncPtr GetKeyHandler(U16 keyCode, U16 keyType)参数keyCode:按键的键值。参数keyType:按键的状态:有Down,Up,Long Press,Repeat。 MMI任务住消息循环处理MMI任务消息循环处理主函数为:void MMI_task( oslEntryType *entry_param )。 按键时间处理Framework。在按键事件的处理框架的思路:根据按键总数和按键状态定义了一个二维数组的函数指针数组。消息处理过程中,根据不同的按键值和状态取出函数指针,然后调用1. 数据结构 大端模式(big endian)和小端模式(little endian)大端模式(big endian)和小端模式(little endian)指的是数据在计算机体系的存储模式,由于存在众多的芯片体系,如x86, power pc, arm等等,由于各个厂家对数据存储的规定不一样,故如果代码从一个系统移植到另一个系统时有可能遇到模式混乱的问题。 例如用一个字长表示1,Intel体系是采用小端模式的,存储为,b,低字节放在低地址位;若体系采用的是大端模式,则存储为,b,低字节放在高地址位。 了解这一点后,就不难用c语言通过对低字节的强制转换实现对大端小端的判断了。word one = 1;if (one = (char*)one)/it is little endian;else/it is big endian; MTKMMI定制个性化主题! (即用户能够任意更改屏幕的背景图片,Title Picture等).MTK采用多层显示结构,一般只有四层,背景图片应该是base layer上面一层,你可以修改这一层来达到修改背景图片的目的,至于主题图片只需要修改title_icon就可以了 mtkPHB_LN_ENTRY宏的意思应该是通话记录中已拨电话,未接电话,已接电话的最大数目吧,各20个记录。 SMS简介短消息服务 单从字面上来看,所谓短消息就是通过GSM网络传输的有限长度的文本信息。而短消息业务是GSM系统提供给手机用户的一种特殊服务,这项服务与传统的语音传输通讯业务是根本不同的。短消息业务按其实现的方式可以分为点到点短消息业务和小区广播短消息业务。 点到点短消息业务即通过MO(MS发起短消息业务)和MT(MS终止短消息业务)将一条短消息从一个实体发送到指定目的地址的业务,被发送的信息经过编码后消息长度为140个字节,也就是一条短消息可以包含160个英文字母(7Bit编码)或70个中文汉字(Unicode编码); 还有Concatnated SMS,是在header中实现了一个简单的串接协议,将多条短信串成一条,具体可以参考GSM03.38和GSM03.40 而小区广播短消息业务是指通过发送信息的基站向指定区域中所有短消息用户发送短消息的业务,该业务将发送的短信息编码后,使消息的长度增加为每页82个字节,并且最多能发送20页之多的信息。通常移动公司会使用这种方式在一定的区域内向所有GSM用户循环发送一些具有通用性的信息,如交通信息、天气情况、股市信息、新闻等。 前面已经说过,短消息业务是GSM系统中提供的一种GSM手机之间及与短消息实体之间通过业务中心进行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论