毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc

上传人:李主任 文档编号:3282614 上传时间:2019-08-07 格式:DOC 页数:58 大小:1.21MB
返回 下载 相关 举报
毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc_第1页
第1页 / 共58页
毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc_第2页
第2页 / 共58页
毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc_第3页
第3页 / 共58页
毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc_第4页
第4页 / 共58页
毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于ARM的工业监控平台研究--直流电机的转速监控系统.doc(58页珍藏版)》请在三一文库上搜索。

1、分 类 号 密 级学校代码 1 学 号0408030417题目:基于ARM的工业监控平台研究 直流电机的转速监控系统作者:摘 要目前,基于ARM技术的嵌入式系统几乎已经深入应用到各个领域,是当今32位嵌入式系统应用的主流。ARM在工业控制领域的应用也受到越来越多的关注。本课题设计了一个基于ARM的嵌入式直流电机转速监控系统。该系统使用PHILIPS公司的以ARM7TDMI-S为内核的LPC2124芯片作为控制核心,配置相应的外设及接口电路,运用性能价格比较好的集成电机控制芯片L298作为直流电动机的PWM驱动器件;采用光电编码器实现对转速信号的采集;采用LPC2124内部集成定时器的捕获功能对

2、编码器生成的脉冲序列信号进行测量;采用74LS74作为鉴相器而识别电动机实时转向;采用单闭环PI控制调节转速;采用LCD1602系列显示屏即时显示电动机的转动信息;采用44矩阵键盘对转速及转向进行设置和控制。系统软件主要使用C语言编写,遵循模块化设计的原则,编写了转速的测量、转速的PWM驱动、转速的PI调节、转速的显示、键盘输入等程序模块,程序代码具有良好的易维护性和可移植性。最后使用Proteus ISIS仿真工具对系统仿真,并在仿真平台上对系统性能进行测试与分析。本系统的设计精度可以满足一般工业控制的要求,能够应用到实际的生产生活中,满足现代化生产的需要。而且能够防止用户的误操作,增强了系

3、统运行的安全性和稳定性,具有一定的实用性和较高的社会推广价值。关键词:ARM;嵌入式系统;直流电机转速控制;LPC2124ABSTRACTAt present, the embedded system that based on the ARM technology almost has been used on each field, and this technology is the mainstream of current 32 bits embedded system. Applications of ARM in the field of industrial control h

4、ave also been attracted more and more attention.This article designed an embedded system of DC motor speed control which based on ARM. This system take the ARM7TDMI-S core to the PHILIPSLPC2124 chip as the control core, configured corresponding outside to suppose and the interface electric circuit,

5、uses the integrated motor controller L298 as the PWM driven device which with high performance price ratio; uses the photoelectric encoder to achieve the speed signal acquisition; uses the capture of integrated timer internal LPC2124 to measure the pulse sequences which generated by encoder; uses th

6、e 74LS74 as a phase detector to real-time identify the direction; uses the LCD1602 screen to real-time display the information of the motor rotation; uses the 4 4 matrix keyboard to set and control the speed and direction. The software of this system written in C programming language mainly, follow

7、the principles of modular design, including the speed measurement, speed PWM drive, speed PI-conditioning, speed display, keyboard input, and other procedures module. The code has easy maintenance and great probability. Finally, uses the Proteus ISIS simulation tool to implement the emulation of thi

8、s system, then test and analysis the systems performance on the simulation platform.The accuracy of the system can satisfy the general demand of general industrial control, and can be applied to the actual production and living, satisfy the requirement of modern production, prevent the wrong operati

9、on of users, improve the safety and stability of the system, have the certain usability and a higher social promoting value.Key Words: ARM; embedded systems; speed control for DC motor; LPC2124目 录1 绪论11.1 课题引入11.2 本课题研究背景和意义21.3 本课题的主要任务及工作21.4 嵌入式系统概述21.4.1 嵌入系统的定义、特点31.4.2 嵌入式系统的发展状况31.4.3 嵌入系统的发展

