完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
6个回答
|
|
1 手机编程开发平台总体结构
作为专业技术课程,手机编程技术的教学内容包括系统设置、操作系统使用以及应用软件开发,因此,手机编程平台必须支持各项教学内容。另外,作为教学仪器,不仅需要满足全部工程编程测试等技术环节的学习要求,同时,还必须具有系统灵活、调试方便等特点。因此,手机编程开发平台硬件的设计应满足以下要求:支持移动公网通信功能,支持嵌入式设计基本功能,支持扩展操作功能,支持结构调整,支持数字测试。 根据上述要求,把手机编程系统设计划分为硬件平台和软件平台:硬件平台采用了功能模块化设计思想,有利于系统硬件的扩充与更改。基于模块化的设计中,把手机的硬件部分划分为通信单元模块、嵌入式系统模块、音频输入/输出模块和电源模块。各模块在结构与功能上完全独立,且采用统一的接口规范,使各模块能简单方便地连接到一起,构成完整的手机编程硬件平台。 考虑到降低开发成本以及移植与编程难度等因素,软件开发平台用嵌入式Linux操作系统作为开发平台,包括Bootloader的设计、Linux操作系统移植、相关的驱动程序编写、GUI移植等。 软件和硬件平台相结合,形成了硬件开放、源码公开、满足手机编程开发需要的系统。这个系统是嵌入式系统、GSM/CDMA、操作系统、GUI等技术的综合技术体,构建了一个完整的、开放的手机编程平台。 |
|
|
|
2 手机编程开发平台硬件结构
手机编程平台系统中,需要处理的数据有两大类:通信数据以及应用程序的数据。这里采用了双处理器的解决方案,如图1所示。 ①公网通信模块。利用一个微处理器(专用单片机)系统构成通信电路模块,专门处理与GSM/CDMA通信相关的任务。 ②应用程序处理模块。利用嵌入式系统构成本地任务处理模块,用来运行操作系统及其他应用程序。 |
|
|
|
2.1 公网通信模块
公网通信模块如图2所示,采用市场上可购买到的手机模块实现。以GSM公网通信模块为例,手机模块中包括天线、内部Flash、SDRAM、GSM基带处理器、电源等。GSM基带处理器是手机模块的核心部件,其作用相当于一个协议处理器,用来处理外部系统通过串口发送过来的AT指令。天线部分用来实现射频信号发射一接收、调制一解调,以及射频信号与基带处理器之间的信号转换。匹配电源为处理器及射频部分提供所需的电源。 |
|
|
|
2.2 应用程序处理模块
应用程序处理模块用来实现手机控制和操作的全部功能。本应用处理器模块以S3C2410构成的ARM9嵌入式微处理器系统为核心。应用程序处理模块包括嵌入式微处理器单元、音频输入输出电路单元和电源单元,如图3所示。 图3中,嵌入式微处理器系统模块具有如下技术特点:CPU为Samsung S3C2410X,200 MHz主频;2 MBNOR Flash,64 MB NAND Flash;64 MB SDRAM,由2片K4S561632组成,工作在32位模式下;3.5 in的TFT显示屏,320×240像素;USB1.1标准Client接口,10M以太网网络接口,20针JTAG调试接口。 2.3 手机开发硬件系统 在手机编程开发系统中,硬件系统平台与PC机相连接,把PC机作为程序开发平台,手机硬件系统平台作为嵌入式目标系统。作为开发系统,手机开发硬件平台的安装比较简单,如图4所示。将JTAG电缆插入嵌入式系统单元的JTAG接口,另一端连接PC机并口,就完成了手机编程系统的硬件平台连接。根据开发的需要,可用串口线连接PC机串口与手机编程系统的硬件平台串口。所开发的手机应用程序可以在手机硬件平台系统的嵌入式系统上独立运行,同时程序处理模块还可以通过网络接口直接用于网络通信。 |
|
|
|
3 手机编程实验台软件平台的构建
手机编程实验台软件平台包括Bootloader、嵌入式 Linuxkernel、GUI QT和用户驱动程序4个部分,Bootloader如图5所示。代码(即启动代码)是处理器复位后进入操作系统之前执行的一段代码,主要是为运行操作系统提供基本的运行环境,如初始化CPU和堆栈、初始化存储器系统等。 软件平台的逻辑操作如图6所示。 |
|
|
|
4 手机编程开发平台应用程序设计
作为基本技术学习的内容,该基本的手机编程应用程序主要是基于ARM的应用处理模块与GSM模块,来实现相互通信的无线数据传输,包括应用AT指令集的 GSM模块数据读写子程序、键盘控制处理子程序、LCD显示子程序等。此外,还提供了一个手机拨号及收发短信的程序。 (1)主程序流程主程序的流程如图7所示。首先对输入参数进行检查,完成对手机通信模块的串口波特率的设置,同时对串口通信其他的一些属性进行设置,从而保证手机通信模块与GSM模块的正确通信。初始化结束后,就可以建立键盘控制与读GSM模块子函数,此过程需要嵌入式Linux操作系统库函数的支持。最后,主函数处于等待外部中断请求的状态中。外部中断请求分别来自键盘输入和外部呼叫。 (2)键盘控制流程 键盘控制流程如图8所示。键盘操作是用户与无线通信系统的交互接口,用户首先对系统所提供的各种服务菜单进行选择,然后系统根据用户的选择对GSM模块进行设置。之后进行键盘的初始化,显示系统向用户提供的各种服务菜单,并等待用户选择。最后对用户的选择进行判断,并跳入相应的服务程序中。 结 语 手机编程技术是通信工程专业应当学习的一项重要工程技术。本手机编程实验平台就是为了满足手机编程技术的学习而设计的。构建了基于嵌入式系统的手机编程硬件平台和软件平台,不仅可以提供完整的编程系统,还提供了重要的手机程序验证系统,对手机编程的教学和手机功能应用的扩展开发具有很高的实用价值。 |
|
|
|
只有小组成员才能发言,加入小组>>
791 浏览 0 评论
1151 浏览 1 评论
2527 浏览 5 评论
2860 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2710 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1071浏览 3评论
193浏览 2评论
456浏览 2评论
368浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 16:24 , Processed in 1.263940 second(s), Total 86, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号