单片微机1章._第1页
单片微机1章._第2页
单片微机1章._第3页
单片微机1章._第4页
单片微机1章._第5页
已阅读5页,还剩113页未读 继续免费阅读

下载本文档

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

文档简介

1、微型计算机技术与应用 70课堂学时课堂学时+18实验学时实验学时第1章 微型计算机基础知识1.1 概述概述1.2 单片机中数的几种表示法单片机中数的几种表示法1.3 单片机内部结构简介单片机内部结构简介1.4 嵌入式系统处理器和存储器组织简介嵌入式系统处理器和存储器组织简介1.5嵌入式系统设备网络互联总线简介嵌入式系统设备网络互联总线简介1.6 单片微型计算机工业控制应用领域单片微型计算机工业控制应用领域 1.7 本课程应掌握的内容本课程应掌握的内容 1.1 概述概述1 . 1 . 0计算机的起源计算机的起源 人脑计算人脑计算 28*3+4*9=? 算盘用来计算算盘用来计算运算器运算器 纸笔用

2、来存储中间结果纸笔用来存储中间结果存储器存储器 1.1.1 计算机基本结构计算机基本结构 图1-1 1.1.2 微型计算机微型计算机 图1-1-2一、微型计算机的中央处理单元一、微型计算机的中央处理单元CPU 由运算器和控制器组成由运算器和控制器组成 运算器的位数称运算器的位数称CPU 的字长。的字长。 CPU具有运算能力和控制功能。具有运算能力和控制功能。 可以进行算数运算和逻辑运算可以进行算数运算和逻辑运算 对指令进行译码并执行规定的操作对指令进行译码并执行规定的操作 通过总线与存储器和外设交换数据通过总线与存储器和外设交换数据 提供系统需要的定时和控制提供系统需要的定时和控制 响应中断请

3、求响应中断请求 二、二、 计算机总线计算机总线 总线总线(Bus)是用于传送信息(信号)的一组是用于传送信息(信号)的一组传输线。传输线。 它通过通过分时复用的方式,将信它通过通过分时复用的方式,将信息从一个或多个源部件传送到一个或多个目息从一个或多个源部件传送到一个或多个目的部件,是电脑中传输数据的公共通道。的部件,是电脑中传输数据的公共通道。 1.总线概念总线概念 总线上通常挂接多个部件总线上通常挂接多个部件用于传送地址信息,是单向传送。用于传送地址信息,是单向传送。 1条地址线可以区分条地址线可以区分2个存储单元,个存储单元,N条地条地址线可以区分址线可以区分(寻址寻址) 2N 个存储单

4、元。个存储单元。 地址总线地址总线 2.总线分类总线分类(1)按功能分:地址总线)按功能分:地址总线 、数据总线、控制总线、数据总线、控制总线 数据总线数据总线 用于用于CPU与存储器,与存储器,CPU与外设,外设与与外设,外设与外设之间传送数据。外设之间传送数据。 在运算器中,数据线的数目应与待处理的在运算器中,数据线的数目应与待处理的数据位数相同。数据位数相同。 运算器内数据线的条数称为微处理器的运算器内数据线的条数称为微处理器的“字长字长”。 控制总线控制总线 控制信号线的总称,传送控制信息控制信号线的总称,传送控制信息 。 (2)按传输数据的方式分:串行总线和并行总线)按传输数据的方式

5、分:串行总线和并行总线 (1)功能:存储信息(包括程序和数据)功能:存储信息(包括程序和数据) 三、存储器三、存储器 寄存器和存储器均存储信息,但寄存器和存储器均存储信息,但CPU内的寄存器内的寄存器数量少,存取速度快,主要用于临时存放参加运算数量少,存取速度快,主要用于临时存放参加运算的操作数和中间结果。的操作数和中间结果。 存储器的存储单元多,能存大量信息,但速度比存储器的存储单元多,能存大量信息,但速度比寄存器慢寄存器慢 (2)分类)分类 只读存储器只读存储器 ROM PROM EPROM FLASHROM EEPROM 随机存储器随机存储器 RAM 静态静态RAM,由多个双极型晶体管或

6、,由多个双极型晶体管或CMOS管组成管组成 动态动态RAM,依靠,依靠MOS管栅极与底衬之间的寄生管栅极与底衬之间的寄生电容保存信息,需定时刷新电容保存信息,需定时刷新寄存器存储器中的一个存储单元等效于一寄存器存储器中的一个存储单元等效于一组触发器,每个触发器有两个稳定状态,可组触发器,每个触发器有两个稳定状态,可以记录以记录1位位2进制数。进制数。 每个存储单元包含的触发器的个数称为存每个存储单元包含的触发器的个数称为存储单元的储单元的“字长字长”。 存储器芯片内存储单元数目存储器芯片内存储单元数目M与存储芯片与存储芯片的地址线条数的地址线条数N有关,有关,M=2N* 存储单元有地址编码,如

7、存储单元有地址编码,如32K存储器有存储器有32X1024个存储单元,地址编码为:个存储单元,地址编码为:0000H7FFFH()存储器工作状态()存储器工作状态 读读存储器存储器 数据输出数据输出写写存储器存储器 数据输入数据输入存储器存储器禁止状态禁止状态 高阻状态高阻状态四、四、 微机的输入、输出接口微机的输入、输出接口接输入、输出设备,如打印机、显示器接输入、输出设备,如打印机、显示器五、微机的时钟电路五、微机的时钟电路功能:为计算机工作提供时间基准,它控制着功能:为计算机工作提供时间基准,它控制着计算机工作节奏。计算机工作节奏。六、六、 微机的指令和指令系统微机的指令和指令系统1.指