10、趋势42 系统的总体方案设计52.1 系统分析52.1.1 系统功能分析52.1.2 系统原理结构52.1.3 技术方案可行性研究62.2 系统硬件体系结构设计72.2.1 嵌入式系统的硬件72.2.2 系统硬件体系结构82.2.3 核心控制电路82.2.4 电动机接口电路82.2.5 用户接口电路82.3 系统软件体系结构设计92.3.1 嵌入式系统的软件92.3.2 系统软件体系结构设计92.3.3 后台程序组成92.3.4 前台程序组成102.4 本章小结103 系统硬件的详细设计113.1 微控制器电路113.1.1 ARM微处理器介绍113.1.2 ARM微处理器的工作模式和异常处理

11、123.1.3 ARM寄存器143.1.4 ARM微处理器的选型153.2 PWM电动机驱动电路163.2.1 PWM基本原理163.2.2 PWM调速控制系统介绍173.2.3 PWM控制电路183.2.4 PWM驱动电路203.3 转速检测电路223.3.1 光电编码器介绍及选择223.3.2 转速检测电路233.3.3 转向识别电路233.4 LCD显示电路253.5 键盘电路263.6 本章小结264 系统软件的详细设计274.1 ADS1.2集成开发环境简介274.2 系统启动流程284.3 主程序模块284.4 转速检测模块294.4.1 转速测量原理294.4.2 转速检测程序3

12、04.5 PWM驱动模块314.5.1 PWM方案选择314.5.2 PWM的寄存器介绍324.5.3 PWM初始化子程序334.5.4 PWM脉宽控制子程序334.6 液晶显示模块364.6.1 1602显示原理364.6.2 1602液晶显示流程384.7 键盘扫描模块394.8 本章小结395 系统的仿真415.1 Proteus ISIS介绍415.1.1 Proteus ISIS的特点415.1.2 Proteus仿真注意事项415.2 系统电路仿真图设计425.3 各子系统仿真设计435.3.1 转速检测电路仿真435.3.2 电机驱动电路仿真445.3.3 键盘输入仿真445.4

13、 系统仿真的运行流程455.5 仿真性能测试及分析475.5.1 性能测试475.5.2 性能分析475.6 本章小结48结束语49致谢50参考文献51- III -1 绪 论1.1 课题引入ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1990年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。该公司的产品“ARM嵌入式内核”已被全球各大芯片厂商采用,基于ARM的开发技术也席卷了全球嵌入式市场,已成为嵌入式系统的主流技术之一。基于ARM技术的微处理器应用约占据了32位RISC微处理器75以

14、上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面1。目前,全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。到目前为止,ARM以高性能、低价位、低功耗、小体积等特色广泛地进入各个领域:1) 工业控制领域由于ARM在网络通信功能的增加及嵌入式系统的支持,使得许多控制系统的控制由X86系列向ARM系列发展。2) 通信产品一般的ARM SoC都支持嵌入式操作系统。ARM在通信产品上已经有了完整的解决方案,如网络电话(VoIP)、ADSL Router和IP R

15、outer等。3) 无线通讯领域目前已有超过85%的无线通讯设备采用了ARM技术,ARM以其高性能和低成本,在该领域的地位日益巩固。4) 安全控制系统网络摄影机、4/16压缩处理机、数码录放机等安全自动化,也已逐渐采用ARM的核心技术。5) 消费类电子产品ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用。所以掌握和应用该系列单片机,对于学习高性能单片机系统设计,嵌入式系统,生产过程参数处理,工业自动化处理具有重要意义。1.2 本课题研究背景和意义在工业自动控制系统和各种智能产品中常常会用用

16、电动机进行驱动、传动和控制,而现代智能控制系统中,对电机的控制要求越来越精确和迅速,对环境的适应要求越来越高。随着科技的发展,通过对电机的改造,出现了一些针对各种应用要求的电机,如伺服电机、步进电机、开关磁阻电机等非传统电机。但是在一些对位置控制要求不高的电机控制系统如传动控制系统中,传统电机如直流电机乃有很大的优势,而要对其进行精确而又迅速的控制,就需要复杂的控制系统。随着微电子和计算机的发展,数字控制系统应用越来越广泛,数字控制系统有控制精确,硬件实现简单,受环境影响小,功能复杂,系统修改简单,有很好的人机交换界面等特点2。自动化控制系统已在各行各业得到广泛的应用和发展,其中自动调速系统的

