




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ARM的嵌入式系统设计 学校 黑龙江科技学院专业 电子信息与科学技术班级 电科2班学号 080531060204学生姓名 崔欢指导教师 李广伟 摘要 嵌入式系统以其特殊 体积小 便于携带 高可靠性 已经在广泛领域得到应用 如军事国防 消费电子 通信设备 工业控制 嵌入式处理器嵌入式实时操作系统 RTOS 具有实时性 低成本 小型 专用和高可靠性 克服传统的基于微控制器的控制系统功能不全和非实时的基于PC系统的缺点 随着嵌入式系统的硬件和软件技术的飞速发展 其应用将更加广泛 嵌入式系统的研究将有非常广泛的前景 这个项目的目的是研究对学校教学的嵌入式系统平台 这提高对嵌入式系统的理解是非常重要的 本篇以嵌入式系统设计的原则和实际应用为核心 以理论和技术方法为主题 开展了一系列研究 嵌入式系统的定义和特点 嵌入式系统是指以应用为中心 以计算机技术为基础 并且软硬件可裁剪 适用于应用系统对功能 可靠性 成本 体积 功耗有严格要求的专用计算机系统 这是从技术的角度来定义的 嵌入式系统一般由嵌入式微处理器 外围硬件设备 嵌入式操作系统以及用户的应用程序等4个部分组成 用于实现对其它设备的控制 监视或管理等功能 嵌入式 反映了这些系统通常是更大系统中的一个完整部分 嵌入式的系统中可以共存多个嵌入式系统 与通用的嵌入式系统相比 其主要特征是 1 嵌入式系统通常是面向特定应用的 嵌入式CPU与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中 它通常都具有低功耗 体积小 集成度高等特点 能够把通用CPU中许多由板卡完成的任务集成在芯片内部 从而有利于嵌入式系统设计趋于小型化 移动能力大大增强 跟网络的耦合也越来越紧密 2 嵌入式系统的硬件和软件都必须高效率的设计 消除冗余度 在同样的硅片面积 努力实现更高的性能 所以在处理器的具体应用选择上才更具有竞争力 3 为了提高执行速度和系统可靠性 嵌入式系统中的系统程序 包括操作系统 和应用程序是浑然一体的 这些程序被编译连接成一个可以执行的二进制映像文件 然后被固化在系统存储空间中 4 嵌入式系统本身不具有引导发展的能力 即使设计完成后 大多用户通常不能自行修改程序的功能 使嵌入式系统开发的系统和实际的操作系统是不一样的 需要交叉编译系统和适当的调试系统 5 高可靠性和高实时性 也就是说 在恶劣的环境或突然断电的情况下 系统仍然会工作 并且对于一个特殊的信号 消息快速响应中断 本文主要研究的问题背景和内容 本文主要研究的问题背景 可以在嵌入式系统的巨大需求描述中发现 特别是在未来10年嵌入式的需求达到了一个高峰 从国内IT行业的发展来看 国内设备开发有从众心理 为了提高可靠性 而去使用别人早已用过比较成熟的产品 但这些产品往往价格昂贵 并且核心技术长期掌握在他人控制的手中 不利于自身的发展和成长 由于嵌入式系统不同于以往PC市场 硬件和软件已经不可能出像一家垄断的情况 实际上对硬件及软件的选择来说 主要因素是由应用决定的 国内应该抓住这个机会加入到这个竞争行列中来 ARM微处理器因其卓越的低功耗 高性能在32位嵌入式应用中已位居世界第一 是高性能 低功耗嵌入式处理器的代名词 为了顺应当今世界技术革新的潮流 了解 学习和掌握嵌入式技术 就必然要学习和掌握以ARM微处理器为核心的嵌入式开发环境和开发流程 这对于研究和开发高性能微处理器 DSP以及开发基于SOC芯片设计及应用系统是非常必要的 作为电子信息专业的本科 研究生很有必要了解和掌握32位嵌入式应用的开发技术 通过对嵌入式的学习使学生具有较强的综合素质 成为具有良好的实际操作能力设计能力符合社会需求的开拓性电子应用人才 本文主要内容概述和任务安排 本文是在上述背景下的设计和实施的 对整体发展过程中的嵌入式系统功能进行可行性研究 并对平台的选择和技术上的困难进行了讨论 不仅涉及一般的嵌入式系统的实施方法 而且对项目本身的细节进行详细说明 与通用PC系统相比 嵌入式系统的硬件之间能更紧密的合作 使每个设计都有其特定的硬件平台 此文以笔者设计实验板为例 介绍嵌入式系统开发需要使用的基本软硬件模块 LED IIC SPI SSP VIC A D WDT UART GPl0 RTC和低功耗等 依据嵌入式系统设计的工作量 系统开发的重点在软件 操作系统内核移植往往是最关键的也是最困难的设计部分 因此 我们简要介绍了LPC2136基于ARM内核的芯片启动程序 着重介绍 C OS II的移植过程这个部分 论文通过比较研究 得出结论 总结了嵌入式系统设计和实施的必要问题 困难和他们的解决方案 以及在实际应用中 对嵌入式系统进行构建产生影响的诸多因素 嵌入式系统总体设计 传统的嵌入式系统的开发应用是基于瀑布式流程 操作模式很简单 分工任务协调 人员配备和管理物质材料的分布都比较简单 如图2 1所示 所有的发展是由流水线进行 这方面的开发使用一个单独的软件开发和硬件的发展模式 虽然各部分可以独立进行 但不一定是最好的系统性能 每一部分的变化和缺陷 很容易导致系统集成出现问题 这些问题将不仅难以找到 更重要的是它们往往会涉及到的软件或硬件配置变化和结构变化 显然 这是灾难性的 为了避免这些问题 在20世纪90年代 国外一些学者提出了一个新的发展方法 硬件和软件协同设计的方法 首先 应用程序是独立于任何硬件和软件功能规范的方法来描述系统 其作用使硬件 软件的统一功能和易于合成的划分 然后 从系统的功能要求 并在开始限制硬件 软件 分配系统的硬件 软件模块 但结果需要性能评估师对命令参数评估 如果评估不符合结构的要求 说明方案的选择分工是不合理的 需要进行重新划分 重复直到你得到一个更令人满意的硬件 软件至今 图2 2是该方法的框图 这种方法的特点是通过联合设计 联合测试和协同验证 充分考虑硬件和软件之间的关系 并给予参与核查的每个级别 及早的发现和解决问题 显然 对于具体的应用程序 这种方法很容易获得满足综合性能指标的最佳解决方案 因此 我们的项目也是按照这种方法设计 开发平台总体规划 硬件规划 我们利用的ARM核心处理器设计了一个通用的测试平台 您可以添加各种外设和接口 并且它们都是高度可伸缩的 实验板采用 核心板和多种可选适配器 的形式组成了LPC2136开发平台 下面就是基于LPC2136的核心板的组成框图 从此图中就可以看到其各部分的布局结构 核心板的资源如下 CPU 基于ARM7TDMI内核的LPC2136微处理器 外部时钟为11 0592MHz 内部倍频最高可至60MHz 所有I O口全部引出 方便用户连接外部电路的开发与使用 可进行GPIO的控制实验 如键盘输入 蜂鸣器控制 模拟SPI等 6个独立按键 可用于外部中断 定时器捕获输入 8个LED指示灯 具有RS232转换电路 可与上位机进行通讯 完成UART通讯实验 可以与标准串行modem和GPRS直接接口 方便远程通讯 具有I2C接口和SPI SSP接口输出 使用板内的CAT1025 内含复位功能 完成I2C总线读写ROM 使用74HC595芯片 实现SPI接口数据发送 接收 A D转换实验 DAC转换 实时时钟控制 WDT及低功耗控制 多种可选的适配器可根据用户自己所需来外设接口 如果面板功能部件CPU之间的跳线断开 用户可以用连接配置适配器的方法进行外部扩展设计 如以太网接口 SD卡 调制解调器 GPRS 液晶显示器 USB设备和其他设备 软件规划 在芯片通过了启动程序的引导后 直接进入C语言的MAIN函数入口 通过调用移植好的实时多任务操作系统 C OS II函数包就可以完成多任务之间的调度和同步 并为设备驱动和系统服务程序提供信号量 邮箱 消息队列的服务 因为内核需要实现时间延时和确认超时 所以还需要时钟节拍中断服务程序为其服务 当然 C OS II只是一个内核 操作系统的其他部分都没有提供 所以我们需要自行设计设备驱动程序和部分系统服务程序 设备驱动是连接底层硬件和上层简洁规范的接口程序的纽带 对下层它可以直接操作硬件 也可能通过中断处理程序与硬件通信 对上层接受上层的请求并执行 一般来说应用程序如果要用到设备驱动程序 就需要用I O管理来达到要求 我们计划在开发平台上完成RTC驱动 串口UART驱动 按键及LED驱动 GPIO驱动 形成一套完整的应用程序开发环境 考虑到时间和人力问题 剩下的部分设备用户可以自行设计 系统服务程序是一个比较大的范围 我们针对处理器的特点考虑到了后续的文件系统 C FS 图形系统 C GUI和TCP IP协议栈LWIP等程序模块的移植 目前待启动 用户任务顾名思义就是用户自己定义的任务了 可用于调用系统服务来操作系统 不同的任务可以为各种不同的内核函数提供的服务开进行沟通或处理 LPC2136芯片结构 LPC2136功能模块 LPC2136的管脚分布图 硬件原理 电源电路 LPC2136微控制器的内核和I O使用同一电源电压 只需要单一电源3 3V供电 开发平台的电源电路如图3 3所示 由USB接口输入5V直流电源 二极管D2用于限制电源导通方向 经过两个电容的滤波 然后通过SPX1117M 3 3将电源稳压至3 3V LPC2136具有独立的模拟电源引脚 为了降低噪声和出错几率 模拟电源与数字电源应该隔离 参考图3 3中L1和L2就是用于电源隔离的元件 将数字电源的高频噪声隔离 复位电路 由于ARM芯片的高速 低功耗 低工作电压导致其噪声容限低 对电源的纹波 瞬态响应性能 时钟源的稳定性 电源监控可靠性等诸多方面也提出来更高的要求 复位电路使用了带I2C存储器的电源监控芯片CAT1025JI 30 提高系统的可靠性 系统时钟电路 我们使用了外部11 0592MHz晶振 用11 0592MHz晶振的原因是使串口波特率更精确 同时能够支持LPC2136微控制器芯片内部的PLL功能及ISP功能 JTAG接口电路 采用ARM公司提出的标准20脚JTAG仿真调试接口 JTAG信号的定义及与LPC2136的连接 串口及MODEM接口电路 由于系统是3 3V系统 所以使用了SP3232E进行RS232电平转换 SP3232E是3V工作电源的RS232转换芯片 另外 LPC2136芯片的UART带有完全的调制解调器接口 所以要使用8路的RS232转换芯片SP3243ECA 如图3 7所示 JP6 JP9分别为UART0 UART1口线连接跳线 当把它们断开时 这些口线保留给用户作为其它功能使用 按键电路 按键电路通过跳线器来选择连接 LED显示电路 在显示方面 开发实验板采用了一片74HC595驱动一位静态共阳LED数码管 如图 其时钟 SCK 数据 SI 分别接到LPC2136的SPI接口的SCLK0 MOSI0 这样就可以发送数据到74HC595 片选 RCK 即74HC595输出触发端 与P0 29口连接 由P0 29控制74HC595数据锁存输出 而最高位输出 SQH 连接到LPC2136的SPI接口的MISO0 可用来读回数据 这样连接就可以进行SPI接口控制操作 并能把74HC595的移位输出读回来 由MISO0读回 这一部份电路可用JP10跳线器来选择跳开 另外 开发实验板还具有8个独立的发光二极管LED1 LED8 分别由P1 18 P1 25输出控制 输出1时对应的LED熄灭 输出0时对应的LED点亮 电路如图3 10所示 这一部份电路可用JP12跳开 蜂鸣器控制电路 蜂鸣器使用PNP三极管进行驱动控制 当P0 7控制电平输出0时 三极管导通 蜂鸣器蜂鸣 当P0 7控制电平输出1时 三极管截止 蜂鸣器停止蜂鸣 若把JP6断开 三极管截止 蜂鸣器停止蜂鸣 I2C电路 LPC2136具有支持400K高速模式的硬件I2C接口 所以设计了一片CAT1025JI 30与其连接 实现I2C的读写操作 如图3 12 总线上拉两个电阻放在JP7跳线之后 当不使用CAT1025JI 30存储器时 把JP7断开 两个上拉电阻就不会影响口线了 P0 2 P0 3 注意 P0 2和P0 3设置为输出时为开漏输出 若需要控制输出1 则必须连接上拉电阻 为了支持高速I2C总线操作 总线上拉电阻的大小为3K 这样总线变化时上升 下降的速度就变快了 若使用标准100KHz总线速度时 一般其总线上拉电阻为5 1K 或10K 以减小总线操作时的功耗 直流电压测量电路 LPC2136具有1个8路A D转换器 其参考电压由Vref引脚提供 参考电压的精度会影响A D转换结果 在板上可以通过JP5跳线选择参考电源 如果把JP5短接到 Vref 端时 参考电源由两个电阻 1K和3K 分压得到 如图3 13所示 如果把JP5短接到 UVref 端时 则用户可以在 Vref 引脚输入参考电源 实验板提供了1路直流电压测量电路 如图3 14所示 可调电阻10K用于调整A D的输入电压 可以在VIN测试点上用万能表检查当前电压值 串联电阻为I O口保护电阻 当A D输入电压调整到3 3V或0V时 这个电阻保证电路不产生短路故障 JP2可以断开这部份电路 DAC电路 D A转换器的参考电压与A D转换器的相同 如图3 15所示 通过JP3和JP4选择连接 LPC2136的Aout输出经过100欧姆的电阻连接到AD0 1 这样就可以直接使用AD0 1来检测Aout输出电压值 RTC电路 实验板提供RTC的功能 如图3 16所示 两个二极管主要是限制电源的导通方向 经过两个电容滤波将电池的输入的电源传到Vbat引脚 USB电路 考虑到升级到LPC214x就可以使用USB功能 与USB接口连接的I O口并没有通过跳线隔开 所以当需要使用P0 27 P0 26作为GPIO功能时 为了避免USB接口的影响 可以将两个18欧姆的电阻去掉 软件系统的基础构建与设计 一 启动代码概述 1 一般ARM芯片启动过程2 LPC2136启动文件组成3 LPC2136启动代码工作流程二 移植 C OS II到LPC2136 1 移植规划2 编写移植代码3 移植 C OS II体会三 C OS II实时性能测试分析 1 测试方案设计 1 测试目的和内容 2 测试思路和方案2 内核函数时间参数测试3 中断时间参数测试4 测试结果与性能分析 结论 小型 专用 便于携带 高可靠性的嵌入式系统 已广泛应用于各个领域 如工业过程控制 远程监控 智能仪器仪表 智能家电 数控系统 消费类产品 嵌入式处理器嵌入式实时操作系统 RTOS 具有实时好 低成本 小型 专用和高可靠性 克服传统的基于微控制器的控制系统功能不全和非实时的基于PC系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乐山辅警考试题库2025(有答案)
- 出血血栓止血课件
- 2025高级导游综合知识考试全真模拟试题及答案
- 企业安全教育培训交警课件
- 出租车加油站安全培训课件
- 出入量与体重的课件
- 2025合同违约的补救策略
- 卫华招聘笔试题库2025
- 2025年LED照明系统合同能源管理合同
- 冲床安全培训课件
- 2.1人的社会化 教案 2025-2026学年统编版道德与法治八年级上册
- 2025入团考试题库(完整版)附答案详解
- 新粒子生成与生长机制-洞察及研究
- 医疗机构环境表面清洁与消毒管理标准WST512-2025解读
- GB/T 34399-2025医药产品冷链物流温控设施设备验证性能确认技术规范
- 《酒店营销与数字化实务》课件5模块五课件
- 厦门闽南话趣味教学课件
- 2025年秋期新课标人教版六年级上册数学全册教案(核心素养教案)
- 人教版四年级上册数学各单元教材分析(1-4单元)
- 2025外科招聘面试题及答案
- 陕西燃气器具管理办法
评论
0/150
提交评论