8、令,用命令形式规定指令,用命令形式规定CPU的操作,不同的的操作,不同的指令有不同的代码指令有不同的代码 微机的指令和指令系统微机的指令和指令系统2.指令系统,所有指令的集合称为指令系统指令系统,所有指令的集合称为指令系统3.不同计算机所包含的指令种类、数目、指令不同计算机所包含的指令种类、数目、指令码对应的操作等由码对应的操作等由CPU的设计开发人员指定。的设计开发人员指定。1.1.3 单片微型计算机单片微型计算机 通用微型计算机中把运算器、控制器做在通用微型计算机中把运算器、控制器做在一个芯片上,称一个芯片上,称中央处理器中央处理器CPU ,也称微处理也称微处理器器. 单片微型计算机则把运

9、算器、控制器、单片微型计算机则把运算器、控制器、输入输出接口、时钟电路、存储器以及计数输入输出接口、时钟电路、存储器以及计数器、器、A/D转换等功能模块都做在一个芯片上,转换等功能模块都做在一个芯片上,称称微控制器微控制器MCU. * 通用微机与单片微机功能区别:通用微机与单片微机功能区别: 通用微机主要任务是数值计算和信息处理,通用微机主要任务是数值计算和信息处理,运算速度和存储容量越大越好。时钟频率已达运算速度和存储容量越大越好。时钟频率已达几个。几个。 单片微机主要面对工业控制,一般单片微机主要面对工业控制,一般8位字长已位字长已够用。时钟频率在几兆够用。时钟频率在几兆数十兆内。数十兆内

10、。1.1.4 嵌入式系统嵌入式系统 嵌入式系统是在计算机硬件中嵌入了软件、专嵌入式系统是在计算机硬件中嵌入了软件、专用于某个应用或产品的基于计算机的系统。用于某个应用或产品的基于计算机的系统。 嵌入式系统有嵌入式系统有3个主要组成部分:个主要组成部分: (1)硬件)硬件 (2)应用软件)应用软件(3)实时操作系统()实时操作系统(RTOS) 实时操作系统用来管理应用软件,实时操作系统用来管理应用软件, 它提供一它提供一种机制,使处理器在进行依次进程调度时运行一种机制,使处理器在进行依次进程调度时运行一个进程,并在各进程(任务)之间进行切换个进程,并在各进程(任务)之间进行切换 实时操作系统将对

11、计算机资源的访问组织成系实时操作系统将对计算机资源的访问组织成系统的任务序列,统的任务序列, 调度各任务的执行。调度各任务的执行。主要内容:主要内容: 各种常用计数制和编码以及它们相互各种常用计数制和编码以及它们相互间的转换;间的转换;1.2 计算机中数的几种表示法计算机中数的几种表示法 二进制数的算术运算和逻辑运算;二进制数的算术运算和逻辑运算;符号数的表示及补码运算;符号数的表示及补码运算;二进制数运算中的溢出问题二进制数运算中的溢出问题1.2.1 数制及其转换数制及其转换一、进位计数制一、进位计数制am X rm + am-1 X rm-1 + a1 X r1+ a0 X r0 +a-1

12、 X r-1+ a-2 X r-2 + a-n X r-nr是一个固定的基数,逢是一个固定的基数,逢r进位,进位, ri称为该称为该位的权。位的权。 如如10进制进制特点:基数特点:基数 r =10 ,逢十进一逢十进一; 共共有有0 9 十个数字符号十个数字符号。1. 十进制十进制 (987.32)10=9x102+8x101+7x100+3x10-1+2x10-2例:例: 2. 八进制八进制 基数基数r=83. 十六进制十六进制 基数基数r = 16(706.3)8 = 7 x 82 + 0 x 81 + 6 x 80 + 3 x 8-1符号集是符号集是 1,2,39,A,B,C,D,E,F

13、 (-A0.8F)16 = - (10 x 161 + 0 x 160 + 8 x 16-1 + 16 x 16-2)4. 二进制二进制 基数基数r = 2符号集是符号集是 0,1(1011.11)2 =1x23+0 x22+1x21+1x20+1x2-1+1x2-2十、十、 二、八、十六进制数码对照表二、八、十六进制数码对照表表表1-1 P4二、进位计数制之间的转换二、进位计数制之间的转换1. 直接相乘法直接相乘法例例1. 把十进制数把十进制数725转换为二进制数转换为二进制数(725)10 = 7x102+2x101+5x100 =111x10102+10 x10101+101x10100

14、 =(1011010101)22. 余数法(余数法(适合于整数部分转换适合于整数部分转换)例例. 把十进制数把十进制数62转换为二进制数转换为二进制数2 62 余数余数=0 低位低位2 31 余数余数=12 15 余数余数=12 7 . 余数余数=12 3 . 余数余数=1 1 . 余数余数=1 高位高位 结果结果(62)10 = (111110)2注意:当无限循环时,可根据误差取舍注意:当无限循环时,可根据误差取舍3.取整法(取整法(适合于小数部分转换适合于小数部分转换)例例. 把十进制小数把十进制小数0.375转换为二进制数转换为二进制数0.375 x 2 = 0.750 整数整数 = 0

15、 高位高位 0. 75 x 2 = 1.50 整数整数 = 1 0. 5 x 2 = 1 整数整数 = 1 低位低位r进制小数进制小数M转换为转换为t进制小数,采用进制小数,采用M乘乘t取整的方法取整的方法转换结果:转换结果: (0.375) 10=(0.011) 24.递归法(适合于计算机转换)递归法(适合于计算机转换)r进制数进制数M,转换为,转换为t进制数进制数方法:方法:(1) 将将M拆成整数和小数两部分拆成整数和小数两部分 (2) 把用递归算法产生的已转换成把用递归算法产生的已转换成 t 进制进制的整数和小数拼起来的整数和小数拼起来例例. 把十进制数把十进制数4827.625转换为二

16、进制数转换为二进制数(4827) 10=(4 x10+8)x10+2)x10+7)x100 =(100 x1010+1000)x1010+10)x1010+111 =(1001011011011)2(0.625) 10=(6+(2+5 x10-1)x10-1)x10-1 =(110+(10+101x1010-1 )x1010-1)x1010-1 (0.101)2(4827.625) 10=(4827) 10 +(0.625) 10 转换结果转换结果(4827.625) 10= (1001011011011)2+(0.101)2 =(1001011011011.101)21.2.2 BCD码码一