17、应用则起着尤为重要的作用。虽然直流电机不如交流电机那样结构简单、价格便宜、制造方便、容易维护,但是它具有良好的起、制动性能,宜于在广泛的范围内平滑调速,所以直流调速系统至今仍是自动调速系统中的主要形式。在我国许多工业部门,如轧钢、矿山采掘、海洋钻探、金属加工、纺织、造纸以及高层建筑等需要高性能可控电力拖动的场合,仍然广泛采用直流调速系统3。而且,直流调速系统在理论上和实践上都比较成熟,从控制技术的角度来看,它又是交流调速系统的基础。近年来,微型计算机技术发展速度飞快,以计算机为主导的信息技术作为一崭新的生产力,正向社会的各个领域渗透,直流调速系统向数字化方向发展成为一大趋势。1.3 本课题的主

18、要任务及工作通过设计一个基于ARM的嵌入式直流电机转速监控系统,掌握ARM7TDMI内核的工作原理及ARM在工业控制领域的应用流程,熟悉ARM芯片上的各种硬件资源及其所具备的各种功能,并能将其运用到实际的开发项目中,为以后进一步开发各种基于ARM的嵌入式系统打下良好的基础。要求所设计的转速监控系统具有较高的精度和可用性,能够达到一般的工业控制标准,满足实际生产的要求。1.4 嵌入式系统概述嵌入式系统是一个很广义的概念,总体上嵌入式系统可以划分成硬件和软件两部分。硬件一般由高性能的微处理器和外围接口电路组成,软件一般由实时操系统和其上运行的应用软件构成,软件和硬件之间由中间层连接。1.4.1 嵌

19、入系统的定义、特点1) 嵌入式系统定义根据IEEE(Institute of Electrical and Electronics Engineers)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从应用上加以定义的。嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。目前国内普遍认同的定义是:以应用为中心、以计算机技术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本

20、、体积、功耗等严格要求的专用计算机系统4。由于嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,很难给它下一个准确的定义。因此目前常说的嵌入式系统概念的重心放在“系统”上,指能够运行操作系统的软硬件综合体。总体上嵌入式系统可以划分成硬件和软件两部分,硬件一般由高性能的微处理器和外围接口电路组成,软件一般由实时操作系统和其上运行的应用软件构成,软件和硬件之间由所谓的中间(BSP层,板级支持包)层连接。2) 嵌入式系统具有以下特点: 嵌入式系统是面向用户、面向产品、面向应用的。 嵌入式系统是将先进的计算机技术、半导体技术和电子技术以及各个行业的具

21、体应用相结合后的产物。 系统内核小(uC/OS II内核源码只有5500行)。 专用性强。 系统精简。 交叉平台开发(cross-platform development)。 嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。 嵌入式系统开发需要专门的开发工具和环境。1.4.2 嵌入式系统的发展状况嵌入式系统最初的应用是基于单片机的。20世纪70年代单片机的出现,使得汽车、家电、工业机器人、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能、更易使用、速度更快、价格更低。这些装置已经初步具备了嵌入式的应用特点,但是这时的应用只是8位的芯片执行一些单线程的程序,还谈不上“

22、系统”的概念。20世纪80年代早期开始,嵌入式系统的程序员开始用商业级的“操作系统”编写嵌入式应用软件,这使得开发人员可以进一步缩短开发周期,降低开发成本并提高开发效率。20世纪90年代以后,随着对实时性要求的提高,软件规模的不断上升,实时内核的实时多任务操作系统(RTOS),作为一种软件平台逐步成为目前国际嵌入式系统的主流。这时有更多的公司开始大力发展自己的嵌入式操作系统。如Plam OS、Windows CE、嵌入式Linux、Lynx、Nucleus以及国内的Hopen、DeltaOS等嵌入式操作系统。目前,由于集成电路技术的迅速发展,半导体工艺己使单片集成度达到千万门,设计复杂度达到系

23、统级,SOC(System On Chip)芯片的设计和制造己成为IC产业发展的主流及必然趋势。性能价格比远高于单片机的32位嵌入式系统处理器正逐步取代单片机的市场。嵌入式系统的开发也进入到了一个“系统”开发的阶段,在这个阶段的开发模式己经不是单片机时代的开发方式所能够适应的。要开发一个嵌入式系统,要求从系统的角度着手,需要软硬件人员协同工作。目前,嵌入式系统的发展涉及到计算机学科的各个方面,主要关注的应用领域是消费电子、3G领域、网络系统、无线网络等,主要的技术热点包括嵌入式操作系统、系统芯片设计、应用软件开发和嵌入式内容服务5。1.4.3 嵌入系统的发展趋势嵌入式系统目前处于高速的发展之中

