2020年嵌入式课程设计大作业_第1页
2020年嵌入式课程设计大作业_第2页
2020年嵌入式课程设计大作业_第3页
2020年嵌入式课程设计大作业_第4页
2020年嵌入式课程设计大作业_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式课程设计大作业

文档仅供参考

南京工程学院

《ARM-Limix嵌入式系统开发基础》论文

题目:________________________________

系别:________________________________

专业:________________________________

班级:________________________________

姓名:________________________________

学号:________________________________

论文成绩:________________________________

年6月30日

文档仅供参考

基于Linux的ARM嵌入式系统设计

摘要

随着3C融合进程和中国传统产业结构升级的

加速,人们对设备越来越高的应用需求已无法满

足当前和未来高性能的应用与发展需求。同时,

激烈的市场竞争和技术竞争,要求产品的开发周

期越来越短,显然,嵌入式系统的软、硬件技术

和开发手段,正日益受到重视,成为各领域技术

创新的重要基础。

嵌入式系统是将先进的计算机技术、半导体技

术和电子技术和各个行业的具体应用相结合后

的产物,这一点就决定了它必然是一个技术密

集、资金密集、高度分散、不断创新的知识集成

系统。

当今信息时代,嵌入式系统的应用无处不在,

文档仅供参考

而ARM嵌入式系统应用市场份额约占75%o从

嵌入式系统的基本概念入手,分别从ARM的定

义、ARM微处理器、ARM开发工具及调试方

法来介绍ARM嵌入式系统基础知识。接着,讨

论了ARM嵌入式系统的实时性要求,介绍了当

前市场上的实时多任务操作系统(RTOS)。最后,

概括了ARM技术的应用领域及其产业化发展,

并预测ARM技术发展的前景。

关键词:嵌入式系统;ARM;微处理器;RTOS

文档仅供参考

1.引言

随着IT技术、网络技术和微电子技术的深入

发展,嵌入式系统的应用日益广泛。ARM是

当前世界公认的业界领先的32位嵌入式RISC

(精简指令计算机)微处理器。ARM技术日益

成熟和不断发展,正在逐步渗入到我们生活的各

个方面。

2.嵌入式系统

文档仅供参考

2.1嵌入式系统的概念

嵌入式系统的英文叫做EmbeddedSystem,

是一种包括硬件和软件的完整的计算机系统,但

又跟通用计算机系统不同。嵌入式系统的定义

是:“嵌入式系统是以应用为中心,以计算机技

术为基础,而且软硬件可剪裁,适用于应用系统

对功能、可靠性、成本、体积和功耗有严格要求

的专用计算机系统/嵌入式系统所用的计算机

是嵌入到被控对象中的专用微处理器,可是功能

比通用计算机专门化,具有通用计算机所不能具

备的针对某个方面特别设计的、合适的运算速

度、高可靠性和较低比较成本的专用计算机系

统。

2.2嵌入式系统的架构

嵌入式系统作为一类特殊的计算机系统,自

底向上包含有3个部分。

(1)硬件环境:是整个嵌入式操作系统和

应用程序运行的硬件平台,硬件平台包括嵌入式

文档仅供参考

处理器和外围设备。嵌入式处理器是嵌入式系统

的核心,是控制、辅助系统运行的硬件单元。

(2)嵌入式操作系统:完成嵌入式应用的任

务调度和控制等核心功能。具有内核较精简、可

配置、与高层应用紧密关联等特点。嵌入式操作

系统具有相对不变性。

(3)嵌入式应用程序:运行于操作系统之上,

利用操作系统提供的机制完成特定功能的嵌入

式应用。不同的系统需要设计不同的嵌入式应用

程序。

3.ARM嵌入式系统

3.1什么是ARM

ARM是AdvancedRISCMachines的缩写,

是微处理器行业的一家知名企业,该企业设计了

大量廉价、高性能、低功耗的RISC处理器、相

关技术及软件。

文档仅供参考

ARM技术有很好的性能和功效,其合作伙

伴包括世界许多顶级的半导体公司。当前,共有

30家半导体公司与ARM签订了硬件技术使用许

可协议,其中包括Intel、IBM、LG半导体、NEC、

SONY、PHILIPS和国家半导体这样的大公司。

能够说,ARM不但仅代表一个公司,代表了一

类微处理器,代表了一种技术,还代表了一种新

型的产业发展模式。

3.2ARM处理器核系列及应用

ARM公司开发了一系列ARM处理器核。

当前最新的系列已经是ARM11了。ARM6及更

早的系列已经罕见了,ARM7以后的核也不是都