17、、一、 BCD码码 用用4位二进制数表示的十进制数位二进制数表示的十进制数(1) 8421 BCD码码(简称简称BCD码码) 唯一的表示一位十进制数唯一的表示一位十进制数(2) 2421 BCD码码 不唯一不唯一(3) 5211 BCD码码 不唯一不唯一(4) 余余3 码码 唯一的表示一位十进制数唯一的表示一位十进制数有有4种:种:编码关系见表编码关系见表1-3 P6二、二、 BCD码存储方法码存储方法(1)单字节)单字节 BCD码码8位二进制存储单元只存一位位二进制存储单元只存一位BCD码码(2)压缩)压缩 BCD码码 8位二进制存储单元存两位位二进制存储单元存两位BCD码,存储单码,存储单

18、元高元高4位存高位位存高位BCD码,低码,低 4位存低位位存低位BCD码码例:例: 65的存储格式为的存储格式为 011001011.2.3 ASCLL码码 计算机中将字母、符号统称为字符计算机中将字母、符号统称为字符 将字符按特定的规律用二进制编码在计算将字符按特定的规律用二进制编码在计算机中表示,称机中表示,称ASCLL码码 基本基本ASCLL码用码用7位二进制编码表示位二进制编码表示 可表示可表示09,AZ,az,标点符号,控制,标点符号,控制字符等字符等128个字符个字符 ASCLL编码表见表编码表见表1-4 P71.2.4 计算机中数的表示方法计算机中数的表示方法 计算机中的信息都是

19、以二进制数形式表示计算机中的信息都是以二进制数形式表示 一、真值和机器数一、真值和机器数 一个数是由符号和数值两部分组成的一个数是由符号和数值两部分组成的N1 = +1001010 (+74)10N2 = -1001010 (-74)10 在计算机中在计算机中N1 = 01001010N2 = 11001010 一个数在计算机中的表示形式称为机器数,一个数在计算机中的表示形式称为机器数,而把这个数本身称为真值而把这个数本身称为真值 二、带符号数的表示法二、带符号数的表示法D0Dn-2Dn-1符号位符号位数数 值值 部部 分分 三、无符号数的表示法三、无符号数的表示法 没有符号位,如:没有符号位

20、,如:D1D0D711001010无符号数的表示范围无符号数的表示范围一一个个n位的无符号二进制数位的无符号二进制数X,其表示范围为,其表示范围为 0 X 2n-1 若运算结果超出这个范围,则产生溢出。若运算结果超出这个范围,则产生溢出。(或者说运算结果超出(或者说运算结果超出n位,则产生溢出)位,则产生溢出)溢出判别方法:溢出判别方法: 运算时,当最高位向更高位有进位(或运算时,当最高位向更高位有进位(或 借借位)时则产生溢出。位)时则产生溢出。 四、数的定点和浮点表示四、数的定点和浮点表示 十进制数十进制数485.23也可以表示为也可以表示为0.48523 X 103 计算机中也有相应两种

21、表示法:定点数和浮计算机中也有相应两种表示法:定点数和浮点数点数 1.定点表示法定点表示法符号符号. 数数 值值 部部 分分符号符号数数 值值 部部 分分 . 或或 2. 浮点表示法浮点表示法 浮点数格式浮点数格式 浮点表示法指小数点的位置是浮动的,不固定浮点表示法指小数点的位置是浮动的,不固定 对于任意一个二进制数对于任意一个二进制数N,都可以表示成:,都可以表示成: N = m x 2 e 其中:其中:m 0 称为称为N的尾数;前边的符号称为数符;的尾数;前边的符号称为数符;e称为称为N的阶码是非负整数,其前边的符号称为阶的阶码是非负整数,其前边的符号称为阶符(阶码和阶符决定符(阶码和阶符

22、决定N的小数点位置)的小数点位置) 计算机内浮点数格式:计算机内浮点数格式:阶符阶符阶码阶码数符数符位数位数 规格化数规格化数 由于一个数的浮点表示不是唯一的,为了使数由于一个数的浮点表示不是唯一的,为了使数据的有效位最大,使运算的精度尽可能高,计算据的有效位最大,使运算的精度尽可能高,计算机的浮点数采用规格化浮点数表示,定义如下:机的浮点数采用规格化浮点数表示,定义如下: 若若 N = m x 2 e, 则则 m121 五、原码、反码和补码五、原码、反码和补码 原码、补码和反码都是带符号的数在计算原码、补码和反码都是带符号的数在计算机中的表示方法。机中的表示方法。 模的概念模的概念 一个计量