24、,其中在以下几个方面的发展尤其应该引起重视:系统结构趋于复杂;网络互联成为必然趋势;应用时精简系统内核、算法,降低功耗和软硬件成本;系统提供友好的人机界面。所以,通过对嵌入式系统的基本概念和应用以及发展趋势的了解,可以看到,嵌入式系统的研究是计算机学科综合各项理论和技术的集大成者。2 系统的总体方案设计本系统是一个嵌入式系统,在功能上是独立的,在没有上位机控制的情况下能独立地完成对电动机的监控。系统的软件代码采用模块化设计,使其便于测试、修改,同时具有良好的可移植性和通用性。2.1 系统分析2.1.1 系统功能分析本文旨在设计一种嵌入式监控系统,使得机器设备能够通过该系统与人之间进行数据通信的

25、目的。基于以上目标,本设计实现的系统应当具备以下功能: 可通过键盘设置和控制电动机的转速和转向。 在一定时间内驱动电动机到达设置的转速和转向。 采取一定策略实现电动机安全运转。 可即时显示转速值。2.1.2 系统原理结构根据本系统的设计目标,本系统的原理结构框图如图2-1所示。图2-1 系统的原理结构框图如图2-1所示,本系统的主要功能模块有:转速检测模块、光电转换、单片机、PWM电机驱动模块、显示模块、键盘模块。转速传感器和光电转换将电机转速转化为可以测量的电信号。PWM电动机驱动用来将计算机信号转换为电动机驱动信号,键盘和显示器是本系统的人机接口。2.1.3 技术方案可行性研究1) 电机调

26、速控制模块电机驱动调速方案的控制目标是实现电动机的调速及正、反转。 采用电阻网络或数字电位器调整分压。采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般电动机的电阻很小,但电流很大;分压不仅会降低效率,而且实现很困难6。 采用继电器开关控制。采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整。这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。 采用H型PWM电路。采用由电子开关组成的H型PWM电路用单片机控制电子开关使之工作在占空比可调的

27、开关状态,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高;H型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。兼于方案三调速特性优良、调整平滑、调速范围广、过载能力大,且能实现转速和方向的控制,因此本设计采用第三个方案。2) 检速模块 磁感应式。采用霍尔元器件(霍尔元器件应用霍尔效应,输出量与磁场的大小有关)并在电动机转轴上安装磁片,利用位置固定的开关型霍尔元器件来检测车轮的转动,通过单位时间内的脉冲数进行转速测量。 光反射式。采用反射式红外器件。在电动机轮辐面板上均匀画出黑底白线或白底黑线,通过正对线条的反射

28、式红外器件,产生脉冲。通过对脉冲的计数测速。 光对射式。采用对射式红外传感器。在轮辐面板上均匀刻出孔,在轮子两侧固定相对的红外发射、接收器件。在过孔处接收器可以接收到信号。从而轮子转动时可以产生连续脉冲信号,通过对脉冲的计数进行车速测量。由于方案三产生的脉冲信号不论在质量上还是数量上都优于前两种,符合本设计要求,因此选择了第三个方案。3) 供电电源选择 单电源供电。优点是供电电路简单;缺点是由于电机的特性,电压波动较大,严重时可能造成单片机系统掉电。 双电源供电。将电机驱动电源其它电路电源分离,利用光电耦合器传输信号。优点是减少耦合,提高系统稳定性;缺点为电路较复杂。考虑到提高系统的稳定性和安

29、全性,本系统采用双电源供电方案。综上所述,本系统总体方案如表2-1所示。表2-1 系统方案配置表模块使用方案电机调速控制模块H型PWM电路检速模块光对射式电源模块双电源2.2 系统硬件体系结构设计2.2.1 嵌入式系统的硬件嵌入式处理器是嵌入式系统硬件部分的核心,近年来嵌入式微处理器的主要发展方向是小体积、高性能、低功耗。专业分工也越来越明显,出现了专业的IP(Intellectual Property Core知识产权核)供应商。一般可以将嵌入式处理器分成以下4类:1) 嵌入式微控制器(Microcontroller Unit,MCU)单片机内部集成了比较丰富的片上外设资源,适合用于控制。2

