第二章单片机的硬件结构_第1页
第二章单片机的硬件结构_第2页
第二章单片机的硬件结构_第3页
第二章单片机的硬件结构_第4页
第二章单片机的硬件结构_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、2.1 单片机的概念 单片微型计算机SCMC(Single Chip Micro-Computer),是计算机、自动控制和大规模集成电路相结合的产物。 还有其他的称呼,如:微控制器(MCU),嵌入式微控制器(EMCU),嵌入式微处理器(EMP)等。 目前使用最多的仍是8位单片机。在8位单片机中80c51的使用更为广泛。本教材也是以80c51为基础。2.2.1 80C51单片机的内部逻辑结构1. 中央处理器CPU (1)运算电路 (2)控制电路 2. 内部数据存储器 3. 内部程序存储器 4. 定时器/计数器 5. 并行I/O口 6. 串行口 7. 中断控制电路 8. 时钟电路 9. 位处理器

2、10. 内部总线图2.2 80C51芯片逻辑结构图图2.3 80C51单片机芯片引脚及芯片逻辑符号 输入/输出口线:P0.0P0.7, P1.0P1.7, P2.0P2.7, P3.0P3.7.地址锁存信号控制:ALE外部程序存储器读写信号:*PSEN访问程序存储器控制信号:*EA复位信号:RST外接晶体引线端:XTAL1和XTAL2地线:VSS+5V电源:VCC(1)80C51 的引脚复用 ALE/*PROG 编程脉冲 *EA/VPP 编程电压(2)引脚复用不会引起混乱 引脚引脚转义转义引脚引脚功能说明功能说明P3.0RXD串行数据接收端串行数据接收端P3.1TXD串行数据发送端串行数据发送

3、端P3.2INT0外部中断外部中断0请求请求P3.3INT1外部中断外部中断1请求请求P3.4T0计数器计数器0外部输入外部输入P3.5T1计数器计数器1外部输入外部输入P3.6WR外部数据存储器写外部数据存储器写P3.7RD外部数据存储器读外部数据存储器读 单片机的内部存储器包括数据存储器和程序存储器。80C51的数据存储区共有256个单元,按功能又划分为:低128单元区和高128单元区。图2.4 80C51 内部数据存储器配置图1. 寄存器区 内部RAM的前32个单元作为通用寄存器使用,地址为00H1FH。分为4组,组号依次为0、1、2、3。每组有8个寄存器:R7R0。 任一时刻,cpu只

4、能使用其中的一组寄存器,称为当前寄存器组,由程序状态字寄存器PSW中的RS1,RS0位的组合来决定。2. 位寻址区 内部RAM的20H2FH单元。既可作为一般RAM单元使用进行字节操作,也可对单元中的每一位进行位操作。这16个RAM单元总计有128个可直接寻址位,位地址为00H-7FH。3. 用户RAM区 剩余的80个单元为供用户使用的一般RAM区,单元地址为30H7FH。在一般应用中常把堆栈开辟在此区。1. 专用寄存器简介 (1)累加器A(或ACC-ACCumulator) 最常用的专用寄存器 (2)B寄存器(B register) 在乘除指令中用到B寄存器乘 MUL AB;A与B相乘,高字

5、节放在B中,低字节放在A中。 除 DIV AB;A除以B,商放在A中,余数放在B中。其他指令中,B同一般的RAM。 (4)数据指针DPTR 唯一一个供用户使用的16位寄存器;既可以按16位寄存器用,也可以用作两个8位寄存器:DPH(高8位) DPL(低8位)8位寄存器,它包含了程序状态信息。 CY:进位标志。在执行某些算术和逻辑运算时,可被硬件或软件置位或清除。 AC:辅助进位标志。当低4位数向高4位数进位或借位时,AC将被硬件置1,否则就被清除。 RS0,RS1:用软件置位或清除来确定工作寄存器区。 (0,0)区0(00H07H) (0,1)区1(08H0FH) (1,0)区2(10H17H

6、) (1,1)区3(18H1FH) OV:溢出标志。执行算术运算时,由硬件置位或清除 。加减法时:有符号运算,结果超过范围-128+127产生溢出。乘除也会影响OV,积大于255或除数为0,OV置位否则清零。 P:奇偶标志。每个指令周期都由硬件来置位或清零。A中值为1的位数为奇数,则P置位,否则清零。1. 堆栈的功用 堆栈主要是为子程序调用和中断操作而设立的,对应有两项功能:保护断点和保护现场。2. 堆栈的开辟 只能开辟在芯片的内部数据存储中。3. 堆栈指针 堆栈的两种操作:进栈和出栈。都是对栈顶单元进行的。堆栈指针SP用来指示栈顶。SP的内容就是堆栈栈顶的存储单元地址。4. 堆栈类型 两种不

7、同类型的堆栈结构 两种类型:向上生长型和向下生长型。80c51使用向上生长型堆栈,操作规则如下: 进栈操作:先SP加1,后写入数据。 出栈操作:先读出数据,后SP减1。 5. 堆栈使用方式 两种:自动方式和指令方式。 自动方式:在调用子程序或中断时,返回地址自动进栈。程序返回时,断点再自动弹回PC。 指令方式:使用专用的堆栈操作指令,进行进出栈操作。进栈指令为PUSH,出栈指令为POP。功能:用于存放编好的程序和表格常数 。如何工作:程序计数器(PC),也叫PC指针,是取指地址。上电复位后内容为0000H,即从0000H地址的指令顺序执行,最大为FFFFH,所以程序空间为64K。64K空间分为

8、片内ROM和片外ROM,但统一编址。 外 部内 部(EA=1)外 部(EA=0)00000FFF00000FFF1000FFFF在64K的程序存储器中,有5个特殊的单元,存放5种中断源的中断入口: 外部中断0 0003H 定时器0溢出 000BH 外部中断1 0013H 定时器1溢出 001BH 串行口 0023H2.4.1 P0口逻辑结构 P0口地址为80H,位地址为80H-87H。既可做一般I/O口,又可作地址/数据总线,某一位的内部结构如下图 图2.5 P0口电路逻辑2.4.2 P1口逻辑结构 P1口地址为90H,位地址为90H-97H。只能作为通用数据I/O口使用,电路逻辑如下图: 2

9、.4.3 P2口逻辑结构 P2口地址为A0H,位地址为A0H-A7H。 既可做通用I/O口,又可作系统高位地址线,某一位的内部结构如下图2.4.4 P3口逻辑结构 P3口地址为B0H,位地址为B0H-B7H。 虽然可做通用I/O口,但在实际应用中,它的第二功能信号更为重要,某一位的内部结构如下图单片机本身是一个复杂的同步时序系统,为保证同步工作方式的实现,单片机必须有时钟信号,以使其系统在时钟信号的控制下按时序协调工作。1. 振荡电路 2. 分频电路图2.9 80C51单片机的振荡电路 图2.10 80C51单片机的时钟电路框图 3. 晶振频率(1.233MHz) 4. 从外部引入脉冲信号驱动

10、时钟电路 图2.11 80C51外部脉冲源接法1. 拍节与状态即振荡周期,时钟脉冲频率的倒数,定义为拍节(P)。时钟信号的周期定义为状态(S)。1S=2P2. 机器周期 规定一个机器周期的宽度为6个状态,S1S6。例:若振荡脉冲频率为N,先12分频,则有N/12,而周期是频率的倒数,所以机器周期是1/(N/12)3. 指令周期执行一条指令所需要的时间,可包含1个、2个或4个机器周期。 复位是单片机的硬件初始化操作。复位后,单片机才能开始正常工作。2.6.1 复位方式与初始化状态 1. 复位方式 (1)加电复位:通过专用的复位电路产生复位信号。 (2)手动复位: 在实际应用中,总是把加电复位和手

11、动复位结合在一起,形成一个综合的复位电路。 PC0000HACC00HB00HPSW00HSP07HDPTR0000HP0P30FFHIPxxx00000B完成复位操作需24个状态周期 IE0 x000000BTMOD00HTCON00HTH0,TL0,TH1,TL100H SCON00HSBUF不定PCON0 xxxxxxxB2.7.1 单片机低功耗的意义 从便携等方面考虑 从芯片排列方面考虑 从可靠性方面考虑 从发展趋势方面考虑1. 待机模式(Idle Mode):一条把IDL置1的指令执行后,单片机进入待机工作状态。 (1)待机模式概述提供给CPU的内部时钟信号被切断,但时钟信号仍提供给

12、中断逻辑,定时器和串行口。 CPU的全部状态在待机期间都保留起来,包括:堆栈指针SP、程序计数器PC、程序状态字PSW、累加器ACC以及所有的工作寄存器。 可以通过被允许的中断或复位来终止待机方式 。中断结束待机,IDL自动被硬件清除;复位信号使RST保持两个机器周期,“复位”也自动清除IDL 两种节电运行方式(待机方式和掉电方式),由PCON的有关位来控制 。 SMOD波特率倍增位,1时,串口1,2,3方式,波特率加倍。 GF1,GF0通用标志位。 PD掉电方式位,1时,触发掉电工作方式。 IDL待机方式位,1时,触发待机方式。 PD和IDL同为1时,则触发掉电工作方式。(一)填空题通过堆栈

13、实现子程序调用,首先要把( )的内容入栈,以进行断点保护。调用返回时再进行出栈操作,把保护的断点送回( )。通常单片机有两种复位操作,即( )和( )。复位后,PC值为( ),SP值为( ),通用寄存器的当前寄存器组为( )组,该组寄存器的地址范围是从( )到( )。80C51单片机中,一个机器周期包含( )个状态周期,一个 状态周期又可划分为( )个拍节,一个拍节为( )个振荡脉冲周期。因此,一个机器周期应包含( )个振荡脉冲周期。80C51中惟一一个可供用户使用的16位寄存器是( ),它可拆分为两个8位寄存器使用,名称分别为( )和( )。单片机程序存储器的寻址范围由PC的位数决定。80C51的PC为16位,因此程序存储器地址空间是( )。2.取指操作后,PC的值是( )(A)当前指令前一条指令的地址(B)当前正在执行指令的地址(C)下一条指令的地址(D)控制寄存器中指令寄存器的地址3.80C51单片机中,设置堆栈指针SP为37H后就发生子程序调用,这时SP的值变为( )(A)37H (B)38H (C)39H (D)3

温馨提示

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

评论

0/150

提交评论