23、器的容量,称为模或模数一个计量器的容量,称为模或模数 例如:一个例如:一个n位位2进制计数器,它的容量为进制计数器,它的容量为2n,所以它的模为,所以它的模为2n注意:对正数,三种表示法均相同。注意:对正数,三种表示法均相同。它们的差别在于对负数的表示。它们的差别在于对负数的表示。 模的性质模的性质 当模为当模为2n时,时,2n和和0的表示形式是相同的的表示形式是相同的 例如:计数器计满溢出;钟表例如:计数器计满溢出;钟表12点是点是0点点 1.原码原码 带符号数在计算机中的表示法就是原码表示法带符号数在计算机中的表示法就是原码表示法 例如真值:例如真值:N1 = +1001010N2 = -

24、1001010N1 = 01001010N2 = 11001010 其原码记为:其原码记为:根据原码表示形式,可将原码定义为:根据原码表示形式,可将原码定义为:XX原原= = X 0 X 2n-12n-1 + X - 2n-1 X 0其中:其中:X为真值,为真值,n为机器可表示的二进制码位数。为机器可表示的二进制码位数。在原码表示中,在原码表示中,“0”有两种表示形式:有两种表示形式:+0+0原原 = 0000 = 0000 (mod 2mod 2n n) n n个个00-0-0原原 = 1000 = 1000 (mod 2mod 2n n) n-1n-1个个00n位原码表示数值的范围是位原码

25、表示数值的范围是对应的原码是对应的原码是1111 0111。() ()nn112121 2.反码反码 正数的反码与原码相同,最高位为符号位,正数的反码与原码相同,最高位为符号位,0表示正表示正 例:求例:求(+4)10的二进制反码的二进制反码 00000100 负数的反码:它的正数按位取反,最高位为符负数的反码:它的正数按位取反,最高位为符号位,号位,1表示负。表示负。 即对应原码的符号位不变,数值部分按位求反即对应原码的符号位不变,数值部分按位求反 例:求例:求(- 4)10的二进制反码的二进制反码(+4)10 的二进制数为的二进制数为 0000100正数按位取反后,正数按位取反后, 111

26、1011 (- 4)10的二进制反码:的二进制反码: 11111011 3. 补码补码 同余概念同余概念 如果有两个整数如果有两个整数a和和b,当用某一个整数,当用某一个整数M去除去除a和和b,所得余数相等时,则称,所得余数相等时,则称a和和b对模对模M是同余的是同余的 当当a和和b对对M同余时,就称同余时,就称a、b在以在以M为模时为模时是相等的,记为:是相等的,记为: a = b (mod M)例如:例如: a = 16 ,b = 4 ,若模为,若模为12,二者是同余的:,二者是同余的: 16 = 4 (mod 12 )由同余的概念可以得出:由同余的概念可以得出: M+a = a (mod

27、 12 ) 2M+a = a (mod 12 )当当a为负数时,如为负数时,如a = -3,在以,在以10和和12为模时,分别有:为模时,分别有: 10+( - 3 )= -3 (mod 10 ) 12+( - 3 )= -3 (mod 12 )分析:以分析:以10为模时,负数为模时,负数(-3)可以转化为正数可以转化为正数 ( +7 )了了补码:以补码:以10为模时,负数为模时,负数 (-3) 的补码为的补码为( 7 ) 补码的表示形式补码的表示形式 如果如果n位二进制码的最高位表示符号位,则补码的表位二进制码的最高位表示符号位,则补码的表示形式为:示形式为: X = +Xn-2 Xn-3

28、X1X0时:时: X 补补 = 0Xn-2 Xn-3 X1X0 = 2n+X ( MOD 2n) X = - Xn-2 Xn-3 X1X0时:时: X 补补 = 2n-1+2n-1-Xn-2 Xn-3 X1X0 = 1Xn-2 Xn-3 X1X0+1 = 2n +X ( MOD 2n) 补码的定义补码的定义 X 补补 = 2n+X(1) 当当X为正数时,为正数时, X补补码只是码只是X的符号位用的符号位用0代替;代替;(2) 当当X为负数时,为负数时, X补补码是从码是从2n减去减去X的绝对值;的绝对值;符号位连接原数的绝对值取反加符号位连接原数的绝对值取反加1(3) 当当X为纯小数时,为纯小

29、数时, 即即X = 0.X-1X-2.X-n-1,补码,补码可表示为:可表示为:XX补补= = X 1 X 02 + X 0 X - 1(4) 补码具有如下性质:补码具有如下性质: X+Y 补补 = X补补 + Y补补 X- Y 补补 = X补补 - Y补补 4. 8位有符号数的表示范围:位有符号数的表示范围:n对8位二进制数:原码: -127 +127反码: -127 +127补码: -128 +127一、一、 算术运算规则算术运算规则加法:加法:1+1=0(有进位)(有进位), 减法:减法:0-1=1(有借位)(有借位), 乘除法:乘除法: 一个数乘以一个数乘以2相当于该数左移一位;除相当

30、于该数左移一位;除以以2则相当于该数右移则相当于该数右移1位。位。 1.2.5 单片机中的数据运算单片机中的数据运算二、加法和减法运算二、加法和减法运算 在计算机中,补码的加法和减法运算最简单在计算机中,补码的加法和减法运算最简单(1) 补码的运算原理补码的运算原理 模模(module)是一个计数系统的最大容量。是一个计数系统的最大容量。例如,钟表的模为例如,钟表的模为12,8位二进制数的模为位二进制数的模为28。 凡是用器件进行的运算都是有模运算,凡是用器件进行的运算都是有模运算,运算结果超过模的部分会被运算器运算结果超过模的部分会被运算器自动丢自动丢弃弃。因此,当。因此,当器件为器件为n位