30、) 嵌入式DSP(Digital Signal Processor)其系统结构和指令算法进行了特殊设计,具有很高的指令执行速度,适应于高速数字信号处理。如TI的TMS302C2000/C5000,Intel的MCS-296,Siemens的TriCoreo。3) 嵌入式微处理器(Microprocessor Unit,MPU)由通用计算机中的CPU演变而来,具有32位以上的处理器、较高的性能。但与计算机处理器不同的是,在实际嵌入式应用中,它只保留与嵌入式应用紧密相关的功能硬件,去除其它冗余功能部分。4) 嵌入式SOC(System On Chip)处理器的体系结构又可分为冯诺依曼结构(数据和指

31、令都存储在同一存储器)、哈佛体系结构(数据和指令都提供了各自独立的存储器)。2.2.2 系统硬件体系结构本设计的统硬件体系可以分为三部分,第一部分为微控制器组成的控制核心电路,第二部分为转速检测模块和电动机驱动模块组成的电动机接口电路,第三部分为键盘输入模块和液晶显示模块组成用户接口电路,设计方案的硬件详细框图如图2-2所示。图2-2 详细的硬件体系结构框图2.2.3 核心控制电路以嵌入式微控制器作为核心控制电路,作为硬件系统的中枢控制中心,用于协调和管理系统的其它硬件。本系统选用PHIPLIS公司的ARMTDMI-S内核为控制器LPC2124作为嵌入式系统的核心单元、该处理器内部集成了系统所

32、需的PWM模块、脉冲捕获模块等。2.2.4 电动机接口电路电动机接口电路用于检测和驱动电动机的转速和转向,转速检测采用光电耦合器件配合控制核心的脉冲捕获功能实现,电动机驱动电路采用控制核心的PWM功能和电机驱动芯片L298实现。2.2.5 用户接口电路用户接口电路用于获取用户的输入和将系统相关信息显示给用户,本系统采用44矩阵键盘获取用户输入,采用LCD1602系列液晶显示屏显示电动机的转速和转向。2.3 系统软件体系结构设计2.3.1 嵌入式系统的软件通常嵌入式系统软件体系结构主要有两种:前后台系统(Foreground/Background)和基于嵌入式操作系统平台的应用系统。前后台系统又

33、称为超循环系统(Super-loops),其应用程序是一个无限的循环,循环中调用响应的函数完成相应的操作,这部分可看作后台行为,中断服务程序处理异步事件,可看作是前台行为4;基于嵌入式操作系统平台的应用系统一般由嵌入式操作系统和应用软件组成,操作系统是连接计算机硬件与应用程序的系统程序,嵌入式操作系统可以分为实时操作系统和分时操作系统两类。2.3.2 系统软件体系结构设计结合本系统的性能要求,本设计采用前后台系统,其体系结构如图2-3所示。图2-3 软件体系结构框图2.3.3 后台程序组成1) 转速测量模块转速测量模块用于将定时器捕获的脉冲值转换为转速值,转速值单位为RPM(Revolutio

34、n Per Minute),即每分钟多少转。此外,本模块还具有转向识别功能,用于控制PWM驱动的方向。2) 转速-PWM转换模块转速-PWM转换模块用于将以RPM为单位的转速值转换为可以用来驱动电动机的PWM值。2.3.4 前台程序组成1) 键盘扫描模块键盘扫描将系统键盘接口的输入映射为系统的数据和控制数据。2) PWM更新模块PWM更新模块将后台转换的PWM值更新到PWM输出端。3) 转速显示模块转速显示模块将后台的检测结果和用户输入显示在LCD上。2.4 本章小结本章是系统的总体设计,首先介绍了系统的功能及技术上的可行性,然后将系统从功能上进行了模块划分,最后将系统分为硬件和软件两个部分分

