基于ARM的嵌入式系统设计课件.ppt

上传人(卖家):三亚风情 文档编号:2306933 上传时间:2022-04-01 格式:PPT 页数:39 大小:1.42MB
下载 相关 举报
基于ARM的嵌入式系统设计课件.ppt_第1页
第1页 / 共39页
基于ARM的嵌入式系统设计课件.ppt_第2页
第2页 / 共39页
基于ARM的嵌入式系统设计课件.ppt_第3页
第3页 / 共39页
基于ARM的嵌入式系统设计课件.ppt_第4页
第4页 / 共39页
基于ARM的嵌入式系统设计课件.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、基于ARM的嵌入式系统设计专业:电子信息与科学技术班级:电科2班学号:080531060204学生姓名:崔欢指导教师:李广伟摘 要嵌入式系统以其特殊,体积小,便于携带,高可靠性,已经在广泛领域得到应用,如军事国防,消费电子,通信设备,工业控制。嵌入式处理器嵌入式实时操作系统(RTOS),具有实时性,低成本,小型,专用和高可靠性,克服传统的基于微控制器的控制系统功能不全和非实时的基于PC系统的缺点。随着嵌入式系统的硬件和软件技术的飞速发展,其应用将更加广泛,嵌入式系统的研究将有非常广泛的前景。这个项目的目的是研究对学校教学的嵌入式系统平台,这提高对嵌入式系统的理解是非常重要的。本篇以嵌入式系统设

2、计的原则和实际应用为核心,以理论和技术方法为主题,开展了一系列研究。嵌入式系统的定义和特点 嵌入式系统是指以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。这是从技术的角度来定义的,嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等4个部分组成,用于实现对其它设备的控制、监视或管理等功能。“嵌入式”反映了这些系统通常是更大系统中的一个完整部分,嵌入式的系统中可以共存多个嵌入式系统。 与通用的嵌入式系统相比,其主要特征是与通用的嵌入式系统相比,其主要特征是:1.嵌入式系统通常是面向特定应用的

3、。嵌入式CPU与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。 2.嵌入式系统的硬件和软件都必须高效率的设计,消除冗余度,在同样的硅片面积,努力实现更高的性能,所以在处理器的具体应用选择上才更具有竞争力。3.为了提高执行速度和系统可靠性,嵌入式系统中的系统程序(包括操作系统)和应用程序是浑然一体的,这些程序被编译连接成一个可以执行的二进制映像文件,然后被固化在系统存储空间中。4.嵌入式系统本身不具

4、有引导发展的能力,即使设计完成后,大多用户通常不能自行修改程序的功能,使嵌入式系统开发的系统和实际的操作系统是不一样的,需要交叉编译系统和适当的调试系统。5.高可靠性和高实时性。也就是说,在恶劣的环境或突然断电的情况下,系统仍然会工作;并且对于一个特殊的信号,消息快速响应中断。本文主要研究的问题背景和内容 本文主要研究的问题背景: 可以在嵌入式系统的巨大需求描述中发现,特别是在未来10年嵌入式的需求达到了一个高峰。从国内 IT行业的发展来看,国内设备开发有从众心理,为了提高可靠性,而去使用别人早已用过比较成熟的产品,但这些产品往往价格昂贵,并且核心技术长期掌握在他人控制的手中,不利于自身的发展

5、和成长。 由于嵌入式系统不同于以往PC市场,硬件和软件已经不可能出像一家垄断的情况。实际上对硬件及软件的选择来说,主要因素是由应用决定的,国内应该抓住这个机会加入到这个竞争行列中来。 ARM微处理器因其卓越的低功耗、高性能在32位嵌入式应用中已位居世界第一,是高性能、低功耗嵌入式处理器的代名词。为了顺应当今世界技术革新的潮流,了解、学习和掌握嵌入式技术,就必然要学习和掌握以ARM微处理器为核心的嵌入式开发环境和开发流程,这对于研究和开发高性能微处理器、DSP以及开发基于SOC芯片设计及应用系统是非常必要的。作为电子信息专业的本科、研究生很有必要了解和掌握32位嵌入式应用的开发技术。通过对嵌入式

6、的学习使学生具有较强的综合素质,成为具有良好的实际操作能力设计能力符合社会需求的开拓性电子应用人才。本文主要内容概述和任务安排本文是在上述背景下的设计和实施的,对整体发展过程中的嵌入式系统功能进行可行性研究,并对平台的选择和技术上的困难进行了讨论,不仅涉及一般的嵌入式系统的实施方法,而且对项目本身的细节进行详细说明。与通用PC系统相比,嵌入式系统的硬件之间能更紧密的合作,使每个设计都有其特定的硬件平台。此文以笔者设计实验板为例,介绍嵌入式系统开发需要使用的基本软硬件模块:LED、IIC、SPI/SSP、VIC、A/D、WDT、UART、GPl0、RTC和低功耗等。依据嵌入式系统设计的工作量,系