31、时,有位时,有:X = 2n + X (mod 2n)不难验证,不难验证, X补补=2n+X (mod 2n)因此,因此, X Y补补= 2n + (X Y) (mod 2n) = (2n+X) + (2n Y) (mod 2n) = X 补补+ Y 补补(2) 补码加减法的运算规则补码加减法的运算规则n通过引进补码,可将减法运算转换为加法运算。规则如下:X+Y补=X补+Y补 X-Y补=X补- Y补 其中X,Y为正负数均可,符号位参与运算。例:X= - 0110100,Y= + 1110100,求,求X+Y补补X原原=10110100 X补补= X反反+1=11001100 符号位不动符号位不

32、动Y补补= Y原原=01110100所以:所以: X+Y补补= X补补+ Y补补 =11001100+01110100 =01000000三、乘、除法运算三、乘、除法运算1.乘法运算乘法运算 乘法运算包括符号运算和数值运算。相同符乘法运算包括符号运算和数值运算。相同符号两数相乘,积为正;相异符号两数相乘,积号两数相乘,积为正;相异符号两数相乘,积为负;为负; 数值运算是对两个数的绝对值相乘;数值运算是对两个数的绝对值相乘;例:例: 1011 X 1101 1011 X) 1101 1011 0000 1011 1011 10001111可见:可见: 2个个n位无符号相乘,积的位数为位无符号相乘

33、,积的位数为2n;2.除法运算除法运算 除法运算包括符号运算和数值运算。相同符除法运算包括符号运算和数值运算。相同符号两数相除,商为正;相异符号两数相除,商号两数相除,商为正;相异符号两数相除,商为负;为负; 数值运算是对两个数的绝对值相除;数值运算是对两个数的绝对值相除;例:例: 011010 101 除数除数 101 011010 -)101 00110 - ) 101 001 余数余数 0 1 1 由于减法可以通过补码加法实现,所以,加由于减法可以通过补码加法实现,所以,加减乘除四则运算都可以用加法运算来代替。减乘除四则运算都可以用加法运算来代替。四、逻辑运算四、逻辑运算1. 按位逻辑按

34、位逻辑或或运算运算 C = A B C = A B2. 按位逻辑按位逻辑与与运算运算3. 按位逻辑按位逻辑非非运算运算 C = A与门与门或门或门非门非门 C = A B = A .B + A .B4. 按位逻辑按位逻辑异或异或运算运算五、五、 计算机中常用数据单位计算机中常用数据单位 Bit 位 1Mb = 10241024bit = 220bit 1Gb = 230bit = 1024Mb 1Tb = 240bit = 1024Gb Byte 字节 1 Byte=8bit,1KB=1024 Byte, Word 字 表示字长,有1bit, 4bit, 8bit, 16bit等, 一般情况下

35、为2Byte(16bit)。1.3 单片机的内部结构简介单片机的内部结构简介一、单片机结构框图一、单片机结构框图 图图1-3 二、单片机的微控制器二、单片机的微控制器MCU与计算机微处理与计算机微处理器器CPU的区别的区别 单片机一个芯片就具备了一个完整计算机系单片机一个芯片就具备了一个完整计算机系统所必须的基本功能统所必须的基本功能。 输出设备数据总线地址总线地址总线数据总线输入设备地址总线数据总线存储器控制信号控制器数据总线控制信号时钟发生电路控制信号时钟信号运算器三、单片机三、单片机CPU的字长的字长 CPU的字长:指的字长:指CPU一次可以处理的二进制一次可以处理的二进制数的位数数的位

36、数CPU的字长的字长 与存储单元、运算器的位数一致与存储单元、运算器的位数一致控制着单片机工作节奏、速度控制着单片机工作节奏、速度 * 时钟周期时钟周期 输入微处理器的时钟信号的周期,叫时钟周期,输入微处理器的时钟信号的周期,叫时钟周期,也叫振荡周期。也叫振荡周期。 * 机器周期机器周期 是单片机完成一个基本操作所需的时间。在是单片机完成一个基本操作所需的时间。在51系列系列单片机中,一个机器周期由单片机中,一个机器周期由12(或或6)个时钟周期组成。个时钟周期组成。 四、单片机的时钟四、单片机的时钟 * 指令周期指令周期 CPU从取一条指令到执行完该指令所需的时间,从取一条指令到执行完该指令

