




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
04 12 1 嵌入式系统开发与应用 江苏大学计算机科学与通信工程学院通信工程系陈祖爵E mail zjchen TEL04 12 2 嵌入式系统应用开发实例 1 基于嵌入式Linux的智能手机系统设计2 基于ARM Linux和CDMA的远程视频监控系统 04 12 3 1 基于嵌入式Linux的智能手机系统设计 随着手持通信设备市场的快速发展 手机的功能逐渐增多 现在手机已经不只是用于语音通信的手持设备 而成为集成了短信 彩信 上网以及移动办公等附加功能的嵌入式通信平台 集成了这些功能的手机被称为智能手机 近年 嵌入式处理器的运行速度和功能都有了很大的提高 使得许多以前只能在PC上实现的应用 现在都可以在手持设备上实现 PDA发展的趋势和潮流就是计算 通信 网络 存储 娱乐 电子商务等多功能的融合 04 12 4 智能手机系统设计 目前 市面上的智能手机主要采用Microsoft公司的ocketPC PalmOS等商用操作系统 但这些操作系统开放的程序不够高 限制了许多第三方应用软件的移植 为使智能手机能够为第三方应用软件提供一个更为开放的嵌入式平台 提出一种以Linux作为嵌入式操作系统 Motorola的MX1作为微处理器 以Wavecom的Q2403A作为射频模块的智能手机系统的设计与实现 04 12 5 1 1智能手机系统的硬件电路结构 04 12 6 智能手机的主要参数 CPU ARM920T200MHz MotorolaMC9328MXL 显示 AU3 5 ReflectiveTFTLCDwithLEDfrontlight65 536色 ROM 32MBFlash RAM 64MBSDRAM 音效 内置单声道麦克风 单声道扬声器 立体声耳机插口 触屏 电阻式触摸屏 SD MMC 1个SD卡插槽 MMCVer3 1 0标准SDMC USB USB2 0主 从口 红外 IrDA 115Kpbs 04 12 7 智能手机的主要参数 串口 RS 232口 LED 红 在充电指示 绿 软件运行或电池故障指示 电源管理 Fullfeatured SipportsRun IdleandSleepmodes复位 设置复位开关 电池 3 7V锂离子电池物理尺寸 主板尺寸为65x53x5 5mm电源适配器 5V直流 外部连接器 Possibleintegration CF卡 Sensor Bluetooth SIMCard 其他 04 12 8 智能手机系统的硬件设计 智能手机系统的硬件设计如上图所示 该设计采用Motorola公司的MX1 MC9328 高性能的32位微处理器 Wavecom公司的Q2403A无线收发模块等实现智能手机的GSM通话 GPRS上网及其它PDA应用等功能 04 12 9 MC9328MX1微处理器 MC9328MX1是MotorolaDragonBall系列微处理器 采用节电的ARM920T核心 速度最高200MHz 集成了LCD控制器 SRAM USB接口 一个A D转换器 支持触摸屏控制 一个MMC SD主机端控制器 256 pin的MPPBGA封装 04 12 10 存储器系统 存储器的物理实质是一组或多组具备数据输入输出和数据存储功能的集成电路 用于充当设备缓存或保存固定的程序及数据 存储器按存储信息的功能可分为只读存储器ROM和随机存储器RAM 嵌入式系统中的固态存储一般用Flash存储器 04 12 11 FlashMemory 16Megabit 2Mx8 Bit 1Mx16 Bit CMOS3 0Volt onlyBootSectorFlashMemory 04 12 12 SD存储卡电路 04 12 13 Q2403A无线收发模块 系统采用WAVECOM公司的Q2403A专用无线收发模块 是双频GSM模块 EGSM900 1800MHz 其设计及开发符合ETSIGSMPhase2 标准 具有话音 GSM电路数据 传真 GPRS分组数据 短消息等功能 该模块支持AT指令集 通过RS232与MX1通信 04 12 14 Q2403A无线收发模块功能 数据特征 Q2403A 支持class2 下载26 8kbits s 上传13 4kbits s 话音 数据 传真 短信息功能 话音功能 数据 传真功能 短信息服务功能 呼叫转移 呼叫限制 多方通话 呼叫等待及呼叫保持 来电显示 显示呼叫转移其他功能 电话簿管理 个人信息管理 PIM 固定拨号 实时时钟 闹钟管理 04 12 15 复位电路部分原理图 04 12 16 系统电源电路原理图 04 12 17 LCD控制器功能模块图 04 12 18 74LVC16245驱动LCD引线 04 12 19 LCD控制器硬件连接 04 12 20 CS8900A的以太网接口设计 以太网接口电路主要由MAC控制器和物理层接口 PhysicalLayer PHY 两大部分构成 目前常见的以太网接口芯片 如RTL8019 RTL8029 RTL8139 CS8900 DM9000等 其内部结构也主要包含这两部分 本系统采用CS8900芯片 04 12 21 TCP IP协议结构分层示意图 04 12 22 CS8900A的连接 CPU部分 04 12 23 USB2 0总线接口 04 12 24 音频电路原理图 04 12 25 麦克风电路原理图 04 12 26 1 2智能手机系统的软件设计 系统分析和软件设计是智能手机系统实现的难点之一 关系到系统的稳定性 扩展性等 因为要兼顾到GSM语音控制与其它智能手机应用之间的互相切换及关联关系 智能手机软件系统的设计就变得相对复杂 系统设计将软件分为三层结构 如下图所示 最下面一层为操作系统层 主要实现对Linux操作系统的移植 其中包括Bootloader引导程序 LCD等设备的驱动程序 中间层为服务程序层 该层主要包括GUI服务器以及GSM GPRS控制服务器 智能手机系统设计的关键在于各项功能应用的实现 对智能手机软件进行分层设计 有利于各个功能有机地协调运转 同时也便于软件的开发与调试 04 12 27 智能手机系统的软件层次框图 04 12 28 1 2 1嵌入式Linux操作系统 Linux最初是由LinuxTorvalds编写及发布的源代码公开 可免费使用的操作系统 后来 又通过Internet上成百上千的程序员的加入 使Linux成为一个几乎支持所有主流32位CPU的操作系统 其特点主要有 内核高效稳定 公开源代码 可移植性 可裁减 支持多任务等 设计中采用的Linux内核是ARM Linux基础上 编写符合硬件设计的引导程序及电源管理控制程序 并针对本系统的硬件设计 编写了LCD 触摸屏等硬件设计驱动程序 智能手机基于Linux操作系统工作时 首先初始化CPU 然后加载各个设备驱动程序 初始化存储器及外围设备 最后启动各服务程序 进入待机状态 04 12 29 1 2 2服务程序的设计 智能手机系统中的服务程序主要有GUIServer和GSM GPRSServer 它们是上层应用赖以实现的基础 GUIServer为使系统能够很好地支持浏览器及MMS等界面复杂的应用 具有良好的可扩展性 本系统中的GUIServer设计采用了客户机 服务器模式 并以动态链接库的形式对图形设备接口进行封装 具体如下图所示 04 12 30 GUIServer程序设计框图 04 12 31 GUIServer 服务进程与应用进程之间采用Linux提供的消息队列进行通信 服务进程保存系统GUI环境的描述信息 为应用进程提供注册及一些计算任务 如计算当前剪切域内容等 此外 还负责显示桌面 应用程序的启动后 首先与服务进程建立连接并进行交互 将自身的一些描述信息发送到服务进程 服务进程和应用进程通过调用动态库实现基本窗口显示功能 其中窗口树与剪切域都定义在动态库中 对于服务进程或应用程序而言 它们是透明的 不需要进行管理 因服务进程与客户进程分别运行在不同的进程空间中 所以虽然在动态库中定义了相同的数据 但它们之间不会产生任何冲突 04 12 32 GUIServer 设计对动态库中封装的函数进行了分层 其中直接针对Framebuffer进行输出的函数位于系统最低层 其上是设备上下文 因每次对一个窗口输出的时都要首先建立设备上下文 所以设备上下文总可以引用窗体结构 自然也可以引用到窗口剪切域 在剪切域范围内才可以进行输出 图形设备接口建立在设备上下文之上 主要包括点 线 面 文本等 如上文所述 输出之前 首先建立设备上下文 即其输出的目标是设备上下文 而不是窗口 图形设备接口的上层是应用开发接口即API层 桌面进程与客户进程都通过调用API函数实现系统功能 另外 系统建立了输入的抽象层 屏蔽了不同输入设备 04 12 33 1 2 3GSM GPRSServer多工通信服务器软件 GSM GPRSServer多工通信服务器软件是电话 短信及数据业务的守护进程 负责响应应用程序转发的用户操作事件及从串口的获得的无线通信模块事件 是整个智能手机系统的核心 在这部分的工作中要实现多链路的数据通信 事件优先级判别 并在执行数据通信时 保证电话 短信的接入 具体程序设备结构如下图所示 04 12 34 GSM GPRSServer程序设计框图 04 12 35 1 2 4智能手机系统中的应用程序设计 有了中间层的服务程序 上层应用程序可以根据GUIServer及GSM GPRSServer提供的接口进行移植和开发 本设计中实现了电话控制程序 短信收发的管理及数据业务的应用等 下面以电话控制程序为例 介绍智能手机应用程序的设计与实现 04 12 36 电话控制程序状态切换关系图 04 12 37 电话控制程序状态切换 电话控制程序设计分为三个运行态 PowerOnState 上电态 IdleState 空闲态 ExecutionState 执行态 上图表示了三个状态之间的关系和进入各个状态的条件 电话控制程序在智能手机系统上电复位 GSM GPRSServer启动后 进入Power onState 上电态 在上电态 程序首先进行初始化工作 与GSM GPRSServer通信 获得系统状态 初始化后 即进入IdleState 空闲态 在空闲态 程序循环等待GSM GPRSServer的呼入事件及来自键盘的呼出事件 当这些事件发生时 程序进入ExecutionState 执行态 在执行态 用户进行语音通信 通话结束后 程序又回到空闲态 如将CPU主频进一步提高 无线通信模块换成符合3G标准的 就可以实现更为广泛的手持设备应用 04 12 38 2 基于ARM Linux和CDMA的远程视频监控系统 CDMA 码分多址 无线网络具有覆盖面广 高效 低成本的特点 CDMA网络的数据传输速率可达200kb s 嵌入式远程视频监控系统就是充分利用CDMA无线网络技术和嵌入式系统的特点而搭建的数据传输系统 特别适合边远偏僻或不具备常规网络传输条件的地方使用 例如车载视频监控系统 交通路口 车牌实时监视 及城市路灯的监控等 04 12 39 2 1嵌入式Linux系统 Linux作为一个桌面系统 其最大的特点是操作系统源代码公开并且遵循GPL协议 内核采用模块化的设计 易于裁减 特别适合嵌入式系统的小型化要求 在嵌入式系统中占据了半壁江山 监控系统选用的处理器是SAMSUNG公司ARM9内核的CPU S3C2410 内建有MMU 内存管理单元 主频可达到200MHz 运行嵌入式Linux2 4系统 不但保持了嵌入式系统小型化 低功耗 易携带的特点 又充分利用了Linux系统的内存 文件 线程管理功能 大大方便了程序的开发和程序中多任务功能的实现 04 12 40 2 2监控系统结构 监控系统一般可分为实时监控和触发模式监控两种 可以根据具体的情况设计合适的监控方式 如果采用实时监控 将占用较多网络资源 成本相对较高 采用触发模式的运行成本较低 这里采用触发模式 监控系统结构见下图 04 12 41 嵌入式远程视频监控系统示意图 04 12 42 监控系统工作原理 当遇异常情况后 触发监控终端拍摄图片 同时其内部的嵌入式控制模块和CDMA模块协同运作 完成Internet的接入 包括拨号 PPP和TCP IP协议的处理等 并把拍摄到的图片数据经打包后发送给控制中心主机 或发送给指定的E mail地址 控制中心主机登录到Internet上后运行服务器端软件就可以浏览由监控点发来的图片 04 12 43 2 3硬件系统设计 要能够正确运行一个操作系统 硬件方面至少应该包括CPU 内存和固态存储器 系统内部总线以及外设接口 具体硬件系统结构见下图 04 12 44 硬件配置 SAMSUNG公司的S3C2410CPU具有3个UART 1个RTC和触摸屏接口 还具有I2C总线 USBHost USBDevice等接口 充分满足了系统的需要 而且性价比高 由于剪裁后的Linux系统所占得存储空间非常小 只有几MB 选择E28F128J3A150NorFlash作为固体存储器 容量为16MB 通过16位数据总线与CPU交换数据 并利用其上端8MB空间 00800000H 00ffffffH 开辟了一个jffs2文件存储系统 存储系统的配置文件 64MB的SDRAM为2片K4S561632C 通过32位数据总线与CPU交换数据 04 12 45 硬件配置 通过MAX3232C电平转换芯片和RTL8019网络芯片转换成一个RS 232接口和一个以太网接口 用串口线和以太网网线与PC机相连 组成可以交叉编译的开发环境 通过CPU上集成的USBHost接口直接与USB摄像头连接 考虑到监控与控制模块接口的要求 选用USB1 1接口的红外线摄像头 通过CPU上集成的UART接口直接与CDMAModem模块相连接 选用价格适中的AnyData公司的DTGS 800CDMA模块 04 12 46 2 4软件系统设计 控制终端软件的核心是嵌入式Linux操作系统 一切功能的实现都基于Linux操作系统完成 需要解决的问题主要包括硬件支持 提供二次开发的环境以及小型化 裁减内核 等 作为一个操作系统 Linux内核主要负责程序的管理与调度 内存的管理及对外设的驱动和管理等 由于Linux内核采用模块化的设计 很多模块可以独立地加载或卸载 这里只需要串口驱动 USB摄像头接口驱动 包含USBHost USBCore和USBDevice 还有拨号网络应用 还要支持PPP TCP IP网络协议 其他都可以删除掉 使系统运行所需要的内核显著减小至1Mb以内 04 12 47 控制终端程序流程 04 12 48 程序设计 具体程序设计包括Bootloader启动代码 设备驱动程序 USB摄像头接口驱动程序 串口驱动程序 拨号 PPP及TCP IP协议处理 监控接收转发控制程序等 控制流程如上图所示 a 系统加电后复位b Bootloader初始化CPU SDRAM 分配地址空间等 04 12 49 程序设计 c Bootloader把Linux内核的压缩文件解压到SDRAM中 同时把控制权从Bootloader移交到Linux Linux的内核有两种运行方式 可在Flash存储器上直接运行 也可以加载到内存中运行 Flash存储器运行方式就是把内核的可执行映像烧写到Flash存储器上 系统启动时从Flash存储器的某个地址开始运行内核 进入SDRAM继续运行 这种做法能减少内存需要 实际上很多嵌入式系统都采用这种方法 内存加载方式把内核的压缩文件存放在Flash存储器上 系统启动时自动读取压缩文件并在内存中解压 然后开始执行 这种方式相对较复杂 但运行速度更快 这里采用这种方式 04 12 50 程序设计 d 开始执行SDRAM中的代码 L
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年医学美容微整形术后护理策略考试答案及解析
- 盐城市东台市卫生健康委员会招聘事业单位人员考试真题2024
- 南平建瓯市招聘城市社区专职工作人员考试真题2024
- 2024年重庆黔江区事业单位应届生定向招聘真题
- 2025年运动医学运动损伤护理与康复试卷答案及解析
- 2025年影像诊断放射技术实践考核答案及解析
- 2025年中医骨伤科手法操作技巧评估答案及解析
- 2025年妇产科学科妊娠并发症筛查模拟测试卷答案及解析
- 2025年眼科学屈光不正矫正技术测试模拟试卷答案及解析
- 2025年实验室医学常规检验操作考核答案及解析
- 2025 年小升初吕梁市初一新生分班考试语文试卷(带答案解析)-(部编版)
- 2025秋全体教师大会上,德育副校长讲话:德为根,安为本,心为灯,家为桥-这场开学讲话,句句都是育人的方向
- 2025年政工师考试试题及参考答案
- (2025年标准)个人转款协议书
- 2025兵团连队职工考试试题及答案解析
- 2025-2026学年接力版(2024)小学英语四年级上册(全册)教学设计(附目录)
- 区域检验信息管理系统规划书
- 无人机高精度航拍-洞察及研究
- 摄影后期教学课件
- 教育直播平台直播教学与2025年教育信息化政策解读报告
- 苹果协会管理办法
评论
0/150
提交评论