7、统开发的重点在软件,操作系统内核移植往往是最关键的也是最困难的设计部分。因此,我们简要介绍了LPC2136基于ARM内核的芯片启动程序,着重介绍C/OS-II的移植过程这个部分。论文通过比较研究,得出结论,总结了嵌入式系统设计和实施的必要问题,困难和他们的解决方案,以及在实际应用中,对嵌入式系统进行构建产生影响的诸多因素。嵌入式系统总体设计 传统的嵌入式系统的开发应用是基于瀑布式流程。操作模式很简单,分工任务协调,人员配备和管理物质材料的分布都比较简单。如图2-1所示,所有的发展是由流水线进行。 这方面的开发使用一个单独的软件开发和硬件的发展模式,虽然各部分可以独立进行,但不一定是最好的系统性

8、能。每一部分的变化和缺陷,很容易导致系统集成出现问题,这些问题将不仅难以找到,更重要的是它们往往会涉及到的软件或硬件配置变化和结构变化。显然,这是灾难性的。 为了避免这些问题,在20世纪90年代,国外一些学者提出了一个新的发展方法 - 硬件和软件协同设计的方法。首先,应用程序是独立于任何硬件和软件功能规范的方法来描述系统,其作用使硬件/软件的统一功能和易于合成的划分;然后,从系统的功能要求,并在开始限制硬件/软件,分配系统的硬件/软件模块,但结果需要性能评估师对命令参数评估。如果评估不符合结构的要求,说明方案的选择分工是不合理的,需要进行重新划分,重复直到你得到一个更令人满意的硬件/软件至今。

9、图2-2是该方法的框图。 这种方法的特点是通过联合设计,联合测试和协同验证,充分考虑硬件和软件之间的关系,并给予参与核查的每个级别,及早的发现和解决问题。显然,对于具体的应用程序,这种方法很容易获得满足综合性能指标的最佳解决方案。因此,我们的项目也是按照这种方法设计。开发平台总体规划硬件规划:我们利用的ARM核心处理器设计了一个通用的测试平台,您可以添加各种外设和接口,并且它们都是高度可伸缩的。实验板采用“核心板和多种可选适配器”的形式组成了LPC2136开发平台。下面就是基于LPC2136的核心板的组成框图,从此图中就可以看到其各部分的布局结构。 核心板的资源如下:CPU:基于ARM7TDM

10、I内核的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转换;实时时钟

11、控制;WDT及低功耗控制;多种可选的适配器可根据用户自己所需来外设接口:如果面板功能部件CPU之间的跳线断开,用户可以用连接配置适配器的方法进行外部扩展设计。如以太网接口,SD卡,调制解调器,GPRS,液晶显示器, USB设备和其他设备。 软件规划: 在芯片通过了启动程序的引导后,直接进入C语言的MAIN函数入口,通过调用移植好的实时多任务操作系统C/OS-II函数包就可以完成多任务之间的调度和同步,并为设备驱动和系统服务程序提供信号量、邮箱、消息队列的服务。因为内核需要实现时间延时和确认超时,所以还需要时钟节拍中断服务程序为其服务。当然C/OS-II只是一个内核,操作系统的其他部分都没有提供

12、,所以我们需要自行设计设备驱动程序和部分系统服务程序。设备驱动是连接底层硬件和上层简洁规范的接口程序的纽带。对下层它可以直接操作硬件,也可能通过中断处理程序与硬件通信,对上层接受上层的请求并执行。一般来说应用程序如果要用到设备驱动程序,就需要用I/O管理来达到要求。我们计划在开发平台上完成RTC驱动、串口UART驱动、按键及LED驱动、GPIO驱动,形成一套完整的应用程序开发环境。考虑到时间和人力问题,剩下的部分设备用户可以自行设计。系统服务程序是一个比较大的范围。我们针对处理器的特点考虑到了后续的文件系统C/FS,图形系统C/GUI和TCP/IP协议栈LWIP等程序模块的移植,目前待启动。用