37、所需的时间,通常由几个机器周期组成。通常由几个机器周期组成。 1.1.2计算机的内部结构及工作过程计算机的内部结构及工作过程一、一、CPU的内部结构的内部结构 图图1-3-1 PC程序计数器程序计数器AR地址寄存器地址寄存器DR累加器累加器 A寄存器寄存器 BPSWIR控制器控制器IDALUOut In_1 In_2暂存器暂存器算术逻辑运算算术逻辑运算CPU输出的控制信号输出的控制信号CPU指令译码器指令译码器指令寄存器指令寄存器数据寄存器数据寄存器数据总线(数据总线(DB)外存储器外存储器控制信号控制信号地址总线(地址总线(AB)内部数据总线内部数据总线图图1-3-1 CPU的内部结构简图的

38、内部结构简图 CPU通常由算术逻辑运算单元通常由算术逻辑运算单元ALU,累加,累加器器A,寄存器,寄存器B,程序状态寄存器,程序状态寄存器 PSW,程序计,程序计数器数器PC,地址寄存器,地址寄存器AR,数据寄存器,数据寄存器DR,指,指令寄存器令寄存器IR,指令译码器,指令译码器ID,控制器等部分组,控制器等部分组成。成。 (1) 51系列单片机程序计数器系列单片机程序计数器PC 16位位 存放将要执行的指令代码所在存储单元的地址存放将要执行的指令代码所在存储单元的地址编码,一条指令取出后,编码,一条指令取出后,PC内容自动加内容自动加1。 PC位数与位数与CPU地址线数目一致。地址线数目一

39、致。 单片机复位后,单片机复位后,PC有确定值。有确定值。(2) 地址寄存器地址寄存器AR 16位位 存放将要寻址的外部存储器单元的地址,存放将要寻址的外部存储器单元的地址,地址寄存器通过地址总线与外部存储器相连。地址寄存器通过地址总线与外部存储器相连。 例:将外部存储器单元例:将外部存储器单元3FFFH的内容读到累的内容读到累加器加器A中中(3) 指令寄存器指令寄存器IR 存放取指阶段读出的指令代码的第一个字存放取指阶段读出的指令代码的第一个字节。即操作码。节。即操作码。 例:例:ADD A,#30H (4) 数据寄存器数据寄存器DR 存放写入存放写入(到到)外部存储器或外部存储器或I/O端

40、口的数据端口的数据信息。数据寄存器信息。数据寄存器DR与外部数据总线相连。与外部数据总线相连。 (5) 算术逻辑运算单元算术逻辑运算单元ALU 用于算术逻辑运算用于算术逻辑运算 。 (6) 程序状态寄存器程序状态寄存器 PSW 存放运算结果的状态信息存放运算结果的状态信息。 B7b6b5b4b3b2b1b0CyACF0RS1 RS0 OV-P二、单片机的存储器二、单片机的存储器 存放程序和数据。存放程序和数据。 ()存储器内部结构()存储器内部结构 由地址译码器,存储单元,读写控制电路由地址译码器,存储单元,读写控制电路等组成。等组成。 图图1-3-2A0109A1A2A3A4A5A6A7A8

41、A9A10A11A12A13A14876543252421232261222027OECSWE62256D0D1D2D3D4D5D6D71112131516171819存储器芯片地址译码器地址总线(AB)1223A5E9存储单元内容(十六进制)23内部结构示意图读写控制电路OECSWE控制信号0000单元0001单元0002单元0003单元7FFF单元存储单元编号(十六进制)数据总线(DB)D7-D0A14-A0图图1-3-2要点:要点: * 存储器中的一个存储单元等效于一组触发存储器中的一个存储单元等效于一组触发器,每个触发器有两个稳定状态,可以记录器,每个触发器有两个稳定状态,可以记录1位

42、位2进制数。进制数。 * 每个存储单元包含的触发器的个数称为存每个存储单元包含的触发器的个数称为存储单元的储单元的“字长字长”。 * 存储器芯片内存储单元数目存储器芯片内存储单元数目M与存储芯片的与存储芯片的地址线条数地址线条数N有关,有关,M=2N* 存储单元有地址编码,如存储单元有地址编码,如32K存储器有存储器有32X1024个存储单元,地址编码为:个存储单元,地址编码为:0000H7FFFH()存储器工作状态()存储器工作状态 存储器工作状态由控制信号决定,存储器工作状态由控制信号决定,* 地址寄存器地址寄存器AR给出存储单元的地址编号给出存储单元的地址编号例:例:CPU读取地址编号为

43、读取地址编号为0000H存储单元的内容。存储单元的内容。* 地址总线将地址编号送到存储器的地址线上地址总线将地址编号送到存储器的地址线上* 存储器的地址译码器译码,选中存储器的地址译码器译码,选中0000H单元单元* CPU给出读控制信号给出读控制信号RD* 0000H存储单元内容送到数据总线上。存储单元内容送到数据总线上。不是不是DR中中(3)存储器的读操作)存储器的读操作 图图1-3-30000算 术 逻 辑 运 算累 加 器 A寄 存 器 B0000PSWA LUO utIn_1 In_2ID控 制 器暂 存 器12CPUCPU 输 出 的 控 制 信 号地 址 总 线 (AB)数 据

44、总 线 (D B)PCA RD RIR1地址译码器1223A 5E9存 储单 元内 容(十 六进 制 )23读 写 控 制电 路OECSWE0000单 元0001单 元0002单 元0003单 元7FFF单 元存 储 单 元 编 号A 14-A 000004接 CPU 的RD接 CPU 的D7-D0WR23图图1-3-3* AR给出存储单元的地址编号给出存储单元的地址编号0003H例:CPU把55H写入0003H存储单元* 地址总线将地址编号送到存储器的地址线上地址总线将地址编号送到存储器的地址线上* 存储器的地址译码器译码,选中存储器的地址译码器译码,选中0003H单元单元* CPU给出写控

45、制信号给出写控制信号WR*存于数据寄存器存于数据寄存器DR中的中的55H通过总线送到通过总线送到0003H单元中。单元中。()存储器写操作()存储器写操作图1-3-3三、三、51 系列单片机指令系统系列单片机指令系统 1. 51 指令系统指令系统 写操作后,被写入存储单元的原有信息将写操作后,被写入存储单元的原有信息将不复存在。不复存在。 读操作后,被读存储单元的内容不变。读操作后,被读存储单元的内容不变。 51 指令系统采用复杂指令系统(指令系统采用复杂指令系统(CISC)。)。有有111条指令,属于汇编语言条指令,属于汇编语言2.指令的执行过程指令的执行过程 例例:将存储器将存储器0020

46、H单元与单元与0021H单元中的内容单元中的内容相加相加,和值存在和值存在002FH单元,程序如下:单元,程序如下: MOV A,0020H ADD A,0021H MOV 002FH ,A分析指令的执行过程:分析指令的执行过程:以以 MOV A,0020H为例为例 图图1-3-4 0000PC0000读 控 制 信读 控 制 信号号E5累加器累加器 A寄存器寄存器 BPSWE5控制器控制器IDALUOut In_1 In_2暂存器暂存器算术逻辑运算算术逻辑运算CPU输出的控制信号输出的控制信号CPU数 据 总 线数 据 总 线(DB)内部数据总线内部数据总线0000H 0001H 0002H

47、 0003H 00001235+1E5 20 00 25 21 00 1200F52F 34 0004H 0005H 0006H 0007H 0008H 0020H 0021H 002FH 74ROM做地做地址译码址译码6I R 指 令指 令寄存器寄存器DR数据数据暂存器暂存器AR地址地址寄存器寄存器图图1-3-4 指令执行过程示意图指令执行过程示意图1000130001000210002 取操作码取操作码(指令第一字节指令第一字节) ;译码;译码;取操作数取操作数(指令第二、第三字节指令第二、第三字节) ;执行指执行指令规定的操作。令规定的操作。指令的执行过程:指令的执行过程: 3. C51

48、语言语言 C51语言是适合于单片机编程的语言是适合于单片机编程的C语言,本语言,本课的程序设计以课的程序设计以C51语言为主。语言为主。 CPU的所有工作可概括之:从存储器中取出指的所有工作可概括之:从存储器中取出指令;令;译码;译码;执行指令规定的操作执行指令规定的操作(经过算术和逻辑运算后,输出相应的结(经过算术和逻辑运算后,输出相应的结果)。果)。取下一条指令;如此循环往复取下一条指令;如此循环往复四、总结:四、总结: 1.4 嵌入式系统简介嵌入式系统简介一、一、嵌入式系统硬件组成嵌入式系统硬件组成 嵌入式系统具有系统专用软件和多个硬件嵌入式系统具有系统专用软件和多个硬件 处理器和存储器

49、是嵌入式系统的两个重要组成处理器和存储器是嵌入式系统的两个重要组成 处理器在各种存储器单元的支持下运行软件处理器在各种存储器单元的支持下运行软件 系统软件嵌入在系统软件嵌入在ROM中中 嵌入式系统处理器可以是具有嵌入式系统处理器可以是具有CISC或者或者RISC体系结构的微处理器,也可以是微控体系结构的微处理器,也可以是微控制器或者数字信号处理器制器或者数字信号处理器DSP。二、二、嵌入式系统处理器嵌入式系统处理器1. 处理器结构单元处理器结构单元 MAR-存储器地址寄存器。它保存将要读的存储器地址寄存器。它保存将要读的外部存储器的地址,处理器读外存之前,先外部存储器的地址,处理器读外存之前,

50、先将地址发给将地址发给MAR MDR-存储器数据寄存器。它保存从外部存储器数据寄存器。它保存从外部存储器(或存储器(或IO地址)读入的的数据地址)读入的的数据 内部总线。它将处理器内部的各个电路模内部总线。它将处理器内部的各个电路模块连接,它的宽度可以是块连接,它的宽度可以是8,16,32,64等等 地址总线。它是外部总线,将地址从地址总线。它是外部总线,将地址从MAR发送到存储器、发送到存储器、IO单元或其它设备单元或其它设备 数据总线。它传递数据或指令数据总线。它传递数据或指令 控制总线。它在处理器和存储器(或设备)控制总线。它在处理器和存储器(或设备)之间传送控制信号,是外部总线之间传送

51、控制信号,是外部总线 BIU总线接口单元。它是外部总线与处理器总线接口单元。它是外部总线与处理器内部单元之间的接口单元内部单元之间的接口单元 IR指令寄存器。它存放从存储器读回的指令指令寄存器。它存放从存储器读回的指令 ID指令译码器。它翻译指令译码器。它翻译IR收到的指令操作收到的指令操作码,并将翻译结果送给处理器码,并将翻译结果送给处理器CU CU 控制单元。它控制着处理过程所需的所控制单元。它控制着处理过程所需的所有总线行为和单元功能有总线行为和单元功能 ARS应用寄存器。它是一组处理用户应用程应用寄存器。它是一组处理用户应用程序过程中使用的片上寄存器,寄存器窗口包含序过程中使用的片上寄

52、存器,寄存器窗口包含寄存器的一个子集,每个子集包换一个软件例寄存器的一个子集,每个子集包换一个软件例程的静态变量,寄存器文件是与单元(例如程的静态变量,寄存器文件是与单元(例如ALU或或FLPU)文件相结合的文件)文件相结合的文件 ALU算数逻辑运算单元。它根据算数逻辑运算单元。它根据IR中的当中的当前指令,执行算数或逻辑运算。前指令,执行算数或逻辑运算。 PC程序计数器。它存放程序计数器。它存放CPU下一条要取指下一条要取指令的地址,这条指令取出后,令的地址,这条指令取出后,PC内容自动加内容自动加1 SRS系统寄存器组。在处理系统程序中使用系统寄存器组。在处理系统程序中使用的一组寄存器的一

53、组寄存器 SP堆栈指针。是一个地址指针,与存储器堆栈指针。是一个地址指针,与存储器栈顶对应栈顶对应 IQ指令队列。作用是一条指令执行后,指令队列。作用是一条指令执行后,IR不必要等待下一条指令。不必要等待下一条指令。 PFCU预取控制单元。是一个将数据提前从预取控制单元。是一个将数据提前从存储器取到存储器取到I-缓存或缓存或D-缓存中的控制单元,当缓存中的控制单元,当处理器的执行单元需要指令和数据时,将数据处理器的执行单元需要指令和数据时,将数据传过去,处理器没有必要在执行指令之前采取传过去,处理器没有必要在执行指令之前采取数据。数据。 I-缓存缓存(指令缓存)。它连续地将指令以(指令缓存)。

54、它连续地将指令以FIFO的模式保存,就像一个指令队列,使处的模式保存,就像一个指令队列,使处理器能够通过使用理器能够通过使用PFCU高速执行指令;处理高速执行指令;处理器访问外部存储器的速度相对要慢得多。器访问外部存储器的速度相对要慢得多。 BT-缓存缓存(分支目标缓存)。当遇到分支指(分支目标缓存)。当遇到分支指令时,例如:令时,例如:jumo、loop、call等,它协助准等,它协助准备好要执行的下一条指令集;处理器访问外部备好要执行的下一条指令集;处理器访问外部存储器的速度相对要慢得多。存储器的速度相对要慢得多。 D-缓存缓存(数据缓存)。它保存从外部存储器(数据缓存)。它保存从外部存储

55、器预取来的数据。数据缓存通常将键(地址)和预取来的数据。数据缓存通常将键(地址)和数值(字)共同保存在一个位置上。如果适当数值(字)共同保存在一个位置上。如果适当的配置,它还可以保存写穿透数据。写穿透数的配置,它还可以保存写穿透数据。写穿透数据意味着从执行单元获得执行结果,并将这个据意味着从执行单元获得执行结果,并将这个结果从缓存传回到相应的外部存储器地址中结果从缓存传回到相应的外部存储器地址中 MMU(存储管理单元)。它管理存储器单(存储管理单元)。它管理存储器单元。负责执行过程锁需要的指令或数据元。负责执行过程锁需要的指令或数据 FLPU(浮点处理单元)。一个从(浮点处理单元)。一个从AL

56、U分离分离出来的单元,用于浮点处理,这是微处理器或出来的单元,用于浮点处理,这是微处理器或DSP中快速执行数学函数的基本单元中快速执行数学函数的基本单元 FRS(浮点寄存器组)。专门用来以标准格(浮点寄存器组)。专门用来以标准格式保存浮点数的寄存器组,式保存浮点数的寄存器组,FLPU使用它来保使用它来保存数据和堆栈存数据和堆栈 高级处理单元高级处理单元,用于多级流水处理、多路超,用于多级流水处理、多路超标量处理,使处理速度达到每个时钟周期能执标量处理,使处理速度达到每个时钟周期能执行多条指令,还有一个行多条指令,还有一个MAC单元,用于计算单元,用于计算过程中系数的相乘和相加。过程中系数的相乘

57、和相加。 AOU(原子操作单元),当一个用户(编译原子操作单元),当一个用户(编译器)指令分割成几个叫做原子操作的处理器指器)指令分割成几个叫做原子操作的处理器指令后,它可以在发生过程中断之前结束该指令令后,它可以在发生过程中断之前结束该指令的操作,以避免各例程和任务之间发生数据共的操作,以避免各例程和任务之间发生数据共享问题。享问题。2. 选择处理器选择处理器(1)指令周期时间)指令周期时间(2)内部总线宽度)内部总线宽度(3)CISC或或RISC体系结构体系结构(4)程序计数器)程序计数器PC及其复位值及其复位值它确定了处理器可以访问的物理内存的最大空间它确定了处理器可以访问的物理内存的最