获得广泛应用。当前应用最多的是ARM7系列、

ARM9系列、ARM9E系列、ARM10系列、

SecurCore系歹!J、Intel的StrongARM>XScale

系列。

ARM7系列:包括ARM7TDMI、

ARM7TDMI-S>带有高速缓存处理器宏单元的

ARM720T和扩充了lazelle的ARM7EJ-So该

系列广泛应用于多媒体和嵌入式设备,包括

文档仅供参考

Internet设备、网络和调制解调器设备以及移动

电话、PDA等无线设备。

ARM9系列:包括ARM9TDMI、

ARM920T和带有高速缓存处理器宏单元的

ARM940To该系列主要应用于引擎管理、仪器

仪表、安全系统、机顶盒、高端打印机、PDA、

网络电脑以及带有MP3音频和MPEG4视频多

媒体格式的智能电话中。

ARM9E系列:为综合处理器,包括

ARM926EJ-S>带有高速缓存处理宏单元的

ARM966E-S/ARM946E-So该系列强化了数字信

号处理功能,可应用于需要DSP与微控制器结

合使用的情况,将Thumb技术和DSP都扩展到

ARM指令集中,并具有EmbeddedICE-RT逻

辑,更好的适应了实时系统的开发需求。

ARM10系列:包括ARM1020E和

ARM1020E微处理器核。其核心在于使用向量

浮点(VFP)单元VFP10提供高性能的浮点解

决方案,从而极大地提高了处理器的整型和浮点

文档仅供参考

运算性能,为用户界面的2D和3D图形引擎应

用夯实基础,如视频游戏机和高性能打印机等。

SecurCore系列:包括SC100>SC110>SC200

和SC210处理器核。该系列主要针对新兴的安

全市场,以一种全新的安全处理器设计为智能卡

和其它安全IC开发提供独特的32位系统设计,

并具有特定的反伪造方法,从而有助于防止对硬

件与软件的盗版。

StrongARM系列:StrongARM处理器将

Intel处理器技术和ARM体系结构融为一体。致

力于为手提式通信和消费电子类设备提供理想

的解决方案。

Xscale系列:提供全性能、高性价比和低功

耗的解决方案,支持16位Thumb指令和DSP

指令。

3.3ARM微处理器的特点

采用RISC体系架构的ARM微处理器一般

有如下特点:

文档仅供参考

(1)体积小、低功耗、低成本、高性能;

(2)支持Thumb(16位)/ARM(32位)

双指令集,能很好的兼容8位〃6位器件;

(3)大量使用寄存器,指令执行速度更快;

(4)大多数数据操作都在寄存器中完成;

(5)寻址方式灵活简单,执行效率高;

(6)指令长度固定。

3.4ARM微处理器的指令结构

ARM微处理器在较新的体系结构中支持两

种指令集:ARM指令集和Thumb指令集。其

中,ARM指令为32位的长度,Thumb指令为

16位长度。Thumb指令集为ARM指令集的功

能子集,但与等价的ARM代码相比较,可节省

30%-40%以上的存储空间,同时具备32位代码

文档仅供参考

的所有优点。

3.5ARM嵌入式系统开发工具及调试方法

ARM处理器产品作为一种高性能、低功耗

的处理器产品,现在已经得到广泛的应用。ARM

开发工具也因此得到发展,除ARM公司自己推

出ARM集成开发工具外,还有一些公司也研发

ARM开发工具。当前市场上有ARMSDT、ARM

ADS、MULTI、HitoolsforARM、EmbestIDE

forARM五种集成开发环境。这些产品在国内有

相对较畅通的销售渠道,用户容易购买。前三种

由国外厂商出品,历史比较悠久,在全球范围内

应用较为广泛,后两种由国内厂商推出,具有很

高的性价比。ARM应用软件的开发工具根据

功能的不同,分别有编译软件、汇编软件、链接

软件、调试软件、嵌入式实时操作系统、函数库、

评估板、JTAG仿真器、在线仿真器等。用户

选用ARM处理器开发嵌入式系统时,选择合适

的开发工具能够加快开发进度,节省开发成本。

因此一套含有编辑软件、编译软件、汇编软件、

链接软件、调试软件、工程管理及函数库的集成

文档仅供参考

开发环境(IDE)一般来说是必不可少的,至于

嵌入式实时操作系统、评估板等其它开发工具则

能够根据应用软件规模和开发计划选用。当前常

见的调试方法有以下几种。

(1)指令集模拟器。

部分集成开发环境提供了指令集模拟器,

