当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于嵌入式系统的手机编程开发平台

引 言

随着移动通信技术的飞速发展,手机已经从单一的电话通信设备转变为信息网络终端,因此,近年来手机编程已经成为一项重要的技术。手机是一个高新技术的集合体,包含了移动终端、嵌入式系统、数字信号处理以及通信协议设置等多项技术。手机编程开发平台是集合了通信技术、嵌入式技术、电子技术、软件工程、操作系统等理论的软硬件的教学与研究开发平台。在这个开发平台上开发相应的程序,可以掌握嵌入式系统设计的流程与方法;可以根据使用者的需求,设计并实现手机的基本功能和扩展功能。

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操作系统库函数的支持。最后,主函数处于等待外部中断请求的状态中。外部中断请求分别来自键盘输入和外部呼叫。[!--empirenews.page--]

 

 

(2)键盘控制流程

键盘控制流程如图8所示。键盘操作是用户与无线通信系统的交互接口,用户首先对系统所提供的各种服务菜单进行选择,然后系统根据用户的选择对GSM模块进行设置。之后进行键盘的初始化,显示系统向用户提供的各种服务菜单,并等待用户选择。最后对用户的选择进行判断,并跳入相应的服务程序中。

 

 

结 语

手机编程技术是通信工程专业应当学习的一项重要工程技术。本手机编程实验平台就是为了满足手机编程技术的学习而设计的。构建了基于嵌入式系统的手机编程硬件平台和软件平台,不仅可以提供完整的编程系统,还提供了重要的手机程序验证系统,对手机编程的教学和手机功能应用的扩展开发具有很高的实用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