展讯弹出窗口模块接口简介

合集下载

SMS模块简要介绍(展讯平台)

SMS模块简要介绍(展讯平台)

精心整理SMS模块简要介绍(展讯平台)2007.07.05一、SMS概述:1、基本概念ABCD231、ABCDE、删除F、保存G、阅读H、List管理(load)2、几个核心变量一、SMS概述:1、基本概念GSM0338v070200p.pdf Alphabetsandlanguage-specificinformationGSM0340v070400p.pdf TechnicalrealizationoftheShortMessageService(SMS) GSM0411v070000p.pdf Point-to-Point(PP)ShortMessageService(SMS)MSMOMTSMCVLRHLR短消息通信仅限于一个消息,换言之,一个消息的传输就构成了一次通信。

因此,业务是非对称的,一般认为移动起始短消息传输与移动终接短报文传输是两回事。

这并不阻碍实时对话,但系统认为不同的消息彼此独立,消息的传输总是由处于GSM 外部的短消息服务中心(SMSC)进行中继,消息有目的地或起源地,但只与用户和SMSC有关,而与其他GSM基础设施无关。

短消息的体系结构:GSM标准中定义的点-点短消息服务使得短消息能在移动台和短消息服务中心之间传递。

这些服务中心是通过称为SMS-GMSC的特定MSC同GSM网络联系的。