可方便用户在PC机上完成一部分简单的调试工

作,可是由于指令集模拟器与真实的硬件环境相

差很大,因此即使用户使用指令集模拟器调试经

过的程序也有可能无法在真实的硬件环境下运

行,用户最终必须在硬件平台上完成整个应用的

开发

(2)驻留监控软件。

驻留监控软件(ResidentMonitors)是一段

运行在目标板上的程序,集成开发环境中的调试

软件经过以太网口、并行端口、串行端口等通讯

端口与驻留监控软件进行交互,由调试软件发布

命令通知驻留监控软件控制程序的执行、读写存

文档仅供参考

储器、读写寄存器、设置断点等。驻留监控软

件是一种比较低廉有效的调试方式,不需要任何

其它的硬件调试和仿真设备。ARM公司的Angel

就是该类软件,大部分嵌入式实时操作系统也是

采用该类软件进行调试,不同的是在嵌入式实时

操作系统中,驻留监控软件是作为操作系统的一

个任务存在的。驻留监控软件的不便之处在于

它对硬件设备的要求比较高,一般在硬件稳定之

后才能进行应用软件的开发,同时它占用目标板

上的一部分资源,而且不能对程序的全速运行进

行完全仿真,因此对一些要求严格的情况不是很

适合。

(3)JTAG仿真器。

JTAG仿真器也称为JTAG调试器,是经过

ARM芯片的JTAG边界扫描口进行调试的设

备。JTAG仿真器比较便宜,连接比较方便,经

过现有的JTAG边界扫描口与ARMCPU核通

信,属于完全非插入式(即不使用片上资源)调

试,它无需目标存储器,不占用目标系统的任何

端口,而这些是驻留监控软件所必须的。另外,

文档仅供参考

由于JTAG调试的目标程序是在目标板上执行,

仿真更接近于目标硬件,因此,许多接口问题,

如高频操作限制、AC和DC参数不匹配,电线

长度的限制等被最小化了。使用集成开发环境配

合JTAG仿真器进行开发是当前采用最多的一

种调试方式。当前国际市场上较流行的两种

JTAG仿真器:EPI公司的JEENI和ARM公司

的Multi-ICEo

(4)在线仿真器。

在线仿真器使用仿真头完全取代目标板上

的CPU,能够完全仿真ARM芯片的行为,提供

更加深入的调试功能。但这类仿真器为了能够全

速仿真时钟速度高于100MHz的处理器,一般必

须采用极其复杂的设计和工艺,因而其价格比较

昂贵。在线仿真器一般见在ARM的硬件开发中,

在软件的开发中较少使用,其价格高昂也是在线

仿真器难以普及的因素。另外国际市场上较流

行的有两种JTAG仿真器:EPI公司的JEENI

和ARM公司的Multi-ICE。

文档仅供参考

4.ARM嵌入式系统的实时性要求

4.1嵌入式系统软件需要RTOS开发平台

通用计算机具有完善的操作系统和应用程

序接口(API),是计算机基本组成不可分离的一

部分,应用程序的开发以及完成后的软件都在

OS平台上面运行,但一般不是实时的。嵌入式

系统则不同,应用程序能够没有操作系统直接在

芯片上运行;可是为了合理地调度多任务、利用

系统资源、系统函数以及和专家库函数接口,用

户必须自行选配RTOS开发平台,这样才能保证

程序执行的实时性、可靠性,并减少开发时间,

保障软件质量。

4.2RTOS

RTOS是英文RealTimemulti-tasking

OperationSystem的缩写,即实时多任务操作系

统。它是嵌入式应用软件的基础和开发平台。当

前在中国大多数嵌入式软件开发还是基于处理

器直接编写,没有采用商品化的RTOS,不能将

系统软件和应用软件分开处理。RTOS最关键的

文档仅供参考

部分是实时多任务内核,它的基本功能包括任务

管理、定时器管理、存储器管理、资源管理、事

件管理、系统管理、消息管理、队列管理、旗语

管理等,这些管理功能是经过内核服务函数形式

交给用户调用的,也就是RTOS的APLRTOS

的引入,对嵌入式软件的标准化和加速知识创新

是一个里程碑。

5ARM的应用

5.1ARM技术的应用领域

现在,嵌入式技术无处不在,ARM几乎

成为嵌入式技术的代名词。作为一种16/32位高

性能、低成本、低功耗的嵌入式RISC微处理器,

ARM微处理器当前已经成为应用广泛的嵌入式

微处理器。ARM微处理器及技术的应用几乎已

经深入到各个领域。