35、别介绍。硬件设计部分包括LPC2124为核心的控制电路、键盘和LCD组成的用户电路、检速和PWM驱动组成的电机接口电路三个单元,通过这种结构,从硬件上实现了用户和电机之间的数据通信;软件部分采用前后台体系结构,后台是系统的中断处理程序,前台负责对用户数据的接收及系统内部数据的回显。软件和硬件均采用模块化设计,这增强了系统的易维护性及开放性。3 系统硬件的详细设计本系统的硬件设计主要包括微控制器电路、转速检测电路、PWM电动机驱动电路、LCD显示电路、矩阵键盘电路等设计。3.1 微控制器电路嵌入式系统的硬件核心部件是各种类型的嵌入式处理器。嵌入式处理器在功耗、体积、成本、可靠性及运算处理能力等各

36、方面性能指标在不同的应用场合均有较为特殊的要求,不同的行业不同的场合对嵌入式处理器的性能都有不同的要求,因此,嵌入式处理器芯片的种类繁多。据统计,目前全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列。随着集成电路制造工艺技术的提高32为处理器成本不断降低,性价比占有很大优势,因此32位的嵌入式处理器得到越来越广泛的应用。在32位处理器中,采用ARM体系结构的嵌入式处理器占有很大比例7。3.1.1 ARM微处理器介绍ARM微处理器内核是ARM技术的核心,目前市场上能够见到的有ARM7、ARM9、ARM9E、ARM10E、SecurCore、ARM11,还有Intel的

37、Xcale微体系架构及StrongARM等系列1。ARM处理器采用RSIC的架构技术,它具备小体积,低功耗,低成本,高性能等特色,支持Thumb(16位)和ARM(32位)双指令集,能很好地兼容8位/16位器件。ARM按照内核可以分为以下几种:1) ARM7微处理器系列ARM为低功率的32位RSIC处理器,包括32位地址线和数据线,最适合用于对价位核功率要求较高的应用,其特点如下: 具有嵌入式ICE逻辑,调试开发方便。 低功耗,适合便携式产品。 具有16位Thumb指令集。 主频可达130MIPS。常用的ARM7的内核有:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ-s

38、等,其中各个英文字母所代表的意义如下:T:支持16位Thumb指令集。D:支持在线Debug。M:内嵌乘法器Multiplier。I:内嵌入式ICE,支持在线断点和调试。E:DSP指令,表示支持DSP的特定指令,主要是16位的Thumb指令。S:可以综合,提供VHDL或者Verilog语言设计,可以实现自己特定的硬件。J:支持新的Java功能。本系统使用的PHILIPS公司的LPC2124就是采用ARM7TDMI-S的内核。2) ARM9微处理器系列除了ARM7的功能外,ARM9还具有以下特点: 支持32位的AMBA(Advanced Microcontroller Bus Architect

39、ure)总线接口。 支持MMU(Memory Management Unit),可提供Windows CE及Linux Kernel 2.6以上的操作系统。 支持数据缓存(Data Cache)及指令缓存(Instruction Cache),提高了CPU的处理效率。常用的ARM9的内核有ARM920T、ARM922T和ARM940T。3) ARM9E微处理器系列它是一个综合性的处理器,除了具有ARM9的功能外,还增加了DSP和Java应用系统的处理。其主要特色如下: 支持DSP指令集,适合高速运算。 支持VFP9浮点运算。 CPU主频高达300MIPS。常用的ARM9E的内核有:ARM926

40、EJ-S、ARM946E-S和ARM966E-S。4) ARM10E微处理器系列它采用了新的架构,使其效率比ARM9提高将近50%,并且提升了能源管理的共能,从而降低了功耗。除了ARM9的功能外,ARM10E还具有以下功能: 支持VFP10浮点运算。 主频高达400MIPS。 内部并行读/写。常用的ARM10E的内核有:ARM1020E、ARM1022E及ARM1026EJ-S。3.1.2 ARM微处理器的工作模式和异常处理ARM支持7种工作模式,分别处理不同的需求,如表3-1所示。表3-1 ARM类处理器的处理模式处理器模式描述用户模式正常程序执行的模式快速中断模式用于高速数据传输和通道处理