58、大空间(5)堆栈指针)堆栈指针(6)流水先和超标量单元)流水先和超标量单元(7)片上)片上RAM、ROM、高速缓存、寄存器、高速缓存、寄存器(8)外部中断)外部中断(9)中断控制器)中断控制器(10)位操作指令)位操作指令(11)浮点处理器)浮点处理器(12)多通道之间存储器访问)多通道之间存储器访问DMA控制器控制器(13)片上存储管理单元)片上存储管理单元MMU,当时有高速缓,当时有高速缓存的时候需要这个单元存的时候需要这个单元三、嵌入式系统的存储器三、嵌入式系统的存储器1. 嵌入式系统存储器的类型嵌入式系统存储器的类型微控制器的内部微控制器的内部RAM片上系统上的内部片上系统上的内部RA

59、M或外部或外部RAM微处理器的内部微处理器的内部cache外部外部RAM芯片芯片FLASH / EEPROMROM / PR0M2. 嵌入式系统中存储器的功能嵌入式系统中存储器的功能3. 嵌入式系统中存储器嵌入式系统中存储器ROM中嵌入的软件中嵌入的软件系统引导程序系统引导程序堆栈地址指针堆栈地址指针程序计数器地址指针程序计数器地址指针 应用任务应用任务 实时操作系统实时操作系统RTOS 输入数据和向量地址输入数据和向量地址 设备驱动程序设备驱动程序ISR4. 直接存储器访问直接存储器访问DMA 当多字节数或者一个数据块在两个设备单元当多字节数或者一个数据块在两个设备单元之间传送,而不需要之间传送,而不需要CPU干预时,使用直接干预时,使用直接存储器访问存储器访问DMA DMA传送是在传送是在DMAC(DMA控制器)协助控制器)协助下进行的,某些微处理器或微控制器具有下进行的,某些微处理器或微控制器具有DMA功能。功能。四、嵌入式系统的四、嵌入式系统的IO设备设备通过通过I/O设备访问设备访问: 外设,如键盘、显示器等外设,如键盘、显示器等 其它计算机或片外单元的其它计算机或片外单元的IO端口端口五、五

温馨提示

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

评论

0/150

提交评论