Содержание
- 2. MTK方案简介 联发科技介绍 MTK多媒体手机平台 GSM/GPRS手机软件方案 MTK软件分层介绍 软件结构图表 OS L1 protocol stack Device driver L2 L3 L4 protocol
- 3. 一、MTK方案简介
- 4. 联发科技简介 1997年成立,全球第五大集成电路设计公司 (台湾第一大), 年营业额为10亿美金 全球最大之光盘及DVD播放机芯片组制造商 研发及技术中心: 台北 新竹 深圳 安徽合肥 无线通信部门于2000年成立,研发手机基带/RF芯片组及软件及发展平台,部门约200工程师
- 5. 联发多媒体手机平台 MT6218 GSM/GPRS Multimedia Platform MT6205 GSM Low-End Platform GSM/GPRS/WCDMA Multimedia Phone 3G 2.5G MT6219 GSM/GPRS
- 6. GSM/GPRS 手机软件方案 DSP/Layer1 Nucleus RTOS GSM/GPRS 协议层 驱动 RF/UART LCD/USB/IrDA/etc 人机界面 SIM Tool Kit 短信/EMS Email
- 7. 二、MTK软件分层介绍
- 8. MTK软件架构图表
- 9. 三大组成单元 MS (Mobile Station) 执行软件: 运行于MS上 操作系统 Nucleus 物理层协议栈 驱动程序 gsm协议栈 MMI META :The Mobile Engineering
- 10. 操作系统 Nucleus 实时操作系统,MTK封装了适配层,将OS封装了一些API,这些API为其他软件提供服务,如:队列,消息,timer,内存管理等
- 11. L1层协议栈(GSM 物理层) L1或者叫物理层,提供物理介质上的bit流传输,遵循 gsm 技术05系列规范 为上层软件提供服务,且控制逻辑信道到物理信道的映射和安排 无线控制以及TDMA桢
- 12. L1层逻辑图
- 13. L1各部分功能 L1异步逻辑:处理上层软件的消息请求,发送L1处理后的结果给上层软件 Surrounding Cell Engine :处理相邻小区的功率测量以及同步信息获取 L1层控制:处理无线环境中的TDMA时序安排,包括定时提前以及来自基站的功率控制 L1驱动:DSP 以及无线控制
- 14. 设备驱动 设备驱动支持所有MCU(微处理器单元)外设的控制功能 本模块处理一些用户可见操作的一些设备,如键盘,LCD等 通过L4层接口,访问寄存器来控制外设
- 15. MTK平台外设
- 16. 外设功能解释 SIM: Subscriber Identity Module UART: Universal Asynchronous Receiver/Transmitter SPI: Serial Port Interface LCD: Liquid Crystal
- 17. L2/L3/L4层协议栈 本部分覆盖了许多gsm/gprs协议需求点 为上层应用程序提供卓越的gsm/gprs平台 软件平台非常适合手机上面的操作以及通过AT命令进行PC操作
- 19. 模块介绍 RMI Remote MMI,PC端通过UART口与协议栈进行通讯 FMI Feature rich MM L4 MMI通过L4与gsm/gprs协议栈进行通讯,包括以下子模块 ATCI: AT Command Interpreter, 解释来自PC端的命令并命令L4做相应的动作 L4A:
- 20. PHB: Phone book management, 电话簿相关的处理,如分类等 SMU: SIM management Unit, 安全性管理以及STK CSM: Circuit switching protocol stack management电路交换协议栈管理
- 21. FAX: Group 3 Facsimile TDT: Transparent circuit switching data L2R: Layer 2 relay protocol for non-transparent
- 22. LLC Logical link control 逻辑连接控制 RR Radio resource management, 包括以下子模块 RRM: Handles cell selection and PLMN
- 23. MMI介绍 UI架构 应用程序 与ps的通信
- 24. MMI Framework OLS 操作系统适配置层, 对操作系统进行封状 Task MMI任务, 与L4 task 进行通信 File system 与存储设备通信,进行文件存取
- 25. MMI GUI介绍 Theme 主题风格, 主要使菜单等颜色设置,以及背景图片等 UI component Category Screen 每一个界面都是一个screen Font 字体风格 Editor 编辑筐 输入法 访问LCD
- 26. MMI应用程序 Phonebook Message Call History Setting User profile Fun and game Organizer Service Shortcut Camera …………………….
- 27. 三、MTK 方案Task架构
- 28. 系统初始化 Hardware boot and setup system stack etc Nucleus Plus RTOS initialization Hardware Initialization Tasks/Modules initialization/configuration
- 30. MMI task 主要管理应用程序,task从与之相关的队列中读取event MMI Queue 协议栈/L4 将events写入到队列中,MMI task 从队列中读取event L4 Queue MMI task 将MMI events 写入队列,L4
- 31. MMI task MMI 注册消息事件 在MMI队列上面等待消息 协议栈将消息放入MMI消息队列 Framework Layer 处理events Framework layer 调用应用程序注册的回调函数 回调函数中应用程序用UI category 函数和风格进行screen 显示
- 32. MTK Customer创建task typedef struct { kal_char *comp_name_ptr; kal_char *comp_qname_ptr; kal_uint32 comp_priority; kal_uint16 comp_stack_size; kal_uint8 comp_ext_qsize; kal_uint8
- 33. Tast create kal_bool customMMI_create(comptask_handler_struct **handle) { static const comptask_handler_struct customcms_handler_info = { MMI_task, /* task entry
- 34. 注册消息事件 SetProtocolEventHandler (mmi_msg_handle_new_msg_ind, MSG_ID_SMS_NEW_MSG_INDEX_IND); for(count = 0; count { if(protocolEventHandler[count].eventID == eventID) { isNewEvent = FALSE;
- 35. 发送消息 typedef struct ilm_struct { module_type src_mod_id; module_type dest_mod_id; sap_type sap_id; msg_type msg_id; local_para_struct *local_para_ptr; peer_buff_struct
- 36. MMI task 等候消息 if(!OslReadCircularQ(&Message)) { OslReceiveMsgExtQ(qid, &Message); OslGetMyTaskIndex( &my_index ); OslStackSetActiveModuleID( my_index, MOD_MMI ); }
- 37. 处理消息 void ProtocolEventHandler(U16 eventID,void* MsgStruct,int mod_src, void *peerBuf) { ExecuteCurrProtocolHandler((U16)eventID,MsgStruct,mod_src, peerBuf); } for(count = 0; count
- 38. Example: 按键处理过程 MMI task注册某个按键的处理函数 硬件扫描键盘,发现按键,产生中断,且修改相应的寄存器(记录哪个键被按) 低级中断激活高级中断,高级中断产生event Keypad task 等待事件,收到event,读取寄存器,解析按键,知道哪个键被按,发送message 到 UEM task UEM task 发送按键事件到MMI task
- 40. Скачать презентацию