- 1、本文档共83页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 MCS-51单片机硬件结构 2.1 MCS-51的内部结构 2.2 MCS-51的内部工作原理 2.3 MCS-51的外部引脚分布 2.4 MCS-51的工作时序 2.5 MCS-51的复位电路 2.1 MCS-51的内部结构 CPU:单片机的最核心部分,它是整个单片机的控制和指挥中心,完成所有的计算和控制任务。 振荡器和时序逻辑:产生CPU工作所需要的内部时钟。 中断控制逻辑:用来应付一些临时到达的突发事件。 并行I/O接口和串行I/O接口:数据传输通道,方便CPU从芯片外部取得待处理的对象和将处理的结果送到芯片外部。 程序存储器:用于存放单片机的程序。 数据存储器:用于存放内部待处理的数据和处理后的结果。 定时器/计数器:主要是完成对外部输入脉冲的计数或者根据内部的时钟及定时设置,周期性的产生定时信号。 总线控制逻辑:用于产生外部存储空间的有关读写控制信号。 内部总线:内部CPU与程序存储器、数据存储器、并行I/O接口、串行I/O接口和定时器/计数器之间都是通过内部总线联系在一起。 MCS-51单片机的内部详细结构如下图所示: 2.2 MCS-51的内部工作原理 2.2.1 MCS-51的CPU结构及工作原理 CPU是单片机的核心,它由运算器和控制器等部件组成。 运算器包括: 可进行8位算术和逻辑运算的单元ALU 8位的暂存器1(TMP1)、暂存器2(TMP2), 8位的累加器ACC 8位寄存器B 程序状态寄存器PSW等。 (1)算术和逻辑单元ALU ALU是CPU运算器的核心,它可以完成对4位、8位和16位数据进行操作加、减、乘、除、加1、减1、BCD数十进制调整及比较等算术运算和“与”、“或”、“异或”、“求补”及“循环移位”等逻辑运算操作。它是整个单片机的计算中心。 (2)累加器ACC 8位寄存器,ALU运算的结果,一般都进入累加器ACC,当然运算的对象也可以来自于ACC。除此之外,ACC在MCS-51内部还经常作为数据传送的中转站。同一般微处理器一样,它是最忙碌的一个寄存器。在指令中用助记符A来表示。 (3)寄存器B 8位寄存器,在乘、除运算时,B寄存器用来存放一个操作数,也用来存放运算后的一部分结果。若不做乘、除运算,则可作为通用寄存器使用。 (4)程序状态字寄存器PSW 8位寄存器,用于指示指令执行后的状态信息,相当于一般微处理器的标志寄存器。PSW的位结构如下表所示。 Cy:高位进位标志位 当ALU的算术运算过程中有进位或借位时,Cy=1;否则,Cy=0。同时,该位还可以用作位累加器,这时一般只用“C”表示。 AC:辅助进位标志 当ALU的算术运算过程中低4位向高4位有进位或借位时,AC=1;否则,AC=0。该位常用于BCD码的调整。 F0:用户标志位 RS1、RS0:选择工作寄存器组位 用于选择内部数据存储器区内4组工作寄存器中的某一组。具体选择情况见寄存器介绍部分。 OV:溢出标志位 运算结果超出机器所能表示的范围时称溢出。溢出是指有符号数运算时,数值超过了+127---128。 OV=Cy7⊕Cy6,补码运算产生溢出OV=1,否则OV=0 P:奇偶校验标志位 根据累加器ACC中1的个数由硬件置位或清除,当累加器ACC中有奇数个1时P=1;否则,P=0。 PSW.1:保留位 无定义。 【例】:分析执行下列指令序列后,A、C、AC、OV、P的内容是什么? MOV A,#79H ADD A,#58H ? 该指令功能是将79H+58H→A。计算过程如下: (79H) +(58H) ———————————— (D1H) A=D1H最高位无进位,C=0;低半字节有进位,AC=1;OV=1,发生溢出;A中1的个数为偶数,P=0。 (5)临时寄存器TMP1和TMP2 这两个寄存器专门供ALU存放临时数据,用户不可以直接访问。 (6)程序控制逻辑 包括程序计数器PC、指令寄存器IR、指令译码器ID、振荡器及定时电路等。 程序计数器PC 16位字节地址计数器,PC中的内容是将要执行的下一条指令的地址。改变PC的内容就可改变程序执行的方向。 指令寄存器IR及指令译码器ID CPU把由PC中的内容决定的Flash
文档评论(0)