版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ARM嵌入式基础技术 - 入门篇长沙市元享电子 制作内容简介ARM嵌入式应用技术基础嵌入式应用技术基础从基本概念和原理入手,循序渐进地讲解了嵌入式系统基础、ARM处理器基础、ARM7指令系统、程序设计、ADS编译环境和初始化代码等各项基础知识,帮助读者成功地掌ARM应用基础。本套教材构成:入门篇入门篇 ARM嵌入式应用技术基础嵌入式应用技术基础提高篇 ARM嵌入式接口技术应用实战篇 ARM嵌入式应用实战章节目录第一章 嵌入式系统基础知识 第二章 ARM处理器基础 第三章 ARM的指令系统 第四章 ARM的编程技术 第五章 四个操作范例 第六章 ADS1.2开发工具的使用 第七章 AXD调试工具
2、的使用 第八章 初始化代码研究 第九章 LPC2220(ARM7)处理器 第一章 嵌入式系统基础知识一、认识嵌入式系统二、计算机系统的信息表示方式三、本节附录一、认识嵌入式系统以数字科技为基础,计算机科学技术为框架的嵌入式系统目前已普遍应用于工业控制系统、信息家电、通信设备、医疗设备、智能仪器仪表等众多领域:1.1 嵌入式系统的定义根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是 “控制、监视或者辅助设备、机器和车间用行的装备” (原文为devicesused to control,or assist the operation of equipment, machinery or
3、 plants)。目前国内一个被普遍认同的定义是:以应用为中心,以计算机技术为基础,软件和硬件可裁减,以适应应用系统对功能、可靠性、成本、速度、体积、功耗严格要求的专用计算机系统。可以认为,嵌入式系统是一种硬件和软件紧密耦合在一起的专用计算机系统,作为装置或设备的一部分。1.2 嵌入式系统发展的四个阶段1、无操作系统阶段;2、简单操作系统阶段;3、实时操作系统阶段;4、嵌入式片上系统(System on Chip,SoC)阶段。1.3 嵌入式系统的发展现状 1. 新的微处理器层出不穷,精简系统内核,优化关键算法,降低功耗和硬件成本。2. 嵌入式系统的开发成了一项系统工程,开发厂商不仅要提供嵌入
4、式软硬件系统本身,同时还要提供强大的硬件开发工具和软件支持包。3. 通用计算机上使用的新技术、新观念开始逐步移植到嵌入式系统中,嵌入式软件平台得到进一步完善,基本都能提供更加友好的多媒体人机交互界面。4. 各种开源的嵌入式操作系统(如C Linux、C/OS-II)迅速发展,目前已经形成了能与VxWorks、Windows CE等嵌入式操作系统进行有力竞争的局面。5. 网络化、信息化的要求随着Internet 技术的成熟和带宽的提高而日益突出,以往功能单一的设备功能不再单一,结构变得更加复杂,网络互连成为必然趋势。1.4 嵌入式系统的组成 一个嵌入式系统装置一般是由嵌入式计算机系统和执行装置两
5、部分组成。嵌入式计算机系统由硬件层、中间层、系统软件层和应用软件层组成: 硬件层 硬件层由嵌入式核心控制模块和外围设备接口组成。在嵌入式处理器基础上添加电源电路、时钟电路、复位电路和存储器电路,就构成一个嵌入式核心控制模块。硬件层结构示意图1嵌入式微处理器嵌入式微处理器嵌入式系统硬件层的核心是嵌入式微处理器,嵌入式微处理器大多工作在为特定用户群所专门设计的系统中。嵌入式微处理器的体系结构可以采用冯诺依曼体系结构或哈佛体系结构;指令系统可以选用精简指令系统(RISC)和复杂指令系统(CISC)。2存储器存储器存储器是用来存放和执行代码。嵌入式系统的存储器包含Cache、主存和辅助存储器。 嵌入式
6、处理器CacheRAMROM主存辅助存储器3通用设备接口和通用设备接口和I/O接口接口 嵌入式系统和外界交互需要一定形式的通用设备接口和I/O接口。每个外设通常都只有单一的功能,它可以在芯片外也可以内置在芯片中。外设的种类很多,可从一个简单的串行通信设备到非常复杂的802.11无线设备。中间层 硬件层和软件层之间为中间层,也称为硬件抽象层或板级支持包。中间层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置等功能。中间层主要完成两部分工作:1、嵌入式系统硬件初始化: 系统初始化过程的3个主要环节:片级初始化、板级初始化和系统级初始化。2、硬件相关的设备驱动程序:硬件相关的设备驱
7、动程序的初始化通常是一个从高到低的过程。设备驱动程序通常不直接由BSP 使用,而是在系统初始化过程中由BSP 将他们与操作系统中通用的设备驱动程序关联起来,并在随后的应用中由通用的设备驱动程序调用,实现对硬件设备的操作。系统软件层 系统软件层由实时多任务操作系统(Real-time Operation System,RTOS)、文件系统、图形用户接口(Graphic User Interface,GUI)、网络系统及通用组件模块组成,如图所示。其中RTOS是其他所有应用软件的基础和开发平台。1 1嵌入式操作系统嵌入式操作系统n嵌入式操作系统负责嵌入系统的全部软、硬件资源的分配、控制、协调、任务
8、调度等活动。2 2文件系统文件系统n与通用操作系统下的文件系统相比,嵌入式文件系统比较简单,主要提供文件存储、文件属性修改和文件目录服务等功能。3 3图形用户接口(图形用户接口(GUIGUI)nGUI 极大地方便了非专业用户地使用,人们可以通过窗口、菜单、按键等方式来方便的进行操作。嵌入式系统的GUI 具有的基本要求:轻型、占用资源少、高性能、便于移植、可配置等特点。n嵌入式系统中的图形界面,一般采用下面的几种方法实现: 针对特定的图形设备输出接口,自行开发相应的功能函数。 购买针对特定嵌入式系统的图形中间软件包。 采用源码开放的嵌入式GUI 系统。应用软件层 应用软件层是由基于实时操作系统开
9、发的应用程序组成,其作用是实现对被控制对象的控制功能。功能层是面向被控制对象和用户的,为方便用户操作,往往需要提供一个友好的人机界面。1.5 嵌入式系统实例 市场上现在有许多基于ARM芯片研制出来的手机产品,如图所示。各种智能型手机具有多种多样的功能,如接听电话、电话薄、备忘录、闹钟、短消息和游戏,甚至可以浏览网页和收发电子邮件等。 嵌入式产品的研发过程大致分为两步:硬件设计:硬件设计:硬件是产品赖以存在的基础。软件设计:软件设计:软件是其灵魂。1.硬件部分硬件部分的必需部件:1 1)ARMARM处理器:处理器:ARM处理器有很多种,目前包括ARM7系列、ARM9系列、ARM9E系列、ARM1
10、0E系列、Secur-Core系列、Intel公司的StrongARM和Xscale等系列。 2 2)显示设备:)显示设备:显示设备采用灰度或彩色的液晶模块(LCD)。 3 3)输入设备:)输入设备:输入设备可以采用键盘,还可以采用触摸屏。 4 4)存储设备:)存储设备:通常情况下,当系统需要管理大量数据,而这些数据又分为多种类别且需要分别进行处理时,采用文件系统能够简化编程,并提高效率。 5 5)GPRSGPRS接口模块:接口模块:GPRS接口模块能实现手机与GPRS网络连接,处理器通过GPRS接口模块可以与GPRS网络上其他的手机进行数据通信。2.软件部分 软件部分实际上就是编写的程序代码
11、。程序代码一般由高级语言(如C/C+ )和处理器专用汇编指令编写而成,经过编译、链接、重定位,最终成为机器代码,存放到系统的存储器中。软件可分为4个层次,从低到高分别为:1、硬件驱动层;2、操作系统层;3、系统中间件层;4、用户应用层。二、计算机系统的信息表示方式进位计数制是一种计数的方法,人们最习惯用的是十进制计数法。一个任意的十进制数可以表示为:1.1进位计数制与转换 1.数制系统数制系统an an-1a0.b1 b2bm含意是:an10n + an-110n-1 + + a0100 + b110-1 + b210-2 + + bm10-m 其中ai, bj是0,1,2,3,4,5,6,7
12、,8,9十个数码中的一个。十进制数的基数为10,即其数码为09,且遵循逢十进一的规则。上式中相对于每位数字的10k称为该位数字的权,例如:356.79=3102 + 5101 + 6100 + 710-1 + 910-2 计算机为便于存储及物理实现,采用了二进制。二进制数的基数为2,只有0,1两个数码,并遵循逢二进一的规则,因此二进制数an an-1a0 .b1 b2bm的值是:an2n + an-12n-1 + + a020 + b12-1 + b22-2 + + bm2-m例如:1011012 = 125 + 123 + 122 + 120 = 4510 其中数的下标表示该数的基数r,即二
13、进制的101101与十进制的45等值。再比如:102 = 210,1012 = 510,1112 = 710,10112 = 1210进位计数制基数数码十六进制数160,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F十进制数100,1,2,3,4,5,6,7,8,9八进制数80,1,2,3,4,5,6,7二进制数20,1 在计算机里: 0 x表示十六进制数;0b表示二进制数值。常用的进位计数制的基数和数码 比如二进制数0b 101111:0b 101111 = 125 + 024 + 123 + 122 + 121 + 120 = 32 + 8 + 4 + 2 + 1 = 47比如
14、十六进制数0 x 20F: 0 x 20F = 2162 + 0161 + F160 = 512 + 15 = 527十进制数转换二进制数十进制数转换二进制数十进制数转换成二进制数的降幂法。因为:20=1,21=2,22=4,23=8,24=16,25=32,26=64,27=128 。十进制数29,利用降幂法29可以写成:29 = 16 + 8 + 4 + 1 = 124 + 123 + 122 + 021 + 120 = 0b 11101二进制数、十六进制数转换十进制数二进制数、十六进制数转换十进制数 二进制数、十六进制数转换成十进制数都比较简单。2.2.数制之间的转换数制之间的转换二进制
15、数与十六进制数之间的转换二进制数与十六进制数之间的转换 十六进制数中的每一位可以与4位二进制数相对应。二进制数十六进制数十进制数二进制数十六进制数十进制数0000001000880001111001990010221010A100011331011B110100441100C120101551101D130110661110E140111771111F15二进制数、十进制数与十六进制数之间的数码转换表1.2 计算机中数的表示 二进制数的运算 二进制数之间具有加、减、乘、除四则运算,在ARM汇编语言里都有相对应的汇编指令完成四则运算。加减规则:0 + 0 = 00 + 1 = 11 + 0 =
16、1 1 + 1 = 0(进位1)0 - 0 = 00 1 = 1(借位1)1 - 0 = 11 - 1 = 00b 100 1111 + 0b 100 0001 = 0b 1001 0000 ;0b 101 - 0b 011 = 0b 010 。加减法实例:机器数的表示机器数的表示1 1、数的原码表示、数的原码表示 计算机中的数是用二进制来表示的,数的符号也是用二进制表示的。把一个数连同其符号在内在机器中的表示加以数值化,这样的数称为机器数。机器数常用原码、补码和反码表示法来表示。二进制位数8位16位32位字长1个字节1个半字1个字位数与字长对应关系 2 2、数的补码表示、数的补码表示计算一个
17、负数的补码的办法:先写出与该负数相对应的正数的原码表示,然后将其按位求反(即0变为1,1变为0),最后在末位(最低位)加1,就可以得到该负数的补码表示了。机器字长为8位,N=-52的补码表示+ 52原码表示0b 0011 0100按位求反后为0b 1100 1011 末位加1后为0b 1100 1100 用十六进制数表示 0 x CC即-52补=0 x CC 机器字长为16位,N = -52的补码表示 + 52原码表示0b 0000 0000 0011 0100 按位求反后为0b 1111 1111 1100 1011 末位加1后为0b 1111 1111 1100 1100 用十六进制数表示
18、0 x FFCC即-52补补=0 x FFCC3 3、补码加减运算、补码加减运算X补补X补补X补补求补求补求补求补例 假设机器字长为8位,已知-23补补=0b 1110 1001。现在对-23补补求补两次: -23补补为 0b 1110 1001求补一次得 0b 0001 0111再求补一次得0b 1110 1001对-23补求补两次之后其结果等于本身,求补一次得到的结果恰好是23补,这一特性在读者计算二进制补码所代表十进制值时很有帮助。比如,给定一个二进制补码0b 1100 1101,下面计算所代表的十进制值:0b 1100 1101求补一次:0b 0011 00110b 0011 0011
19、 = 51补补。所以0b 1100 1101 = -51补补。字符表示法字符表示法 计算机中字符包括:字母:字母:A、B、Z,a、b、z;数字:数字:0、1、9;专用字符:专用字符:+ 、-、*、/、%、;非打印字符:非打印字符:BEL(Bell响铃)、LF(Line Feed换行)、CR(Carriage Return回车)、。字符在机器里必须用二进制数来表示,目前比较普遍采用的是美国信息交换标准代码ASCII(American Standard Code for Information Interchange)表示法。部分常用的ASCII值。机器数表示小结机器数表示小结 在计算机中,要处理的数可以分为两类:无符号数和有符号数。1、无符号数、无符号数 在计算机中,表示地址的数(地址指针)、字符、用前缀unsigned定义的C语言变量等等都是无符号数。2、有符号数、有符号数有符号数在计算机中除了要表达该数的绝对值大小外,还要表达该数的正负号。机器数表示中用最高有效位保存该数的正负号,其他位保存该数的绝对值大小。1.3 基本的逻辑运算 1、 “与与”运算(运算(AND) “与”运算又称逻辑乘,可用符号 & 来表示。只有当A、B两个变量的取值均为1时,它们的“与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 本册综合教学设计-2025-2026学年小学综合实践活动四年级下册人民版
- 第14课 我制作的机器人教学设计小学信息技术电子工业版安徽六年级下册-电子工业版(安徽)
- 本单元综合与测试教学设计中职音乐第一单元 聆听与感悟高教版(公共艺术·音乐篇·第二版)
- 第八课 探问生命教学设计初中道德与法治统编版五四学制六年级全一册-统编版五四学制2018
- 编创 丰富多彩的舞蹈节奏教学设计小学音乐沪教版六年级下册-沪教版
- 第四单元 亚洲弦歌-小河的呼唤(片段)(教学设计)-2025-2026学年人音版音乐八年级下册
- 第二十七讲 印象主义和后印象主义绘画教学设计高中美术人教版必修 艺术欣赏-人教版
- 第3课 美国内战 教学设计-2025-2026学年浙江省部编版历史与社会九年级下册
- 2026年河南省郑州市金水区事业单位联考招聘考试备考题库及答案解析
- 2026西昌人力资源开发有限公司凉山交城建设有限责任公司建设项目招聘2名考试备考试题及答案解析
- 【物理】2026郑州高三二模试题及答案
- 《AQ3067-2026化工和危险化学品重大生产安全事故隐患判定准则》解读
- 施工电梯基础监理实施细则
- 国家机关事务管理局所属事业单位2025年度公开招聘应届毕业生笔试模拟试题
- 服装压力舒适性的测试与评价体系构建
- 2026年钻探工技师考试题及答案
- 2026年河北邢台市中考数学试题及答案
- 2026年高考地理高分冲刺学习指南
- 第二单元 辽宋夏金元时期:民族关系发展和社会变化 单元总结 - 学生版
- 国开2026年《公共政策概论》形成性考核任务1-4答案
- 2026年3月版-安全环境职业健康法律法规、规章、标准文件清单
评论
0/150
提交评论