(1)工业控制领域:作为32位的RISC架构,

基于ARM核的微控制器芯片不但占据了高端微

控制器市场的大部分市场份额,同时也逐渐向低

端微控制器应用领域扩展,ARM控制器的低功

文档仅供参考

耗、高性价比,向传统的8位/16位微控制器提

出了挑战。

(2)无线通讯领域:当前已有超过85%的

无线通讯设备采用了ARM技术,ARM以其高性能

和低成本,在该领域的地位日益巩固

(3)网络应用:随着宽带技术的推广,采用

ARM技术的ADSL芯片正逐步获得竞争优势。

另外,ARM在语音及视频处理上进行了优化,

并获得广泛支持,也对DSP的应用领域提出了

挑战。

(4)消费类电子产品:ARM技术在当前流

行的数字音频播放器、数字机顶盒和游戏机中得

到广泛应用。

(5)成像和安全产品:现在流行的数码相机

和打印机中绝大部分采用ARM技术。手机中的

32位SIM智能卡也采用了ARM技术。

6.具体实例:路灯监控通信终端

文档仅供参考

本系统设计是一种基于ARM7处理器以及

利用GPRS技术的路灯监控通信系统的终端,实

现远程无线的各路现场数据的传输。结合上位机

软件,将各路数据实时传递到集中监控中心,以

实现对路灯运行情况的统一监控和分布式管理。

6.1主要芯片简介

6.1.1LPC2106芯片⑵

LPC2106处理器是菲利普公司的

ARM7TDMI-S处理器,该芯片带有一个支持实

时仿真和跟踪的ARM7TDMI-SCPU,并嵌入了

128KB的高速Flash存储器。具有ISP和IAP功

能,128位的储存器接口和特别的允许在最高时

钟周期执行32位代码的加速体系,在代码长度

起关键作用的

程序中,可选的16位的Thumb模式在最

少的代价下能够减少了超过30%的代码,CPU操

作频率可达60MHz;LPC2106体积很小,它有

文档仅供参考

两个低功耗模式:空闲和掉电,使系统保证在低

功耗使用,非常省电,在路灯监控系统中,它是

非常理想的选择。它内部RAM达到64K大小,

提供I2C串行和SPI串行接口等接口,使得

LPC2106在GPRS系统中能够进行各种扩充;

它的两个定时器,分别具有4路捕获/比较通

道,适合路灯控制多路数据处理,看门狗定时器

确保了系统的安全,双电源技术保证了系统的可

靠性。

6.1.2P87LPC760芯片[3]

P87LPC760是14脚封装的单片机,适

合于许多要求高集成度低成本的场合,能够满足

多方面的性能要求。它是菲利普公司小型封装系

列中的一员,P87LPC760提供高速和低速的晶

振和RC振荡方式,可编程选择具有较宽的操

作电压范围,可编程I/O口线输出模式选择,可

选择施密特触发输入LED驱动,输出有内部

看门狗定时器,P87LPC760采用加速80c51处理

器结构,指令执行速度是标准80C51MCU的

两倍特性。在路灯监控通信终端中作为从处理

文档仅供参考

器。

6.2路灯监控通信终端的硬件方案

6.2.1GPRS通信终端硬件结构

GPRS路灯监控系统终端安装在路灯的各

个数据采集点,经过RS232口和RS485口与

GPRS透明数据传输终端连接,数据经过协议封

装后发送到中国移动的GPRS数据网络,经过

GPRS数据网络将数据传送至路灯监控中心,实

现路灯终端和路灯监控中心系统的实时在线连

接。GPRS通信终端硬件结构采用主从CPU的

设计方法,这样提高系统的可靠性和运行速度,

主处理器采用菲利普公司的ARM7TDMI-S处

理器LPC2106,主要负责协议的封装,与GPRS

通信的实现;从处理器采用菲利普公司的

P87LPC760,主要负责对ARM7芯片和GPRS

模块的控制。

6.2.2监控通信硬件的实现

文档仅供参考

在路灯监控通信终端中,主处理器是基于

AMR7核心的LPC2106处理器,它是整个系统的

硬件核心,连接结构图如图3所示,主要功能是

实现GPRS下的通信协议封装及数据传输,同时

采用适用于GPRS的AT指令,使用TCP/IP

协议将数据打成IP包,经GPRS接口接入无线

GPRS网络,并应用Winsock控件来实现接收数

据及数据交换。2.3监控通信控制的实现

从处理器使用P87LPC760,主要功能是对

LPC2106处理器与GPRS模块的数据传输通信

控制;2.4监控通信接口的实现由于监