41、外部普通中断模式用于普通中断处理特权模式操作系统使用的一种特权模式数据访问中止模式用于虚拟存储以及存储保护未定义指令模式用于支持通过软件方法仿真硬件协处理器系统模式运行特权级的系统任务ARM支持7种异常模式,这里的异常包含中断,两者的不同仅仅在于从异常(或中断)返回时的地址不同,异常返回时的地址是发生异常的哪条指令所在的地址,而中断返回时的地址的是中断的下一条指令所在的地址,如表3-2所示。表3-2 ARM体系结构所支持的异常异常类型具体含义复位当处理器的复位电平有效时,产生复位异常,程序跳转到复位异常处理程序处执行。未定义指令当ARM处理器或协处理器遇到不能处理的指令时,产生未定义指令异常。

42、可使用该异常机制进行软件仿真。软件中断该异常由执行SWI指令产生,可用于用户模式下的程序调用特权操作指令,可使用该异常机制实现系统功能调用。指令预取中止若处理器预取指令的地址不存在,或该地址不允许当前指令访问,存储器会向处理器发出中止信号,但当预取的指令被执行时,才会产生指令预取中止异常。数据中止若处理器数据访问指令的地址不存在,或该地址不允许当前指令访问时,产生数据中止异常。IRQ(外部中断请求)当处理器的外部中断请求引脚有效,且CPSR中的I位为0时,产生IRQ异常。系统的外设可通过该异常请求中断服务。FIQ(快速中断请求)当处理器的快速中断请求引脚有效,且CPSR中的F位为0时,产生FI

43、Q异常。当系统运行时,异常可能会随时发生,为保证在ARM处理器发生异常时不至于处于未知状态,在应用程序的设计中,首先要进行异常处理,采用的方式是在异常向量表中的特定位置放置一条跳转指令,跳转到异常处理程序,当ARM处理器发生异常时,程序计数器PC会被强制设置为对应的异常向量,从而跳转到异常处理程序,当异常处理完成以后,返回到主程序继续执行。表3-3 异常向量表地址异常进入模式0x0000,0000复位管理模式0x0000,0004未定义指令未定义模式0x0000,0008软件中断管理模式0x0000,000C中止(预取指令)中止模式0x0000,0010中止(数据) 中止模式0x0000,00

44、14保留保留0x0000,0018IRQIRQ0x0000,001CFIQFIQ3.1.3 ARM寄存器ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器为31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位。ARM处理器有7种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器 (R0-R14)、一至二个状态寄存器和程序计数器。在所有的寄存器中,有些是在7种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处

45、理器模式下有不同的物理寄存器。1) 寄存器R13寄存器R13在ARM指令中常用作堆栈指针,但这只是一种习惯用法,用户也可使用其他的寄存器作为堆栈指针。而在Thumb指令集中,某些指令强制性的要求使用R13作为堆栈指针。由于处理器的每种运行模式均有自己独立的物理寄存器R13,在用户应用程序的初始化部分,一般都要初始化每种模式下的R13,使其指向该运行模式的栈空间,这样,当程序的运行进入异常模式时,可以将需要保护的寄存器放入R13所指向的堆栈,而当程序从异常模式返回时,则从对应的堆栈中恢复,采用这种方式可以保证异常发生后程序的正常执行。2) 寄存器R14R14也称作子程序连接寄存器(Subrout

46、ine Link Register)或连接寄存器LR。当执行BL子程序调用指令时,R14中得到R15(程序计数器PC)的备份。其他情况下,R14用作通用寄存器。与之类似,当发生中断或异常时,对应的分组寄存器R14_svc,R14_irq,R14_fiq,R14_abt和R14_und用来保存R15的返回值。3) 程序计数器PC(Rl5)寄存器R15用作程序计数器(PC)。在ARM状态下,位1:0为0,位31:2用于保存PC;在Thumb状态下,位0为0,位31:1用于保存PC;虽然可以用作通用寄存器,但是有一些指令在使用R15时有一些特殊限制,若不注意,执行的结果将是不可预料的。在ARM状态下,PC的0和1位是0,在Thumb状态下,PC的0位是0。寄存器R16用作CPSR(Current Program Status Register,当前程序状态寄存器),CPSR可在任何运行模式下被访问,它包括条件标志位、中断禁止位、当前处理器模式标志位,以及其他一些相关的控制和状态位。每一种运行模式下又都有一个专用的物理状态寄存器,称为SPSR(Saved Program Status Register,备份的程序状态寄存器),当异常发生时,SPSR用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复

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

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1