13、户任务顾名思义就是用户自己定义的任务了,可用于调用系统服务来操作系统,不同的任务可以为各种不同的内核函数提供的服务开进行沟通或处理。LPC2136芯片结构 LPC2136功能模块 LPC2136的管脚分布图硬件原理电源电路 LPC2136微控制器的内核和I/O使用同一电源电压,只需要单一电源3.3V供电。开发平台的电源电路如图3-3所示,由USB接口输入5V直流电源,二极管D2用于限制电源导通方向,经过两个电容的滤波,然后通过SPX1117M-3.3将电源稳压至3.3V。LPC2136具有独立的模拟电源引脚,为了降低噪声和出错几率,模拟电源与数字电源应该隔离,参考图3-3中L1和L2就是用于电

14、源隔离的元件(将数字电源的高频噪声隔离)。 复位电路由于ARM芯片的高速、低功耗、低工作电压导致其噪声容限低,对电源的纹波、瞬态响应性能、时钟源的稳定性、电源监控可靠性等诸多方面也提出来更高的要求。复位电路使用了带I2C存储器的电源监控芯片CAT1025JI-30,提高系统的可靠性。 系统时钟电路 我们使用了外部11.0592MHz晶振,用11.0592MHz晶振的原因是使串口波特率更精确,同时能够支持LPC2136微控制器芯片内部的PLL功能及ISP功能。 JTAG接口电路采用ARM公司提出的标准20脚JTAG仿真调试接口,JTAG信号的定义及与LPC2136的连接。 串口及MODEM接口电

15、路 由于系统是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,这样就

16、可以发送数据到74HC595;片选(RCK,即74HC595输出触发端)与P0.29口连接,由P0.29控制74HC595数据锁存输出;而最高位输出(SQH)连接到LPC2136的SPI接口的MISO0,可用来读回数据。这样连接就可以进行SPI接口控制操作,并能把74HC595的移位输出读回来(由MISO0读回)。这一部份电路可用JP10跳线器来选择跳开。 另外,开发实验板还具有8个独立的发光二极管LED1LED8,分别由P1.18P1.25输出控制,输出1时对应的LED熄灭,输出0时对应的LED点亮,电路如图3-10所示。这一部份电路可用JP12跳开。 蜂鸣器控制电路蜂鸣器使用PNP三极管进

17、行驱动控制,当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总线操作,总线上拉电阻的大小为3

18、K,这样总线变化时上升/下降的速度就变快了。若使用标准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测试点上用万能

19、表检查当前电压值。串联电阻为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口并没有

20、通过跳线隔开,所以当需要使用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.测试结果与性能分析结论小型,专用,便于携带,高可靠性的嵌入式系统,已广泛应用于各个领域,如工业过程控制,

21、远程监控,智能仪器仪表,智能家电,数控系统,消费类产品。嵌入式处理器嵌入式实时操作系统(RTOS)具有实时好,低成本,小型,专用和高可靠性,克服传统的基于微控制器的控制系统功能不全和非实时的基于PC系统的缺点。随着嵌入式系统的硬件和软件技术迅速发展 ,在行业应用的快速发展将更加广泛,嵌入式系统的研究将有一个非常广泛的应用前景。本文介绍了嵌入式系统设计的基本方法,与笔者在实验室的具体实践相结合,首先介绍了嵌入式系统的基本结构,侧重于为嵌入式系统设计的硬件平台,嵌入式实时操作系统C/OS的移植- II和C/OS - II实时性能分析。本课题的研究工作基本达到了预期的效果。总的来说,本课题的研究工作

22、已完成了以下方面的内容: 1.全面和系统的对发展过程中的嵌入式系统和分类进行概述,以及在各个领域的应用和嵌入式系统的开发方向;2.基于嵌入式系统为设计原则的嵌入式开发平台为总体方案设计,从硬件和软件两个方面阐述设计思想和方法,以及其可行性证明;3.完成LPC2136 ARM处理器内核是基于嵌入式系统的硬件电路设计,该系统有丰富的编程资源和强大的扩展功能,并为未来的系统升级和扩展提供更多的方便。4.将嵌入式实时操作系统移植C/OS-II到ARM7TDMI内核的嵌入式处理器LPC2136并且能够稳定的运行。5.对C/OS-II内核实时性能进行了深入的分析,通过实际测试得出了在特定条件下C/OS-II的实时响应参数。在嵌入式系统中涉及到了很多知识,所以有很多事情我会继续研究。我们有一个基本的嵌入式系统开发平台,但是,这仅仅是一个研究和开发嵌入式的开始。当然,因为由于我的能力有限,开发强度和时间的限制,要创建一个真正全面的嵌入式系统,除了本文研究的问题,还有大量的工作需要我们研究和开发,在今后的工作,以进一步改善。 谢谢各位评委老师Thank you!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(基于ARM的嵌入式系统设计课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|