已阅读5页,还剩163页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
互芯平台GSM软件使用说明书一、 综合1、 如何建立软件开发环境?1.1、从ftp的/Tools/ CSDTK3.5_Cygwin1.5.25_Svn_1.5.4_Full_Setup.rar下载CSDTK,目前版本的CSDTK只支持windows xp和windows 2000平台。CSDTK集成了cygwin环境和一个强大的开发调试工具cooltools,以及一套交叉编译工具链。在安装之前,请检查电脑是否已经安装过cygwin,若是请先将以前安装过的cygwin卸载掉。之后双击CSDTK3.0_Cygwin1.5_Svn_1.5_Full_Setup.exe进行安装,如下图:注:建议使用专门的ftp软件来下载,例如FileZilla、cuteftp等等。注:第一次建立编译环境,请严格按照文档来配置(包括路径名称,目录结构,大小写等),有很多客户自己乱改名字导致各种问题。对环境熟悉了之后再按照自己的需要定制。选择“Next”,进入下图:这里选择的是CSDTK的安装路径,建议用默认的C:CSDTK,选择“Next”,进入下图:选择“Next”,进入下图:选择“Install”,进行安装。这里安装的是cooltools和交叉编译器,安装完成后会出现如下界面:选择“下一步”,进入下图:选择“下一步”,进入下图:这里选择的是cygwin的安装路径,建议使用默认的C:CSDTKcygwin。在“Install For”标签里建议选择“All Users”,在“Default Text File Type”标签里必须选择“Unix / binary”。 选择“下一步”,进入下图:这里要选择cygiwn的本地安装包的路径,我们在之前的安装过程中已经将其保存在C:CSDTKcygwin,所以直接选择“下一步”即可,进入下图:这一步是要选择安装的包,直接选择“下一步”,然后选择“安装”。cgywin安装完成后,出现CSDTK的安装完成界面,如下图,说明整个CSDTK已经安装完成。然后下载ftp的/Software Package/Gallite1129_BV_V1_0_3_20110713_1050/ cooltools_release_1107141450.rar,解压缩后替换C:CSDTKcooltools目录。1.2、从ftp的/Software Package/Gallite1129_BV_V1_0_3_20110713_1050/soft.rar下载源代码,解压源代码,建议放到某个盘(例如d:)的如下目录d:/projects/gallite,目录结构如下图所示,注意有个soft目录。然后从ftp的/Software Package下获取所有的补丁包(以patch_BV1_0_3_xxx形式命名),打上这些补丁。1.3、设置一个HOME的环境变量,如图:双击桌面上的cygwin图标运行cygwin,在C:CSDTKcygwinhome下会创建一个以当前用户名命名的目录(例如为yourname)。将D:projectsgallitesoftenvwin32.bashrc和D:projectsgallitesoftenvwin32cygenv.sh这两个文件拷贝到该目录下,并用UltraEdit编辑C:CSDTKcygwinhomeyourname.bashrc文件(打开时若UltraEdit提示要转换成DOS格式,请选择“否”),将116行:export PROJ_ROOT=/cygdrive/c/projects替换成:export PROJ_ROOT=/cygdrive/d/projects将122行export PATH=/usr/bin:/crosscompiler/bin:/cooltools/:替换成export PATH=/usr/bin:/crosscompiler/bin:/cygdrive/c/CSDTK/cooltools/:/cygdrive/c/Program Files/Xoreax/IncrediBuild:保存并关闭C:CSDTKcygwinhomeyourname.bashrc,在cygwin窗口依次输入如下命令:$ source /.bashrc$ work gallite若此时显示“Soft base SOFT_WORKDIR=/cygdrive/d/projects/gallite/soft,Project Switched to gallite”且当前路径切换到/cygdrive/d/projects/gallite/soft,如下图所示,则说明安装成功。以后每次打开新的cygwin窗口进行编译之前,都要先运行这两个命令。注:建议将cygwin窗口的缓冲区高度增大一些,如图:2、 如何编译代码?2.1、正式发布的代码只有一个默认的资源包,位于softapplicationmmi_customer,由于长时间没有维护了,强烈不建议使用。一般来说每个项目都有自己的资源包,所以要创建一个softapplicationtarget_res目录,将该项目的资源包放到该目录下,例如我的代码里有如下的资源包:如果需要特定的资源包,请联系FAE,因为资源包是不在ftp上发布的。然后运行如下命令:$ ctmake -j 8 CT_RELEASE=debug CT_TARGET=gallite_ms11_ap_qqvga_p0 CT_USER=FAE WITHOUT_WERROR=1 CT_OPT=dbg_size CT_RESGEN=yes CT_PRODUCT=110829_MS11_DEV最后在softhexgallite_ms11_ap_qqvga_p0_110829_MS11_DEV_debug下会生成如下文件:说明编译成功。2.2、编译命令的说明ctmake:make的封装脚本,主要处理模块化编译、多进程编译和分布式编译,之后会调用系统的make;-j 8:ctmka默认设置为4进程,如果你的电脑速度较快,可以用“-j 8”设置成8个进程。CT_RELEASE=debug/release:debug和release模式有几个区别,当出现软件原因的异常或者部分硬件原因的跑飞/死机和异常时,debug版本的软件会死循环等待调试工具的命令,直观看到的现象就是冻屏;而release版本的软件则会重启。另外debug版本的软件比releae的多占用一些(大概几十K)ROM和RAM空间。一般来说,开发调试的时候用debug模式,量产软件发布用release模式。CT_TARGET=xxx:设置target。target是互芯平台特有的概念,里面包括某个项目的绝大部分硬件的配置信息和部分的软件配置信息。target位于softtarget下,编译的时候必须用CT_TARGET=指定一个target。CT_USER=ADMIN/FAE:由于发布给客户的代码中stack是库的形式,所以要用CT_USER=FAE;如果有全部的源代码,则可以用CT_USER=ADMIN。一般客户都用CT_USER=FAE。WITHOUT_WERROR=1/x:这个变量指定了对于编译时产生的警告错误的处理方式,值为1则显示警告信息编译继续进行,其它值则警告做错误处理,编译停止。CT_OPT=dbg/dbg_opt/dbg_size/size/speed:这个变量指定了编译时的优化方式。dbg不开任何优化,只生成调试信息;dbg_opt使用-O2级优化,它会打开不涉及代码尺寸和运行速度权衡的所有优化,同时dbg_opt还会打开-falign-functions=16 -falign-jumps=16来优化运行速度,也会生成调试信息;dbg_size使用-Os级优化,它会优化代码尺寸,类似于-O2,但是将禁止任何为对齐而插入的空间,同时生成调试信息;size类似于dbg_size,只是不生成调试信息;speed类似于dbg_opt,只是不生成调试信息。另外,所有的优化都默认打开了-frename-registers选项。低端平台由于成本因素考虑,对空间的关注大于对速度的关注,所以一般都会在命令行上显式的指定CT_OPT=dbg_size。如果没有显式的指定,则在release时会使用speed,debug时会使用dbg_opt,最后往往会在link的时候由于ROM空间不够而报错。CT_RESGEN=yes/no:这个变量指定是否编译资源。CT_PRODUCT=xxx:这个变量影响了两个地方,一个是最后编译生成的路径和文件名字会包含CT_PRODUC指定的信息,一个是在手机运行时输入掩码(例如*#36*#)后查看版本信息的时候,会显示CT_PRODUC指定的信息。建议量产软件发布的时候都带PRODUCT信息,便于跟踪软件版本。2.3、其它编译选项的说明CT_USERGEN=yes/no:是否生成文件系统。选择yes后将会生成一个空的文件系统,并集成到最后生成的lod文件中,这样可以加快第一次开机时的开机速度(不必重建文件系统了),同时还会避免一些由于重建文件系统时引入的错误,缺点是如果文件系统过大,会导致下载时间稍长。建议采用CT_USERGEN=yes。WITH_SVN=0/x:是否使用SVN自动生成版本信息。如果你的电脑上没有安装SVN,或者安装了较高版本的SVN,请指定WITH_SVN=0,否则会产生编译错误。推荐使用1.5.4版本的SVN。如果需要安装SVN server,请参考evn目录下的“SVN安装配置”。ibuild:分布式编译,请参考env目录下的互芯平台上使用IncrediBuild进行分布式编译.doc。注意,建议使用IncrediBuild 3.51或更高版本,因为老版本对cygwin的支持不大好。dump:反汇编。:可以在编译命令行的任何地方指定,这样编译时会模块化编译,也就是只编译指定的模块,然后link。这样可以大大的加快编译的速度。一个例子:$ ctmake -j 8 CT_RELEASE=debug CT_TARGET=gallite_ms11_ap_qqvga_p0 CT_USER=FAE WITHOUT_WERROR=1 CT_OPT=dbg_size CT_RESGEN=yes CT_PRODUCT=110829_MS11_DEV application/coolmmi/mmi/GUI application/coolmmi/mmi/Alarm注意,模块化编译需要你的make版本为3.81或以上(CSDTK默认安装的是3.81),如果手动的修改为其它低版本会导致模块化编译失效。另外在模块化编译之前要进行过完全编译。3、 下载、抓trace、调试31、首先要安装usb转串口芯片CP2102的驱动,该驱动位于misc目录下的CP210x_VCP_Win2K_XP_S2K3(V5.30).zip。然后插入下载线,在设备管理器里面确保可以看到该设备,如下图(可能你看到的串口号和图示的不同)。如果找不到串口设备,请更换电脑的USB口和下载线,或者检查驱动是否正确安装。3.2、运行C:CSDTKcooltoolscoolwatcher.exe,显示如下界面:第一次运行coolwatcher时,需要在Profiles标签里选择Gallite,在lastcomport输入正确的串口号。以后运行coolwatcher时,会使用上次设置的信息。点击Ok,进入如下界面(你的界面可能和下图略有不同,因为我把不常用的一些标签给关掉了)。如果左边的Ruby Script栏下方显示“COM OPEN OK”,说明串口已经被成功打开了,否则要检查串口号是否正确。点击工具栏的第6个图标,选择要被下载的lod文件。点击工具栏的第7个图标,选择该项目用的flash的ramrun。常用的ramrun位于softtoolpoolpluginsfastpfflash_programmers下,你也可以自己编译ramrun。然后将手机开机。如果手机的flash是第一次下载,则左边Ruby Script栏会输出0xffffffff;如果手机里面已经有正常运行的软件,则Ruby Script栏会输出0xffffffff和0x57,可以依次来判断手机和coolwatcher之间的通讯是否正常。点击工具栏的第8个图标,就开始下载,右下角会显示下载的进度条。3.3、抓trace首先要确保编译出含有trace输出的软件。当前由于ROM空间的限制,默认trace输出都是关闭的。打开trace需要编辑相应项目的target.def文件,如下几行:# 31 # trace 设置GLOBAL_EXPORT_FLAG += MMI_NO_TRACEGLOBAL_EXPORT_FLAG += EDRV_NO_TRACEGLOBAL_EXPORT_FLAG += HAL_NO_PRINTFGLOBAL_EXPORT_FLAG += PAL_NO_TRACEGLOBAL_EXPORT_FLAG += SXS_NO_PRINTFGLOBAL_EXPORT_FLAG += APS_NO_PRINTFGLOBAL_EXPORT_FLAG += ARS_NO_PRINTFGLOBAL_EXPORT_FLAG += SXS_NO_DUMPGLOBAL_EXPORT_FLAG += MCI_NO_TRACEGLOBAL_EXPORT_FLAG += CSW_NO_TRACEGLOBAL_EXPORT_FLAG += CALIB_NO_PRINTFGLOBAL_EXPORT_FLAG += UMSS_NO_PRINTFGLOBAL_EXPORT_FLAG += UCTLS_NO_PRINTFGLOBAL_EXPORT_FLAG += VOIS_NO_PRINTFGLOBAL_EXPORT_FLAG += STACK_NO_PRINTFGLOBAL_EXPORT_FLAG += RFD_NO_TRACE 例如如果要打开MMI的trace,则修改为:#GLOBAL_EXPORT_FLAG += MMI_NO_TRACE#GLOBAL_EXPORT_FLAG += SXS_NO_PRINTF也就是说,打开任何一个或者几个trace,GLOBAL_EXPORT_FLAG += SXS_NO_PRINTF都要被注释掉。然后全部重编(将softbuild相应的目录删掉,再编译),这时的软件就是含有trace输出信息的。如果ROM空间不够,可以只保留英文打开coolwatcher的Plugins菜单,选择Activate Trace Tool,右边会出现新的Trace tool标签,如下图:选择图标,可以设置trace level,如下图:点击Apply,将手机开机,点击,就可以输出trace信息了。3.4、上面提到的trace输出是非实时的,系统在空闲的时候输出trace,而且输出的数据量比较大的时候可能会输出不完整。另外有一种更简单的调试手段,使用hal_HstSendEvent()函数输出一个32bit的数据,这个输出是实时的,也不会被冲掉,输出的数据显示在Ruby Script栏里。事实上上面提到的开机输出的0x57就是调用这个函数输出的。3.5、如果程序遇到异常,debug版本的软件会冻屏。这时连上coolwatcher,点击第5个图标,选择C:CSDTKcooltoolsrbbasecommonpluginsCoolGDBprofilesgallite_xcpu.cgd文件(选择一次即可,以后系统会默认用上次选择的)。然后选择第4个图标,即可进入gdb调试窗口。第一次使用的时候windows防火墙会提示拦截,请放行。常用如下gdb命令,可以用来帮助debug:bt和bt f,输出出现异常的task异常现场的call stack;print或p,输出全局变量的值,如p gIsOnSearchingScreen;其它常用gdb命令请查看gdb手册,在gnu目录下的GDB Quick Reference.pdf。4、 开始一个新项目我们的整个软件由三部分构成:target配置、代码、资源包。一套软件里面,有很多target配置,也有很多资源包,但是只有一套代码。新建一个target,选择一个现有的资源包或新建一个资源包,进行适当的编辑,再和当前的代码一起编译,就会生成一个新的项目的lod。注意:下面提到的gallite若不特意说明指的是CT1129/30/31(8806),不包括CT1128。4.1、target配置。一个新的项目,第一步是要配置其target。一般来说,我们可以选择一个现有的和新项目硬件配置比较接近的target作为基础,修改成新项目的target。我们在softtarget目录下面可以看到很多目录,每个目录是一个项目的target配置。 target配置分成三个文件 target.def : 主要是配置芯片型号和全局参数 tgt_board_cfg.h : 主要是配置gallite芯片接口和外设 tgt_app_cfg.h : 主要是配置文件系统和内存分配下面我们详细描述一下这几个文件的具体参数的定义4.1.1、target.def详细描述输入资料:原理图和产品定义 参与人员:原理图设计者、驱动工程师 开始配置target之前,需要问清楚,项目所使用的 FLASH、LCD(模组和 IC 的 SPEC)、Sensor、RF PA、Audio PA、蓝牙等型号,以及支持的SIM卡数等。先看一个模板,我们以gallite_r440_3232为例说明,蓝色部分是源文件内容,黑色部分是我对会经常修改的部分的注释。这里只是贴一个例子,后续对于专门问题会专门讨论:#下面是gallite集成配置,不能随意改动#CT_ASIC ?= galliteCT_ASIC_CFG ?= chip3GPP_MODE ?= gsmROM_TYPE ?= chip#chip package for different sram size:CT1129/CT1130/CT1131#CT1129: 16Mbit sram#CT1130: 32Mbit sram#CT1131: 64Mbit sramCT_CHIP_PKG ?= CT1130#chip DIE:8805/8806/8808CT_CHIP_DIE ?= 8806CT_ROMULATOR ?= noPM_MODEL ?= rda1203_gallite_CT1129XCV_MODEL ?= xcv_rda6220_gallite_CT1129AD_MODEL ?= codec_gallite#上面是gallite芯片集成的配置。根据内置psram和spi flash大小的不同,gallite目前分为CT1129,CT1130和CT1131。根据贴的具体的芯片型号和批次,这里要给CT_CHIP_PKG和CT_CHIP_DIE赋正确的值。其它部分不必修改。注:CT_CHIP_PKG和CT_CHIP_DIE在bv3及以前的版本中不必定义。#触屏驱动 gallite集成,需要则配rda1203_gallite,否则为空#TSD_MODEL ?=#FM驱动 gallite集成,需要则配rda5802e_gallite,特别注意的是若是使用ATV RDA5888S或RDA5888E中集成的FM时,需要配成rda5888e# FM_MODEL ?= rda5802e_gallite#有的带atv的项目客户对内置fm的效果不满意,要求使用外置fm,这里就需要修改成rda5888e#上面是gallite集成配置,不能随意改动#注意1:除非特别说明,module的名字必须和edrv目录下面的目录名保持一致,#否则编译的时候找不到对应的目标。如果edrv下面没有相关的目录,#说明暂时没有这个设备的驱动,需要驱动工程师自己去开发一个新的驱动,#驱动程序可以根据设备的SPEC参考已有的驱动进行修改。# 1 #RF PA型号 驱动程序在edrv/rfd目录# pa_rda6212 # pa_rda6216 # pasw_rda6218 # pasw_rda6231 # pasw表示集成PA和Switch# 推荐使用pasw_rda6231 PA_MODEL ?= pasw_rda6231#对于4频的项目,一般会贴6232,但是软件驱动是通用的,这里也配成pasw_rda6231就行了。#Switch型号SW_MODEL ?= # 2 #选择FLASH型号,驱动程序edrv/memd#ADMUX MCP#1 Numonyx M36L0R7050U3ZS 128+32# Numonyx M36L0R7050L3ZS 128+32# Numonyx M36L0R7050T4 128+32# Numonyx M36L0R7050T3 128+32# Numonyx M36P0R8060N0ZS 256+64# Numonyx M36W0R6050U4ZS 64+32#2 Spansion S71NS128PB0 128+32# Spansion S71NS256NB0 256+32# Spansion S71NS256PC0 256+64# Spansion S71WS256NC0 256+32# Spansion S71WS256PD0 256+32#3 TOSHIBA TY5701111183KC 128+32# TOSHIBA TY671111184KC 128+64#Normal MCP#1 Samsung K5L6331CAA_D270 64+32# Samsung K5L2731CAA_D770 128+32# Samsung K5J6332CTM-D770 64+32# Samsung K5L3316CAM 32+16#2 TOSHIBA TV00560002EDGB 64+32# TOSHIBA TV00570002ARGQ 128+32#3 EON EN71PL0640B0 64+32# EON EN71GL064B0 64+32# EON EN71PL032A0 32+16# EON EN71GL032A0 32+16#4 Spansion S71PL064JB0 64+32# Spansion S71PL064JA0 64+16# Spansion S71PL127NB0 128+32# Spansion S71PL256NC0 256+64#5 ESMT FM91L03216UA 32+16#6 Silicon7 SVME3216UTA 32+16#7 Numonyx M36W0T60x0xTB3 64+16/32#flash model interface:parallel/spiFLSH_IF ?= spiFLSH_MODEL ?= flsh_gd25q32#spi flash的驱动是通用的,这里可以根据容量来统一使用通用驱动flsh_spi32m、flsh_spi32x2m、flsh_spi64m和flsh_spi64x2m。在bv3及以前的版本中,还是需要使用特定驱动,比如flsh_gd25q32SYS_MEMD_EBC_CLK ?= _52MHz_ifeq $(strip $FLSH_IF) spi #SPIFLASH spi CLK cfg:_52MHz_/_78MHz_/_104MHz_/_156MHz_SYS_MEMD_FLSH_SPI_CLK ?= _78MHz_GLOBAL_EXPORT_FLAG += _PRJ_WITH_SPIFLSH_endif # ($FLSH_IF,)#ram is ADMUX or not GLOBAL_EXPORT_FLAG += MEMD_RAM_IS_ADMUX#flash is ADMUX or not #GLOBAL_EXPORT_FLAG += MEMD_FLASH_IS_ADMUX# ram support burst mode or notGLOBAL_EXPORT_FLAG += MEMD_RAM_IS_BURST#flash support burst mode or not#GLOBAL_EXPORT_FLAG += MEMD_FLASH_IS_BURST#ebc clock use 52MHz/78MHz/104MHzifeq $(strip $SYS_MEMD_EBC_CLK) _52MHz_ GLOBAL_EXPORT_FLAG += RAM_CLK_IS_52Mendififeq $(strip $SYS_MEMD_EBC_CLK) _78MHz_ GLOBAL_EXPORT_FLAG += RAM_CLK_IS_78Mendififeq $(strip $SYS_MEMD_EBC_CLK) _104MHz_ GLOBAL_EXPORT_FLAG += RAM_CLK_IS_104Mendififeq $(strip $SYS_MEMD_EBC_CLK) _156MHz_ GLOBAL_EXPORT_FLAG += RAM_CLK_IS_156Mendififeq $(strip $SYS_MEMD_FLSH_SPI_CLK) _52MHz_ GLOBAL_EXPORT_FLAG += SPI_FLSH_52Mendififeq $(strip $SYS_MEMD_FLSH_SPI_CLK) _78MHz_ GLOBAL_EXPORT_FLAG += SPI_FLSH_78Mendififeq $(strip $SYS_MEMD_FLSH_SPI_CLK) _104MHz_ GLOBAL_EXPORT_FLAG += SPI_FLSH_104Mendif# 3 #配置底层是否支持WAP/MMS,1为支持,0为不支持#WAPMMS_SUPPORT ?= 1ifeq $WAPMMS_SUPPORT 1 MMI_USING_SLIM_WAPMMS := YESifeq $(strip $MMI_USING_SLIM_WAPMMS) YES GLOBAL_EXPORT_FLAG += MMI_USING_SLIM_WAPMMSendifendif#如果3216的项目是不支持WAPMMS的,这里要定义WAPMMS_SUPPORT ?= 0#如果是3232的项目,可以支持SLIM WAPMMS,这里要定义WAPMMS_SUPPORT ?= 1,MMI_USING_SLIM_WAPMMS := YES#如果是3264或者6432的项目,可以支持全功能的WAPMMS,这里要定义WAPMMS_SUPPORT ?= 1#对于读写速度较慢的flash,需要定义这个宏,#定义这个宏后,当运行camera/video player/video recorder等应用时不自动下载彩信内容,只下载彩信通知,用户可以之后手动下载彩信内容#GLOBAL_EXPORT_FLAG += MANUAL_DOWNLOAD_MMS# 4 #选择LCD型号,驱动程序edrv/lcdd#1 QVGA240*320#Hx8347 Lgdp4532 St7781 Ssd1297 Spfd5408b#Hx8367 S6d1121 St7787 Ili9320#Otm3225 Ili9325 Ili9328 Ili9340#2 QCIF176*220#Hx8340b Kc20 R61503v Otm2201a#Ili9225 lgb4525b R61503vr Otm2201h#Ili9225b Ili9225br S6d0164 Dc2200#3 QQVGA128*160#Ili9163 S6b33bf St7669v S6d0144#St7735 Hx8345a Fd54124bvLCD_MODEL ?= ili9163c st7735r#lcd model interface:slcd/gouda/lcdcLCD_IF ?= goudaTARGET_EXPORT_FLAG += lcd_line_8_lowifeq $(strip $LCD_IF) slcd GLOBAL_EXPORT_FLAG += _PRJ_WITH_SPILCD_endif # ($LCD_IF,)#我们的lcd驱动支持自适应;lcd接口支持gouda和slcd,根据硬件情况进行配置。支持的lcd模组可以查看softplatformedrvlcdd# 5 #选择CAMERA型号,驱动程序edrv/camdold#1 OmniVision OV7660 VGA# OmniVision OV7670 VGA# OmniVision OV7675 VGA#2 GalaxyCore GC0306 VGA# GalaxyCore GC0307 VGA# GalaxyCore GC0309 VGA#3 BYD BYD3503 VGA# BYD BYD3603 VGA# BYD BYD3703 VGA#4 HYNIX YACBAA0SDDAS VGA# HYNIX HYA10S VGA#5 SET SIV100B VGA#6 Superpix SP80818 VGA CAMERA_MODEL := gc0309 pas6175#camera model interface:parallel/spiCAMERA_IF ?= parallel#支持双camera#GLOBAL_EXPORT_FLAG += SUPPORT_DUAL_CAMERA#拍照时候闪光灯功能#GLOBAL_EXPORT_FLAG += _CAMERA_FEATURE_FLASH_#使用camera模拟2d sensor#GLOBAL_EXPORT_FLAG += CAM_MD_SUPPORTifeq $(strip $CAMERA_IF) spi GLOBAL_EXPORT_FLAG += _PRJ_WITH_SPICAM_endif # ($CAMERA_IF,)#我们的cam驱动支持自适应;lcd接口支持parallel和spi,根据硬件情况进行配置。支持的cam模组可以查看softplatformedrvcamlod# 6 #选择Blue Tooth型号,驱动程序edrv/btd#RDA5868+ 6x6#RDA5872 6x6#RDA5870 6x6#RDA5875 4x4#推荐使用RDA5872,RDA5870兼容设计,Gallite平台支持BT免晶体设计BT_MODEL ?= rda5875ifneq ($BT_MODEL,)# 当不支持A2DP的时候需要定义这个宏#GLOBAL_EXPORT_FLAG += _BT_NO_A2DP_PROFILE_#GLOBAL_EXPORT_FLAG += _BT_AUDIO_VIA_SCO_# Define BT crystal flagBT_SHARE_CRYSTAL := 1endif # ($BT_MODEL,)# 7 #选择ATV型号,驱动程序edrv/analogtvd#RDA5888S 8x8#RDA5888E 6x6#推荐使用RDA5888E,Gallite平台支持ATV免晶体设计ATV_MODEL ?= ifneq ($ATV_MODEL,)ANALOG_TV_SUPPORT := 1endif # ($ATV_MODEL,)# 8 #配置T卡接口为sdmmc,使用PSI接口时候可以配置为spi#MCD_IF ?= sdmmc# 9 #umss_storage_flashmc表示支持FLASH和T卡U盘,umss_storage_mc 表示仅支持T卡U盘#UCTLS_SERVICE ?= umss_storage_flashmc# 10 #配置I2C类型,当配置了这项为i2c_gpio之后,I2C接口将作为GPIO来使用,用GPIO10和GPIO11来软件模拟I2C接口#I2C_MODEL ?= ifeq $I2C_MODEL i2c_gpioTARGET_EXPORT_FLAG += I2C_BASED_ON_GPIOendif# 11 #选择gsensor型号,驱动程序edrv/gsensor#mma7660fc#mma7660fc_gpioGSENSOR_MODEL ?= # 12 #选择多卡模式,rda1203_gallite(2卡驱动);threesimd(3卡驱动);fourdimd(4卡驱动),驱动程序在edrv/dual_sim中#DUALSIM_MODEL ?= rda1203_gallite_CT1129ifeq $(strip $CT_CHIP_DIE) 8806 TARGET_EXPORT_FLAG += GALLITE_IS_8806elseifeq $(strip $CT_CHIP_DIE) 8808 TARGET_EXPORT_FLAG += GALLITE_IS_8808endifendif#8806和8808的区别在bv3及其以前是不存在的,统一用TARGET_EXPORT_FLAG += GALLITE_IS_CT1129#3卡驱动需要定义此宏#TARGET_EXPORT_FLAG += TGT_THREE_SIM#支持的多卡的数量*NUMBER_OF_SIM ?= 2#支持多卡的卡序排列*USER_SIM_ORDER := 1 2#如果用了SIM switch开关,就打开此宏#TARGET_EXPORT_FLAG += SIM_SWITCH_USEDifneq ($USER_SIM_ORDER,)TARGET_EXPORT_FLAG += USER_SIM_SWAPendif # ($USER_SIM_ORDER,)#这里要根据sim卡数量合理配置# 13 #定义资源包#CT_ERES :=440_3216#这里定义使用的资源包,资源包在softapplicationtarget_res下。# 14 # Define the ML language support多国语言设置#ML_SUPPORT_CP0 印地语#ML_SUPPORT_CP1256 波斯语#ML_SUPPORT_CP1258 越南语#ML_SUPPORT_CP874 泰语#ML_SUPPORT_CP936 中文#ML_SUPPORT_ISO8859_1 阿尔巴尼亚语、巴斯克语、布列塔尼语、加泰罗尼亚语、#丹麦语、荷兰语、法罗语、弗里西语、加利西亚语、德语、#格陵兰语、冰岛语、爱尔兰盖尔语、意大利语、拉丁语、#卢森堡语、挪威语、葡萄牙语、里托罗曼斯语、苏格兰盖尔语、西班牙语及瑞典语 #ML_SUPPORT_ISO8859_5 斯拉夫语 俄语#ML_SUPPORT_ISO8859_6 阿拉伯语#多国语言设置总控制宏,目前需要常开GLOBAL_EXPORT_FLAG += ML_SUPPORTGLOBAL_EXPORT_FLAG += ML_SUPPORT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 粮库中控工安全宣传能力考核试卷含答案
- 矿井测尘工班组协作考核试卷含答案
- 油画外框制作工岗前实操掌握考核试卷含答案
- 船舶电讯工操作模拟考核试卷含答案
- 物业管理师客户服务评优考核试卷含答案
- 乳化香精配制工岗位基础理论考核试卷含答案
- 野生动物监测工班组安全竞赛考核试卷含答案
- 陶瓷雕塑工安全宣传测试考核试卷含答案
- 旅游团队领队安全生产知识竞赛考核试卷含答案
- 商务数据分析师决策判断水平考核试卷含答案
- 五年级下册道德与法治教学总结
- 2026-2030中国电解电容纸行业市场发展趋势与前景展望战略分析研究报告
- 学校招生工作委员会章程
- 2024年10月课程代码13000《英语(专升本)》真题及答案
- 2026青年情绪白皮书-腾讯基金会-202603
- 机械气道廓清技术临床应用专家共识总结2026
- 2025年医院感染管理相关法律法规试卷及答案
- 煤矿班组长培训课件
- 烧结基础知识课件
- 鱼类育种课件
- 转账信息确认协议书
评论
0/150
提交评论