SME:ShortMessagingEntity短消息实体它可以接收或改善短消息,位于固话系统、移动基站或其他服务中心内;(MSCVLRHLR之间的协议使前者可以要求HLR搜索可找到的用户地址。

它与MSC与HLR之间的协议一起,能在移动台因超出覆盖区而丢失报文、随后又可找到时加以提示。

A、三种编码方式和字节个数:每个SMS的字节数:140Byte 长短信的头信息占用6个字节default模式:7bit编码格式,用于发送普通的ASCII字符140*8/7=160 个(160–7)*5=765(假定长短信的条数为5)unicode模式:含ucs2字符的短信140个(140–6)*5=670(假定长短信的条数为5)8bit模式:通常用于发送数据消息,如图片或铃声等,彩信会用到。

展讯操作系统API用户指南

展讯操作系统API用户指南

1.1 范围 .................................................................................................................................7 1.2 参考文档..........................................................................................................................7 1.3 缩写和定义 ......................................................................................................................7
3.4 内存管理........................................................................................................................14 3.4.1 分配内存 SCI_ALLOC............................................................................................14 3.4.2 释放内存 SCI_FREE ..............................................................................................14 3.4.3 内存拷贝 SCI_MEMCPY........................................................................................15 3.4.4 设置内存 SCI_MEMSET ........................................................................................16 3.4.5 内存拷贝(以16bit为单位) SCI_MEM16CPY .....................................................17 3.4.6 设置内存(以16bit为单位) SCI_MEM16SET......................................................18

展讯LCD接口使用说明

展讯LCD接口使用说明

LCD 接口使用说明版本: 1.0.0SW-BASE-UG-00262004-06-09D2修订历史版本日期作者审核说明1.0.0 2004-06-09 Jim.zhang Draft重要声明版权声明版权所有 © 2004, 展讯通信有限公司,保留所有权利。

商标声明展讯通信有限公司和展讯通信有限公司的产品是展讯通信有限公司专有。

在提及其他公司及其产品时将使用各自公司所拥有的商标,这种使用的目的仅限于引用。

不作保证声明展讯通信有限公司不对此文档中的任何内容作任何明示或暗示的陈述或保证,而且不对特定目的的适销性及适用性或者任何间接、特殊或连带的损失承担任何责任。

保密声明本文档(包括任何附件)包含的信息是保密信息。

接收人了解其获得的本文档是保密的,除用于规定的目的外不得用于任何目的,也不得将本文档泄露给任何第三方。

目录1介绍 (5)1.1范围 (5)1.2参考文档 (5)1.3缩写和定义 (5)2概述 (6)2.1文件组织 (6)2.2LCD屏幕坐标 (6)2.3LCD操作概述 (6)3接口函数说明 (7)3.1LCD硬件初始化 (7)3.2关闭LCD (7)3.3获取LCD基本信息 (7)3.4刷新LCD (8)3.5LCD全屏刷新 (9)3.6进入/退出睡眠 (9)3.7调节LCD的对比度 (10)4附录 (11)4.1数据结构 (11)4.1.1LCD信息结构 LCD_INFO_T (11)4.1.2LCD ID类型 LCD_ID_E (11)4.1.3LCD错误类型 ERR_LCD_E (12)1 介绍1.1 范围本文描述LCD驱动软件的向上层如MMI所提供的API,作为应用程序设计人员必须的参考文档。

1.2 参考文档无1.3 缩写和定义LCD Liquid Crystal DisplayMMI Man-Machine Interface2 概述2.1 文件组织lcd_api.h该文件定义了所有的LCD接口函数,上层调用LCD提供的函数时需要包含该文件。

展讯平台软件调试介绍图文..doc

展讯平台软件调试介绍图文..doc

展讯平台软件调试介绍Spreadtrum7/21/2009培训目的¾能够使用展讯提供的调试工具对开发中的问题进行调试¾能够分析几种常见ASSERT主要内容展讯调试工具简介调试方法展讯调试工具简介主要的调试工具有: ¾Dloader¾NVEditor¾Channel Server¾Logel¾Phone Tester¾DSP Log Dloader(1功能:下载程序设置界面:双击可以选择下载文件路径选择端口选择项目选择下载速率制作打包文件选择是否下载Nand Flash下载配置:大小页选择分区策略选择分区策略¾始终分区¾出现不兼容分区时停止下载¾出现不兼容分区,使用Flash中原有分区进行下载¾出现不兼容分区,使用FDL中的分区方式进行分区注:此配置项只对NAND FLASH有效备份信息配置:将NV保存到本地选择需要保留的信息正在下载:下载成功:下载失败:Dloader(4打包文件特别说明:展讯升级工具中使用打包文件来进行升级操作,打包文件中不仅包含了所有的下载文件,还包含了下载项目的地址信息,这样可以降低产线升级工具配置出错的可能性,同时简化了操作。

打包文件的制作方法:DloadeR 在配置好所有的配置项后,点击左图中的按钮,然后按照提示即可完成打包文件的制作。

点击这个按钮进行打包操作展讯调试工具简介¾Downloader¾NVEditor¾Channel Server¾Logel¾Phone Tester¾DSP Log功能:•对fixed NV参数进行读取,编辑,保存,下载•擦除NV•从手机中读出NV Item修改某项数据:选择菜单[File\save image]保存并生成二进制数据文件:选择菜单[File\Save to phone]直接下载到手机中——手机需要在下载模式如果需要保留校准参数需要选择上获取手机NV数据:选择菜单[File\LoadFromPhone(boot mode]来获取数据在下载模式下从保留区域处获取下载的nvitem数据。

展讯多媒体模块接口简介

展讯多媒体模块接口简介
name_ptr:输出不带后缀名的文件名指针
suffix_ptr:输出后缀名指针
【返回值】
无。
【注意事项】
无。
三.2.4
【函数原型】
BOOLEANMMIAPIMULTIM_OpenSelectMovieWin(
MMIMULTIM_DEVICE_TYPE_Eselect_device,
uint32select_movie,
full_path_len:文件全路径名长度;
play_times:播放次数;
vol:播放音量;
call_back:播放完的回调函数。
【返回值】
TRUE:成功;
FALSE:失败。
【注意事项】
无。
三.2.9
【函数原型】
voidMMIAPIMULTIM_CloseSelectPictureWin(void);
窗口的选项少。
三.2.7
【函数原型】
voidMMIAPIMULTIM_CloseSelectMusicWin(void);
【函数功能】
关闭音频列表窗口。
【参数说明】
无。
【返回值】
无。
【注意事项】
无。
三.2.8
【函数原型】
BOOLEANMMIAPIMULTIM_PlayMusicFile(
MMIAUDIO_HTYPEhandle_type,
max_size:允许的最大movie size;
is_need_data:是否需要返回数据;
win_id:窗口ID;
ticked_file:需要打勾的文件名;
ticked_file_len:需要打勾的文件名长度。
【返回值】
TRUE:成功;

展讯平台Trace工具使用

展讯平台Trace工具使用

展讯平台Trace 工具使用对于专业的测试人员,测试应该始终接上log 线进行测试,这样就会尽可能保留出错时候的信息,这些信息不一定对于每一类的bug 都有用,但对于一些难重现的问题有可能这样的习惯就记录下了一些重要的Debug 信息,给软件人员解决问题极大的帮助。

测试人员遇到ASSERT 的时候,一定要尽可能详细的记录下操作步骤,测试此问题的重现概率,同时记录下全部的ASSERT 信息,关于ASSERT 信息详见本文档3.2.1。

需要注意的是,测试人员一定要用对应版本的ChannelServer 和log 工具进行测试,否则会导致底层的一些消息的解析不正确,给解决一些和底层有关的bug 带来困难。

1、ChannelServer 的设置使用• 运行ChannelServer.exe• 点击右下角托盘中的ChannelServer 小图标• 在弹出的对话框中的进行配置(成功后,小图标变绿色)图一2、Logel –使用说明• 选择Server — IP Setting 配置ChannelServer 的IP 地址和端口――和ChannelServer 中的设置保持一致(一般不需要修改)• 连结到ChannelServer ,并开始记录――需要先运行ChannelServer以下为刚开始启动Logel 工具的界面:图二以下为正在抓Trace 信息的界面:图三测试版本一定要用debug 版本,release 版本遇到assert 会自动重启,debug 版本会断在程序assert 的地方,这样可以获得assert 时的现场信息,以便于debug 。

当然,重要版本根据情况也应该同时用release 版本做一些各个功能模块的自动重启的测试,电流测试等,以保证release 版本也没有问题。

测试过程中遇到assert ,不要拔下电池,打开ChanelServer.exe 和Logel.exe , 连上手机,选择logel 里面菜单 Assert / Open Assert Frame , 打开一个调试窗口,在此窗口下输入0,会出现了下图所示的信息(如果是测试的时候连着log ,此窗口会自动弹出):图四然后在Assert Information这个窗口里输入1,(有可能第一次或者前几次输入1都出现的和上面输入0一样的信息,请多输入几次,直到出现类似以下的信息为止):图五如上图所示:这一项信息是记录软硬件版本号以及产生Assert 的位置(文件名,行号),以及当前线程(或中断服务程序)的信息。

展讯平台NPI工具介绍

展讯平台NPI工具介绍

2011-5-16
保密信息
. 12
展讯平台NPI工具介绍 工具介绍 展讯平台
MobileTVtester 测试与设置界面: 测试与设置界面:
测试主界面
测试显示框
设置弹出框
2011-5-16
保密信息
. 13
展讯平台NPI工具介绍 工具介绍 展讯平台
MobileTester
主要提供给研发人员的调试和工厂维修人员的维修测试使用。 主要提供给研发人员的调试和工厂维修人员的维修测试使用。通过 USB/UART控制手机进入不同模式进行相关的操作。 控制手机进入不同模式进行相关的操作。 控制手机进入不同模式进行相关的操作 ※主要功能: 主要功能 手机与PC系统的连接和相关模式切换 系统的连接和相关模式切换; * 手机与 系统的连接和相关模式切换; 基本信息( * 基本信息(IMEI,SN etc)读取和主要功能测试; , )读取和主要功能测试; 命令控制以及通话呼叫等; * AT命令控制以及通话呼叫等; 命令控制以及通话呼叫等 射频信号控制发射与接收以及RF校准 * RF射频信号控制发射与接收以及 校准; 射频信号控制发射与接收以及 校准; 中校准参数的读取和写入; * Flash中校准参数的读取和写入; 中校准参数的读取和写入 蓝牙相关功能测试以及蓝牙地址读写; * 蓝牙相关功能测试以及蓝牙地址读写; 指定区域的信息读取和写入; * Memory指定区域的信息读取和写入; 指定区域的信息读取和写入 功能测试与调试; * CMMB TV功能测试与调试; 功能测试与调试
Output
SN Writing
WriteSN
CMMB Test
MobileTVtester
Trouble Shooting
Mobile tester

展讯学习笔记

展讯学习笔记

函数1.设置字体颜色#if defined(UI_WATCH_STYLE_128X128BAR)GUIEDIT_SetFontColor(MMISET_SET_DIVERT_NUMBER_CTRL_ID,MMI_BLACK_COLOR);#endif2.显示输入法#if defined(UI_WATCH_STYLE_128X128BAR)GUIEDIT_SetDispImIcon(MMIBT_PIN_EDITBOX_CTRL_ID,&is_display_im,&is_display_num); #endif3.idleHandleIdleMsg(idle入口函数)IdleWin_HandleMsg(idle按键注册)4. MMK_RunWinProc(窗口跟踪函数) MMK_RunCtrlProc(控件跟踪函数)5. MMITHEME_GetMenuProc 菜单回调函数6. MMITHEME_GetCommonMenuTheme设置菜单tiemer7. MMITHEME_GetSecondMenuTheme设置二级菜单的风格数据8.6. MMK_DispatchToHandle mmk消息分配函数7. MMITHEME_GetMenuProc设置各种style风格的控件的回调函数GUIMENU_PROCESS_T结构typedef struct{void (*InitMenu)(GUIMENU_CTRL_T*); //init menuvoid (*DestoryMenu)(GUIMENU_CTRL_T*); //destory menuvoid (*DisplayMenu)(GUIMENU_CTRL_T*); //display menu(必须实现)void (*DisplaySpecialMenu)(GUIMENU_CTRL_T*); //display menu(处理主菜单震动拖选效果)void (*ShowScrollItemStr)(GUIMENU_CTRL_T*); //display scroll item stringMMI_RESULT_E (*HandleMenuUpKey)(GUIMENU_CTRL_T*); //handle menu up key(必须实现)MMI_RESULT_E (*HandleMenuDownKey)(GUIMENU_CTRL_T*); //handle menu down key(必须实现)BOOLEAN (*HandleMenuLeftKey)(GUIMENU_CTRL_T*,MMI_MESSAGE_ID_E); //handle menu left key,return is handle cancel(返回是否需要处理)BOOLEAN (*HandleMenuRightKey)(GUIMENU_CTRL_T*,MMI_MESSAGE_ID_E); //handle menu right key,return is handle ok(返回是否需要处理)BOOLEAN (*HandleMenuNumKey)(uint16,GUIMENU_CTRL_T*); //handle menu number key(返回是否需要处理)void (*HandleMenuTpDown)(GUI_POINT_T*,GUIMENU_CTRL_T*); //handle menu tp down(必须实现)BOOLEAN (*HandleMenuTpUp)(GUI_POINT_T*,GUIMENU_CTRL_T*);//handle menu tp up(必须实现)(返回是否需要处理)void (*HandleMenuTpMove)(GUI_POINT_T*,GUIMENU_CTRL_T*); //handle menu tp move(必须实现)void (*HandleMenuTpScroll)(uint16,GUIMENU_CTRL_T*); //handle menu scroll bar tpvoid (*AdjustFirstAndDisplay)(GUIMENU_CTRL_T*, BOOLEAN); //调整first_item_index索引并重新显示(非主菜单,实现)uint16 (*GetCurItemTop)(GUIMENU_CTRL_T*); //获得当前Item的Top值(POP风格弹出二级时,实现)BOOLEAN (*MoveInit)(GUIMENU_CTRL_T*); //移动信息初始化BOOLEAN (*MoveDestory)(GUIMENU_CTRL_T*); //移动信息销毁BOOLEAN (*HandleMenuOk)(GUIMENU_CTRL_T*, MMI_MESSAGE_ID_E); //handle menu ok(返回mmimenu是否已经处理)MMI_RESULT_E (*HandleMenuTimer)(GUIMENU_CTRL_T*, MMI_MESSAGE_ID_E, DPARAM); //handle menu timerBOOLEAN (*HandleMenuCancelKey)(GUIMENU_CTRL_T*, MMI_MESSAGE_ID_E); //handle menu cancel(返回mmimenu是否已经处理)BOOLEAN (*HandleMenuEndKey)(GUIMENU_CTRL_T*); //handle menu endBOOLEAN (*SearchMenuId)(GUIMENU_CTRL_T*, MMI_MENU_ID_T); // 判断指定的item id是否存在(已无用,可删)void (*HandleMenuModifyRect)(GUIMENU_CTRL_T*); //handle menu modify rect(必须实现)MMI_RESULT_E (*HandleSpecialMsg)(GUIMENU_CTRL_T*, MMI_MESSAGE_ID_E, DPARAM); //display menuvoid (*GetItemPtr)(GUIMENU_CTRL_T*, uint16, uint16, GUIMENU_MAINMENU_INFO_T* ); // 获取指定页指定索引的静态item内容信息(用于主菜单)GUIMENULIST_ITEM_INFO_T* (*GetItemInfoPtr)(GUIMENU_CTRL_T*, uint16, uint16);// 获取指定页指定索引的静态item信息(用于主菜单)uint16 (*GetTotalItemNum)(GUIMENU_CTRL_T*, uint16); // 获取指定页的总item数(用于分页型的风格)uint16 (*GetLineNumPage)(GUIMENU_CTRL_T *); // 获取一个有多少行(非主菜单实现)BOOLEAN (*ResetDisplayItem)(GUIMENU_CTRL_T *, int16*, BOOLEAN); // 修正显示位置,获取相对于现在的偏移量void (*CalculateRect)(GUIMENU_CTRL_T *, uint16); // 计算menu的区域BOOLEAN (*U_SetPageInfo)(GUIMENU_CTRL_T *, uint16, void *); // 设置U动画信息} GUIMENU_PROCESS_T;窗口风格Guimenu控件把一种风格对应的消息处理函数封装成一个结构,开放给应用使用。

展讯平台DebugTool介绍

展讯平台DebugTool介绍
CHANNELSERVER 抓取arm log TASKANALYZER
2010-4-6
O C
I T EN ID F N
L A
分析mem中task任务调度
Proprietary and Confidential Information 6
Debug Tool包工具简介(二)
• 软件开发工具
工具名称 简述用途
M U TR D EA R SP
2010-4-6
O C
I T EN ID F N
L A
Proprietary and Confidential Information
8
如何获得工具详细使用说明
每个工具目录下Doc目录里有工具的 详细使用说明,如右图所示
M U TR D EA R SP
2010-4-6
Proprietary and Confidential Information
24
NVEditor ---从手机读取NV数据
• • • • [File\LoadFromPhone(boot mode)] 获取数据在下载模式下从保留区域处获取下载的nvitem数据。

I T [ LoadFromPhone(normal mode) ] 某些nvitem可能会被修改并被存储到数据区,如果需要获取这些最新 EN 的数据,则用。此时手机应在正常开机状态,并且没有进入deep ID F sleep。 N O C 例如希望获得某只手机的校准NV数据,作为其他手机的基准NV,可以 M 通过[File\LoadFromPhone(boot mode)]获得。 U TR D EA R SP
2010-4-6 Proprietary and Confidential Information 25

展讯平台软件调试介绍

展讯平台软件调试介绍
• 单击工具栏图标 • 单击图标 连接
开始抓取LOG
• 详细使用方法,请参考相应工具的使用手册
2011-3-11
Proprietary and Confidential Information
33
主要内容
展讯调试工具简介 调试方法
2011-3-11
Proprietary and Confidential Information
运行ChannelServer.exe:
单击右下角托盘中的ChannelServer小图标,在弹出的对话框中的进行配置(成功后, 小图标变绿色)
由于展讯平台 使用大端, 使用大端,这 里要勾上
串口或虚拟串 口端口号 波特率设置
变绿代表成功 连接
2011-3-11
Proprietary and Confidential Information
34
调试方法
LOG 分析断言(ASSERT)信息 通过PhoneTester实时查看寄存器、内存信息
2011-3-11
Proprietary and Confidential Information
35
LOG (1)
利用平台提供的LOG接口,可以将字符串通过Logel工具在PC上打印出来, 使得开发人员可以跟踪程序的运行,接口有: SCI_TRACE_LOW SCI_TRACE_HIGH SCI_TRACE_MID SCI_TRACE_ERROR
2011-3-11
Proprietary and Confidential Information
16
NVEditor (7)
读Flash:
选择菜单[Facility\Read Flash](NAND Flash选择 Read NAND Flash)。手机需要在下载模式

展讯平台MMI介绍

展讯平台MMI介绍

5
平台简介
Spreadtrum提供了一个完整的MMI开发平台。 包括MMI开发配套工具软件包和一套参考的MMI 源码。客户可以基于此方便的做二次开发。
2013-8-7
Proprietary and Confidential Information
6
平台结构
Call SMS CBS SS PB Game ….
GUI
Setting Menu Listbox STK Editbox Textbox Msgbox Animation Label …… WAP MMS Camera ……
2013-8-7
Proprietary and Confidential Information
8
MMI平台三个重要概念
• Application:应用,指MMI中的应用模块。例如:SMS,CC 等。一个应用可以包含多个窗口。 • Window:窗口,用于显示和处理送给此窗口的各种消息。例 如:按键消息、Timer消息等。一个窗口上可以有多个控件
22
GUI提供的控件(续)
• • • • • • • • • Animition Calendar Textbox Msgbox Prgbox Punctuation Selectionpage Label Softkey • • • • • • • • Statusbar Strokepage Block(68ad提供半透显示) Button Dropdownlist Richtext(68ad提供) Iconlist (68ad提供) Spellpage
2013-8-7
Proprietary and Confidential Information
28

展讯入门文档

展讯入门文档

展讯学习文档一、编译 (2)二、下载 (2)三、抓LOG (5)四、模拟器调试 (7)五、菜单 (8)新添加菜单入口 (8)新添加二级菜单: (9)摄像头切换............................................................................................. 错误!未定义书签。

1)双摄像头(亚力通事例代码): (10)2)、单摄像头 (12)一、编译1、在DOS窗口(cmd.exe)进入到相应工程的 ms_code目录下才能进行编译。

(环境跟MTK一样)。

2、make p=sc66001_sp66011 m=apple id=1注:a,p=sc66001_sp66011 这个是工程的名字,一般工程的名字看主.mak文件如project_sc6600l_sp6601l.mk,然后去掉project_ 就是了,也可以从 build 文件夹下面直接看到。

)b,m=app 这个是模块名字,app 是相应的模块,我们主要的文件如:OEMOS.c,apple_wintab.c都是在这个模块,修改我们文件可以直接编译这个模块,与MTK类似。

具体可以用(make help参考使用说明,下面会列出常用的)c,id=1 这个表示使用分布式编译。

(有时候客户自己写了相应的P处理,编译命令可以自己咨询客户工程师。

)3、Make p= sc66001_sp66011 new (相当于MTK的new)4、Make p= sc66001_sp66011 (相当于MTK reamke)5、make p= sc66001_sp66011 m=resource (相当于MTK resgen 编资源)注:展讯的资源也是一个模块,展讯修改资源的定义跟MTK不一样,你修改菜单文件( mmi_menutable.c )是不用重新编译资源的,展讯菜单文件属于 app 模块,除非你加入或修改了字符串,图片,铃声,字库等资源(如修改apple_mdu_def.h),才需要重新编译资源。

展讯平台模拟器使用介绍

展讯平台模拟器使用介绍

2011-3-11
Proprietary and Confidential Information
5
主要内容
简介 运行和启动 重要功能简介
2011-3-11
Proprietary and Confidential Information
6
选择外观
第一次运行,会自动弹出配置要求: 首先是要求选择外观:
22
Skin目录下与模拟器外观对应的配置文件MSSim_***.ini:配置键盘 在模拟器上的坐标范围,如果需要增加键值,修改这个文件即可 Win_platform\bin目录下flash_sim.dat:模拟器的NV,代码中如果修 改过NV,重新运行模拟器时需要将该文件删除,这个动作等同于 download程序时的erase Flash Win_platform\bin\Disk目录下的Udisk.img和SD Card.img:模拟器 的文件系统,这两个文件属性一定要可写,否则会造成模拟器开机 报错
17
向模拟器发送短消息
短消息中心一 定要填写
2011-3-11
Proprietary and Confidential Information
18
文件系统模拟
2011-3-11
Proprietary and Confidential Information
19
重要文件
几个重要的文件: 几个重要的文件Confidential Information
11
选择SIM卡 卡 选择
第一次开机需要选择SIM卡配置文件:
2011-3-11
Proprietary and Confidential Information
12

展讯MMI实例教程解读

展讯MMI实例教程解读
LOCAL MMI_RESULT_E // LOCAL == static HandleTestWinMsg(MMI_WIN_ID_T win_id, MMI_MESSAGE_ID_E msg_id, DPARAM param) { switch(msg_id) { …… case MSG_KEYDOWN_OK: // 该消息对应MTK上的就是左软键按下时的操作 { Func_Ptr(); break; } …… } }
LOCAL MMI_RESULT_E HandleTestWinMsg(MMI_WIN_ID_T win_id, MMI_MESSAGE_ID_E msg_id, DPARAM param) { static GUI_RECT_T rect = {0}; GUI_LCD_DEV_INFO lcd_dev_info = {GUI_LCD_0, GUI_BLOCK_0}; switch(msg_id) { case MSG_OPEN_WINDOW: // 第一条消息 { rect = CreateRect(0, 0, LCD_WIDTH – 1, LCD_HEIGHT – 1); break; } case MSG_FULL_PAINT: // 第二条消息 { LCD_FillRect(&lcd_dev_info, rect, 0xffff); // 将该矩形填白, 0xffff为白色对应的16进制。 break; } …… } }
展讯初级培训教程
展讯与MTK的区别(1)
韦晓飞
展讯与MTK的区别
• 1. 窗口(屏幕)的区别
• (1)框架的区别:

• • • • • • • • • • • •
展讯的窗口是仿Windows系统的框架,使用的是消息处理机制,但没有层的概念,做不了特效。 而MTK的屏幕没有用到消息机制,但有层特效。 在MTK上,进入一个新屏调用的是

展讯平台音频调试教程(自编版)

展讯平台音频调试教程(自编版)

bit6
SB_OUT
L 路 R 路输出电源关 1:关
耳机通路打开时应

设为 入 通 道 1:关
通常关闭
(LINE)电源关闭
bit4
SB_BTL
BTL 输出电源关闭 1:关
选择 BTL 通路时设
为0
bit3
SB_LOUT
BTL 输出和 Line out 1:关
选 择 BTL 通 路 或
1:开
bit11
micr
bit10
micl
Bit9
micen
Bit8
recvr
Bit7
recvl
Bit6
recven
Bit5
spkr
Bit4
spkl
Bit3
spken
Bit2
hpr
Bit1
hpl
Bit0
hpen
5. Volume config
点击Volume config对话框,会弹出以下界面:
右路 Mic 开关 左路 Mic 开关 Mic 使能开关 右路 recv 开关 左路 recv 开关 recv 使能开关 右路 spk 开关 左路 spk 开关 spk 使能开 右路耳机开关 左路耳机开关 耳机使能开关
具体按钮说明 如下: “Get Audio mode information” : 从手机中读出 Audio 参数 “Get Music mode information ”: 从手机中读出 MP3、MP4、MIDI 等 ARM 播放时的 Audio 参数 “Export ”: 保存目前的参数成 .NV 文件 “Import”: 载入其他的 .NV 参数文件 “Make call”:拨电话 “Hang up” :挂电话 “Exit”按钮:点击“Exit”按钮,关闭 AudioTester。 “Clear log”按钮:点击“Clear log”按钮,清空 Log 显示。 “About”按钮:点击“About”按钮,查看 AudioTester 版本信息。

展讯平台操作简介

展讯平台操作简介
SMT测试 展讯平台介绍
▪ 软件下载Download下载构架 当新主板或旧板软件需要更新时,需要下载软件。下载软件是通过数据线将数据写入手机的。生 产所用的下载程序为多路下载程序,一般使用多路卡,一张多路卡可以扩展8路串口,为提高下载速 率,可通过USB转串口,速率可提高到460800bps。多路下载程序可支持8路、16路同时下载,由软 件包,把解压出来 的下载工具发送到桌面快捷方 式(如图)
▪ 打开快捷方式,得到(如 图)对话框
点击此按钮,弹 出对话框
选择正确的下 载软件
点击此按钮,得 到当前对话框
选项卡
点击此按钮,得到当 前对话框,选择正确
的NV软件
如图所示各项均选择正确的配置。
选项卡
选项卡
终测 (Final Test)
终测是用电脑软件控制无线通信测试仪、电源、手机等设备,对手机进行各种操作,测试统计手机的各 种参数是否在软件设定范围内。 测试内容有:测量电池电压、建立呼叫、最大通话电流、接收机测试、发射机测试、信道切换、频段切换等。
▪ 所需硬件:PC 1台 GP-IB卡1块 无线通信测试仪(Agilent 8960或R&S CMU200) 1台 直流稳压电源1台 模拟电池 (可从系统接口供电则可以不用该电源) 直流稳压电源1台 模拟充电器 屏蔽盒及板测工装夹具 1台 电平转换盒1个 手机通信数据线 1条 各种连接线 测试SIM卡 (可选)
▪ 4. FDL: flash下载引导程序,有了FDL才能将1,2,3下载到flash中。

例如:FDL_SC6600D_20080317.bin
下载注意事项
▪ 检查主板VBAT/GND、TX/RX,NBOOT 信号是否 正常,硬件驱动。

展讯平台窗口创建流程

展讯平台窗口创建流程

窗口创建流程简介窗口在展讯平台中是一个至关重要的概念,与Windows操作系统相类似的,窗口在展讯平台中就是最终呈现给用户的一个应用程序。

在这里,我们可以把窗口看作一个应用程序,因为,它不但能够显示内容给用户,而且更为重要的是,窗口能够处理系统中所有的内部消息及发送到该窗口的外部消息。

一个应用程序是由一个或多个窗口构成的,例如Idle窗口只包含一个窗口,而短消息模块包含多个窗口。

应用程序都是通过窗口显示给用户,并最终实现人机交互。

下面我们来看下展讯平台的窗口创建流程。

图1动态窗口创建流程图2 静态窗口创建流程窗口分为静态窗口和动态窗口,静态窗口会在宏WINDOW_TABLE中先定义好窗口的属性,而动态窗口是在实现时动态创建窗口属性。

具体如何选择,根据应用的需要来选择。

展讯平台为用户提供了创建静态窗口和动态窗口的接口,分别为函数MMK_CreateWin和函数MMK_CreateWindow,具体如何创建窗口,可以参考展讯文档,这里主要讲述调用创建窗口接口后的流程。

通过上面两个流程图,我们可以看到静态窗口和动态窗口的创建会调用几个相同的函数MMK_AddTreeNode、TreeNodeNew和MMK_WindowTreeNodeConstruct。

这三个函数是为了创建窗口节点,窗口是通过树来管理的,如下图:图3 窗口管理展讯平台里退出当前窗口时,系统会执行注销当前窗口的操作,用树管理窗口的好处就是这时候系统会自动进入父窗口,从而达到用户希望的效果。

创建完窗口节点后,会创建窗口的一些基本属性,如背景、显示区域等,这个时候我们看不到其它的属性,如状态栏、菜单、编辑框等等。

静态窗口和动态窗口在这之后就会出现一些区别,静态窗口会在后面继续创建窗口其它的属性,这些属性在先前宏WINDOW_TABLE中已经定义好的,比如状态栏、标题栏、菜单栏、soft控件等。

这些属性的创建是在以下函数中进行的。

PUBLIC BOOLEAN MMK_ParseWinTab(MMI_HANDLE_T win_handle,uint32 *win_tab_ptr){…value_ptr = win_tab_ptr;while ((END_WIN != *value_ptr) && (CAF_END_WIN != *value_ptr)){ins = *value_ptr;value_ptr++;if ((FIRST_PARSE <= ins) && (END_WIN > ins)){result = MMKParseFunc[ins - FIRST_PARSE](win_handle,&value_ptr);//调用函数表中的函数来创建窗口的其它属性}else if ((CHILD_CTRL_FIRST <= ins) && (LAST_CHILD > ins)){result = GUIFORM_ParseChild((ins - CHILD_CTRL_FIRST),win_handle,&value_ptr);}else if ((CAF_PARSEWIN_FIRST <= ins) && (CAF_PARSEWIN_MAX > ins)){result = CAFParseFunc[ins - CAF_PARSEWIN_FIRST](win_handle,&value_ptr);}else{SCI_ASSERT(FALSE); /*assert verified*/ }if (!result){break;}}return (result);}LOCAL const PARSE_FUNC MMKParseFunc[] ={SetWinPrio,SetWinFunc,SetWinId,CreateMenuCtrl,CreatePopmenuCtrl,CreateMsgBoxCtrl,CreatePrgBoxCtrl,CreateTextCtrl,CreateListBoxCtrl,CreateEditTextCtrl,CreateEditPhonenumCtrl,CreateEditDigitalCtrl,CreateEditPasswordCtrl,CreateEditListCtrl,CreateEditDateCtrl,CreateEditTimeCtrl,CreateEditIPCtrl,CreateAnimCtrl,SetWinBackgroundID,CreateLabelCtrl,CreateButtonCtrl,SetWinStyle,CreateDropDownListCtrl,CreateIconListCtrl,CreateRichTextCtrl,CreateTabCtrl,CreateStatusBarCtrl,CreateSoftkeyCtrl,CreateTitleCtrl,SetWinMoveStyle,CreateTipsCtrl,CreateSettingList,CreateFormCtrl,CreateOwnDrawCtrl,CreateToolbarCtrl,SetWinSupportAngle,};而动态窗口在创建完基本的属性后,需要手动创建窗口的其它属性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MMI_WIN_PRIORITY_E win_priority = WIN_LOWEST_LEVEL;
MMI_WIN_ID_Talert_win_id=MMICMSBRW_NEWPUSH_WIN_ID;
MMIPUB_OpenAlertWinByTextPtr(
&time_out,
&prompt_str,
Mocor MMI Pubwin Interface User Guide
Version:1.0.0
DocCode:SW-MOCOR-UG-0019
Date:2008-01-25

重要声明
版权声明
本文档中的任何内容受《中华人民共和国著作权法》的保护,版权所有© 2008,展讯通信有限公司,保留所有权利,但注明引用其他方的内容除外。
MMI_IMAGE_ID_Tprompt_image_id;
MMI_ANIM_ID_Twait_anim_id;
MMI_TEXT_ID_Tsoftkey_id[GUISOFTKEY_BUTTON_NUM];
MMIPUB_SOFTKEY_STYLE_Esoftkey_style;
MMITHEME_PUBWIN_Tpubwin_theme;
商标声明
展讯通信有限公司和展讯通信有限公司的产品是展讯通信有限公司专有。在提及其他公司及其产品时将使用各自公司所拥有的商标,这种使用的目的仅限于引用。
不作保证声明
展讯通信有限公司不对此文档中的任何内容作任何明示或暗示的陈述或保证,而且不对特定目的的适销性及适用性或者任何间接、特殊或连带的损失承担任何责任。
MMI_GetLabelTextByLang(TXT_SMS_NEW_MSG, &prompt_str);
MMIPUB_SetAlertWinTextByPtr(
MMISMS_NEWMSG_WIN_ID,
&prompt_str,
PNULL,
TRUE
);
三.1.6
【函数原型】
PUBLIC BOOLEANMMIPUB_CloseAlertWin(void);
MMI_WIN_ID_Twin_id;
MMI_MESSAGE_ID_Euser_msg_id;
} MMIPUB_INFO_T;
【参数说明】
参数名称
含义
id
Pubwin的窗口ID。这个不是窗口的ID
is_enter_anim_last_frame
is the last frame of enter anim
win_id_ptr:窗口ID,默认为MMIPUB_ALERT_WIN_ID;
win_priority_ptr:alert窗口优先级,默认为WIN_ONE_LEVEL;
softkey_style:softkey类型;
handle_func:处理函数。
【返回值】
无。
【注意事项】
无。
【范例/伪代码】
uint32time_out = 0;
一.2
图11描述了Pubwin在总体结构中的位置。它为上层应用程序提供了一种透明的服务机制。用户不需要关心实际上的pubwin的创建,销毁,消息处理等具体过程,而只需要在适当的时候创建并调用相应的处理函数即可。
图11Pubwin模块在总体结构中的位置
第二章
二.1
常量名
取值
说明
MMIPUB_WAIT_TEXT_LAEBL_NUM
wait_text_num
text number of wait window
timer_id
timerID
time_periodt
time period
prompt_image_id
prompt imageID
wait_anim_id
等待动画ID
softkey_id[]
softkeyID
softkey_style
MMI_STRING_T*text1_ptr,
MMI_STRING_T*text2_ptr,
MMI_IMAGE_ID_Timage_id,
MMI_WIN_ID_T*win_id_ptr,
MMI_WIN_PRIORITY_E*win_priority_ptr,
MMIPUB_SOFTKEY_STYLE_Esoftkey_style,
保密声明
本文档(包括任何附件)包含的信息是保密信息。接收人了解其获得的本文档是保密的,除用于规定的目的外不得用于任何目的,也不得将本文档泄露给任何第三方。
前言
文档说明
本文档描述了Pubwin的对外接口。
阅读对象
本文档适用于MMI相关开发人员。
内容介绍
本文档包括三个章节,分别为:
第一章:概述。简单介绍了Pubwin模块的特点;
Softkey类型
pubwin_theme
public window theme
win_id
窗口ID
user_msg_id
用户消息ID
第三章
三.1
三.1.1
【函数原型】
PUBLICvoidMMIPUB_OpenAlertWinByTextId(
uint32*time_period_ptr,
MMI_TEXT_ID_Ttext1_id,
win_priority_ptr:窗口优先级,默认为WIN_ONE_LEVEL;
softkey_style:softkey类型;
handle_func:处理函数。
【返回值】
无。
【注意事项】
无。
三.1.2
【函数原型】
PUBLICvoidMMIPUB_OpenAlertWinByTextPtr(
uint32*time_period_ptr,
if(MMIPUB_GetAlertTimerId(win_id) == *(uint8*)param)
{
……
}
三.1.5
【函数原型】
PUBLIC voidMMIPUB_SetAlertWinTextByPtr(
MMI_WIN_ID_Twin_id,
MMI_STRING_T*text1_ptr,
MMI_STRING_T*text2_ptr,
3
等待窗口所能设置的Text的最大数目
二.2
二.2.1
【含义】
MMIPUB_SOFTKEY_STYLE_E定义了Softkey类型。
【定义】
typedef enum
{
MMIPUB_SOFTKEY_NONE,
MMIPUB_SOFTKEY_ONE,
MMIPUB_SOFTKEY_OKEXIT,
MMIPUB_SOFTKEY_OKCANCEL,
enter_timer_id
enter anim timerID
cur_enter_anim_frame
currentframe of enter anim,default 0,from 0 to max-1
burst_snapshot_callback
call back function forburstsnapshot
【定义】
typedef struct
{
uint32id;
BOOLEANis_enter_anim_last_frame;
uint8enter_timer_id;
uint16cur_enter_anim_frame;
uint8wait_text_num;
uint8timer_id;
uint32time_period;
【依赖关系】
无。
【注意事项】
无。
【范例/伪代码】
MMI_RESULT_E recode = MMI_RESULT_TRUE;
recode = MMIPUB_HandleAlertWinMsg(win_id,msg_id,param);
三.1.4
【函数原型】
PUBLIC uint8MMIPUB_GetAlertபைடு நூலகம்imerId(
两个softkey,分别为ok和exit
MMIPUB_SOFTKEY_OKCANCEL
两个softkey,分别为ok和cancel
MMIPUB_SOFTKEY_CUSTOMER
用户自定义softkey
MMIPUB_SOFTKEY_MAX
定义枚举最大值
二.3
二.3.1
【含义】
MMIPUB_INFO_T定义了Pubwin信息。
MMI_TEXT_ID_Ttext2_id,
MMI_IMAGE_ID_Timage_id,
MMI_WIN_ID_T*win_id_ptr,
MMI_WIN_PRIORITY_E*win_priority_ptr,
MMIPUB_SOFTKEY_STYLE_Esoftkey_style,
MMIPUB_HANDLE_FUNChandle_func
第二章:数据类型。介绍了Pubwin所涉及到的数据类型,包括枚举、结构等;
第三章:API函数。详细描述了相关API函数的定义及说明。
文档约定
本文档采用下面醒目标志来表示在操作过程中应该特别注意的地方。
注意:
提醒操作中应注意的事项。
说明:
说明比较重要的事项。
相关文档
第一章
一.1
Pubwin是窗口的一种,用于显示提示、提醒等信息。按功能分,可将Pubwin分为三种:警告(alert)窗口、询问(query)窗口以及等待(waiting)窗口。本文简要的介绍了Pubwin模块的对外接口。包括窗口的创建、打开、消息处理以及softkey处理等。
PNULL,
IMAGE_PUBWIN_NEWMSG,
相关文档
最新文档