控通信终端是3.3V的系统,而且核心处理器

LPC2106的UART1带有完全的调制解调器接

口,使用TTL电平,因此使用8路的RS232转

换芯片SP3238进行RS232电平转换及串口通

信,SP3238芯片是+3.0V和+5.5V的RS232转

换器。具有低功耗、高数据速率、增强型ESD

保护等特性。MAX3485是RS485电平转换,这

些口线可保留给用户作为其它功能使用。

6.2.5GPRS模块的实现

文档仅供参考

中兴ZTE815主要是用来实现GPRS模

块,使用SIM卡进行实现。SIM卡的1和4脚

接电源,2脚接地,3脚是复位,与ZTE815的

41脚相连;5脚是时钟,与ZTE815的45脚相

连;6脚是通信读写I/O引脚,与ZTE815的43

脚相连。

6.3GPRS通信的软件方案

软件的设计是本监控通信终端的核心,其中

通信模块设计是整个终端软件设计主要部分,软

件设计采用ARM公司的ADS集成开发环境,

使用C语言进行编程,主要是对LPC2106处理

器进行控制,实现协议的封装及与GPRS系统的

通信,从初始化串行通讯模块设计到与带SIM

卡的GPRS终端的通信流程设计,需要兼顾软件

的各个功能模块,包括参数设置、自动接收数据、

请求数据以及信号判断等。

6.3.1通信命令处理

通信数据处理主要是针对需要发送的数据和接

文档仅供参考

收到的信息进行相关处理。经过在ARM7模块

建立AT指令实现数据的收发,并实现对AT指

令的分析和控制。本系统用到的AT指令是:建

立TCP/socket连接命令〃AT+ISTCP:〃;发送

数据命令〃AT+ISSND%:〃;查询数据命令

"AT+ISRCV:〃;查询数据链路命令〃AT+ISST:

〃;模块退出传输模式命令〃AT+IMCM〃;查询

模块信号值命令〃AT+CSQ〃;模块返回数据传输

模式命令〃ATO〃;DTU返回控制命令模式命令

〃AT+I〃;关闭SOCKET命令〃AT+ISCLS:〃。

6.3.2系统主要函数介绍

通信控制是比较复杂的过程,本系统主要

的函数有:

(1)接收的字符串与目标pSrc字符串对比函

数unsignedcharRecive_GpCmp(const

unsignedchar*pSrc,unsignedcharunNum),

用于对接收指令的检测;

(2)提取信号强度函数unsignedchar

文档仅供参考

AchieveJMFSrong(void),信号强度为0~30;

(3)对比连接返回值函数unsignedchar

Achieve_Socket(void);

(4)建立SOCKET连接函数void

Connect_Socket(unsignedchar*plp),该函数负

责发送IP地址及端口号,等待时间是一分钟,

在数据返回值中,1/000表明连接成功,字柄号

为000,I/ERROR表明连接超时或不成功;

(5)查询信号强度函数void

Check_IMFSrong(void),等于1为查询信号强度

状态,等于0为空闲状态,在查信号强度,最长

时间3.2秒,时间间隔为6分钟,并在主循环调

用该函数;

(6)查询在线状态,秒间隔调用函数void

Check_Gprs(void),设置在线查询时间间隔为3

分钟,两次判断掉线就确认掉线了。

文档仅供参考

6.3.3数据收发函数的实现

由于篇幅的限制,不能对各函数进行详细的

描述,下面主要对数据收发函数进行实现。

6.3.4接收数据函数的实现

void

Recive_Data_Socket(void)

(

unsignedcharbuf[20],i;

Check_IMFSrong();

if(ucGPRSMode&&ucGprsLink)

(

for(i=0;i<CMD_

NUM[2];1++)<p>

buf[i]=pGPRSC

MD[2][i];

buf[i++]=0x0d;

ucGPRSMode=

“1”;〃接收数据

文档仅供参考

UARTl_SendStr(buf,i);

6.3.5发送数据函数的实现

VoidSend_Data_Socket()

(

unsignedchari,j,tmp,buf[20]

unsignedshortusYn,usTmp,usLen;

if(Len==0)

return

for(i=0;i<>

buf[i]=pGPR

SCMD[l][i];

)

i-;

buf[i++]=

文档仅供参考

for(j=0;j<3;j+

+)

buf[i++]=szG

prsHandleLj];//数据句柄号

buf[i++]=

usTmp=1000

0;

usYn=n0n;

usLen=nLenn;

for(j=0;j<5;j++)〃发

送长度

(

tmp=nusLen/u

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论