资源描述:
《编单片机原理与应用 三版 教学课件 作者 潘永雄 第1-3章第1章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第1章基础知识1.1计算机的基本认识1.2寻址方式1.3单片机及其发展概况为理解计算机系统构成、工作原理及过程,我们先来了解用算盘是如何计算下面代数式的:1234+567-8=408首先要有算盘作为计算工具。在计算机里用“运算器”(即算术逻辑运算单元)作为计算工具,由它承担算术运算和逻辑运算。1.1计算机的基本认识在计算机里,除了加、减、乘、除四则运算外,还有“与、或、非、异或”等逻辑运算。其次需要纸和笔记录算式、计算步骤、中间结果及最终结果。在计算机中,起到纸和笔作用的器件是存储器和寄存器(
2、寄存器在中央处理器内,存取速度快,但数量少,用于存放中间结果;而存储器一般位于中央处理器外,由成千上万个存储单元组成,容量大,与寄存器相比,存取速度慢一些,常用于存放数据、计算步骤,即指令)。在计算上述算式时,先计算1234,并把中间结果记录下来,然后计算567,再记录中间结果,接着将上述两步中间结果相加,并记录下来,再减8。以上计算步骤由人脑控制,如果改用计算机进行,可用计算机汇编语言指令写出如下的计算步骤:MOVA,#12;将被乘数12送CPU内寄存器AMOVB,#34;将乘数34送CPU
3、内寄存器BMULAB;计算12×34,乘积高8位存放在寄存器B中,低8位存放在 ;寄存器A中MOVR2,AMOVR3,B;将中间结果暂存到寄存器R2、R3中MOVA,#56;被除数56送CPU内寄存器AMOVB,#7;除数7送CPU内寄存器BDIVAB;计算56÷7,商存放在寄存器A中,余数存放在寄存器B中ADDA,R2;低8位相加MOVR2,A;把结果暂存到R2中MOVA,R3;取高8位ADDCA,#00;低8位相加时可能产生进位,用ADDC指令将A与00;相加,将低8位相加产生的进位加到高
4、8位中MOVR3,A;把结果暂存到R3中MOVA,R2;取低8位CLRC;清进位标志SUBBA,#08;低8位减8MOVR2,A;结果送R2MOVA,R3;取高8位SUBBA,#00;12×34+56÷7获得的中间结果减8时,低8位可能产生借位, ;因此需要用SUBB指令将高8位与00相减MOVR3,A;把结果送R3。这样算式“1234+567-8”的最终结果就 ;保存在R3、R2中将上述计算步骤存放在存储器中,然后由计算机内的控制器执行,控制器在时钟信号的控制下,从存储器中取出计算步
5、骤(指令)和数据,并根据指令操作码内容发出相应的控制信号。此外,为向计算机输入数据、指令,还需输入设备,如键盘;为输出处理结果或显示机器的状态,还需输出设备,如各类显示器、指示灯等。因此,计算机系统的基本结构大致如图1-1所示。图1-1计算机基本结构在计算机中,往往把运算器、控制器做在同一芯片上,称为中央处理器(CentralProcessorUnit,CPU),有时也称为微处理器(Micro-ProcessorUnit,MPU)。为进一步减小电路板面积,提高系统可靠性、降低成本,将输入/输出接口
6、电路、时钟电路以及一定容量的存储器、运算器、控制器等部件集成到同一芯片内,就成为单片机(也称为微控制单元,即MicroControllerUnit,MCU),其意义是一个芯片就具备了一部完整计算机系统所必需的基本部件。为了满足不同的应用需求,将不同功能的外围电路,如定时器、中断控制器、A/D及D/A转换器、串行(如UART、SPI、I2C或CAN等)通信接口电路,甚至LCD显示驱动电路等集成在一个管芯内,形成系列化产品,就构成了所谓“嵌入式”单片机控制器(EmbeddedMicro-Control
7、ler)。1.总线概念我们知道,电路系统总是由元器件通过电线连接而成的。在模拟电路中,器件、部件之间的连线不多,关系也不复杂,一般按串联方式连接。但在以微处理器为核心的计算机系统电路中,器件、部件均要与微处理器相连,所需连线多,如果仍采用模拟电路的串联方式,在微处理器与各器件间单独连线,则所需的连线数量将很多,为此在计算机电路中普遍采用总线连接方式,即每一器件的数据线并接在一起,构成数据总线,地址线接在一起,构成地址总线,然后与CPU的数据、地址总线相连,属并联关系。为避免混乱,任何时候只允许一个
8、设备与CPU通信,因此需要用控制线进行控制和选择,系统(包括器件)中所有的控制线被称为控制总线。(1)地址总线(AddressBus,AB),单向,用于传送地址信息,如图1-1中运算器与存储器之间的地址线,地址线的数目决定了可以寻址的存储单元。一根地址线有两种状态,即可以区分两个不同的存储单元;两根地址线有四种状态,可以寻址四个存储单元;依此类推,8位微处理器通常有16根地址线,可以寻址216,即64K个存储单元,一般存储单元的大小为一个字节,因此8位微处理器的寻址范围通常为64K