单片机的结构和原理_第1页
单片机的结构和原理_第2页
单片机的结构和原理_第3页
单片机的结构和原理_第4页
单片机的结构和原理_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 单片机的结构和原理任务一 内部存储器 一、 AT89S51单片机基本结构 (1)CPU:8位数据宽度的处理器,能处理8位二进制数据或代码。 (2)数据存储器RAM:片内256个字节,低128个字节用来写入和读出数据,可供用户使用;高128个字节为专用寄存器,用于存放控制指令数据。 (3)程序存储器ROM:片内4KB,用于存放用户程序和数据表格。 (4)并行I/O口:4个8位并行I/O口,用于对外部数据的传输。 (5)全双工串行口:1个,用于与其他设备的串行数据传送 (6)中断系统 (7)定时/计数器(ROM)图2-1二、AT89S51单片机存储器结构物理上有4个存储器地址空间:逻辑上有

2、3个存储器地址空间:片内程序存储器空间(4KB)片外程序存储器空间(64KB)片内数据存储器空间( 256B )片外数据存储器空间( 64KB )64KB 程序存储器:取指用MOVC指令访问256B 片内数据存储器:MOV指令和其它取数指令访问64KB 片外数据存储器:MOVX指令访问 1、单片机程序存储空间由片内程序存储器和扩展的片外程序存储器组成: /EA0时,CPU只访问外部程序存储器,内部程序存储器失效,程序存储器容量为64K; /EA=1时,CPU使用内部程序存储器,但当访问地址超过内部程序存储器容量时自动转向访问外部程序存储器。AT89S51内部程序存储器中一些特殊地址地使用: 开

3、机程序入口:0000H 外部中断INT0中断入口:0003H 定时器/计数器T0中断入口:000BH 外部中断INT1中断入口:0013H 定时器/计数器T1中断入口:001BH 串行中断的中断入口:0023H 2 数据存储器 数据存储器用于存放运算中间结果、数据暂存和缓冲、标志位、待调试的程序等。数据存储器在物理上和逻辑上都分为两个地址空间:一个是片内256字节的RAM,另一个是片外最大可扩充64K字节的RAM。访问片内RAM使用MOV指令,访问片外RAM使用MOVX指令。 对片外RAM只能采用间接寻址方式,用R0、R1和DPTR作为间址寄存器;前两者是低8位地址指针,寻址范围为256B,而

4、DPTR是16位地址指针,故寻址范围可达64K字节。 片内数据存储器在物理上又可分为二个不同的区: (1)00H7FH(0127)单元组成低128字节的片内RAM区,对其访问可采用直接寻址或间接寻址的方式 。 (2)80FFH(128256)单元组成高128字节的专用寄存器(SFR)区,只能采用直接寻址方式来访问,各专用寄存器功能下面再述。 片内RAM: (1)工作寄存器区:低128个字节中,地址从00H-1FH共32个字节组成4组工作寄存器,每组8个工作寄存器R0-R7。某时刻CPU只能用其中一组,用哪一组由特殊功能寄存器PSW(程序状态字寄存器)中的RS0(3)和RS1(4)的组合决定。没

5、被使用的工作寄存器可以做通用数据存储器使用。 (2)位寻址区:片内RAM地址从20H-2FH的16个地址,既可以字节寻址,也可以位寻址(位地址00H-7FH)。 (3)数据存储区:片内RAM地址从30H-7FH部分为供用户使用的一般RAM,通常堆栈在此。 (4)特殊功能寄存器区(SFR):片内RAM的高128个字节。普通51系列单片机共有21个特殊功能寄存器,离散的分布在80H-FFH地址范围内。特殊功能寄存器SFR: 11个具有位寻址能力,这些专用寄存器离散地分布在片内RAM的高128字节地址中。专用寄存器并未占满80HFFH整个地址空间,对空闲地址的操作是无意义的。若访问到空闲地址,则读入

6、的是随机数。这些专用寄存器见 所示。 表2-2 下面简述单片机有关的专用寄存器的功能: (1)Acc: 累加器A,Acc是一个8位的寄存器,简称为A,是CPU执行指令时使用最频繁的寄存器,用来存一个操作数或中间结果。 (2)B寄存器:8位寄存器,主要用于乘除运算。乘法运算时,积低8位存于A,积高8位存于B;除法运算时,商存于A,余数存于B。 (3)堆栈指针SP:堆栈是存储区中一个存放数据地址的特殊区域,主要是用来暂存数据和地址。 (4)端口P0P3:专用寄存器P0P3分别是IO端口P0P3的锁存器。 (5)串行数据缓冲器SBUF:串行数据缓冲器SBUF用于存放待发送或已接收到的数据。 (6)定

7、时器计数器:51子系列中有2个16位定时器计数器T0和T1,52子系列则增加了一个16位定时器计数器T2。 (7)DPTR数据指针寄存器:DPTR是一个16位的寄存器,高字节可用DPH和低字节用DPL来表示,他可作为一个16位或两个8位的寄存器来处理。当对外部64KB数据存储器寻址时,用他作为间接寻址寄存器;在访问程序存储器时可用作基址寄存器。(8) 程序状态字寄存器PSW PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。可以进行位寻址。PSW各位的定义如下: D7HD6HD5HD4HD3HD2HD1HD0HCYACF0RS1RS0OV /PPSW位地址字节地址D0H CY(PS

8、W. 7):进位标志,在进行加或减运算时,如果操作结果最高位有进位或借时,CY由硬件置“1”,否则清“0”。在进行位操作时,CY又可以被认为是位累加器,他的作用相当于CPU中的累加器A。 AC(PSW.6):辅助进位标志(又称半进位),在进行加或减运算时,低四位数向高四位产生的进位或借位,将由硬件置“1”,否则清“0”。AC位可用于BCD码调整时的判断位。 F0(PSW.5):用户标志位,由用户置位或复位。他可作为用户自行定义的一个状态标记。 RS1 RS0(PSW.4 PSW.3):工作寄存器组指针,用以选择CPU当前工作的寄存器组。RS1 RS0与寄存器组的对应关系见 的(a)所示。 表2

9、-1 OV(PSW.2):溢出标志,当进行算术运算时,如果产生溢出,则由硬件将OV位置1,否则清“0”。 当执行有符号数的加法指令ADD或减法指令SUBB时,当D6位有向D7位的进位或借位时 D6CY=1时,而D7位没有向CY位的进位或借位D7CY =0时,则OV=1或D6CY =0,D7CY=1则OV=1所以溢出的逻辑表达式为: OV= D6CY D7CY F1(PSW.1):用户标志位,同F0。 P(PSW.0):奇偶标志位,该位始终跟踪累加器A内容中“1”的奇偶性。当采用奇校验时;如果有奇数个“1”,则P置“0”,否则置“1”;若采用偶校验,如果有偶数个“1”,则P置“0”,否则置“1”

10、。凡是改变累加器A中内容的指令均会影响P标志位。 另外还有IP、IE、TMOD、TCON、SCON和PCON寄存器将在以后作介绍。 系统复位后,除SP为07H,P0P3为FFH外,其余均为“0”。习题 1. MCS-51/52单片机的存储器从物理结构上和逻辑上分别可划分几个空间? 2. MCS-51单片机片内256B的数据存储器可分为几个区?分别作什么用? 3. CPU如何确定和改变当前工作寄存器组? 4.位地址7CH与字节地址7CH如何区别?位地址7CH具体在片内RAM中什么位置? 图2-1 MCS 51/52系列单片机内部结构框图 表2-1 单片机片内RAM功能表 (a) 工作寄存器表 (

11、b) RAM 位地址表 图2-2 MCS-51/52系列单片机存储器空间结构 表2-2单片机特殊功能寄存器SFR 表下续接上表任务二 单片机最小系统设计 1 管脚说明VCC:供电电压。 GND():接地。 P0口: P0口是一个双功能的端口;地址/数据分时复用口和通用I/O口;具有高电平、低电平和高阻抗3种状态的I/O端口称为双向I/O端口。P0口作地址/数据总线复用口时,相当于一个真正的双向I/O口,而用作通用I/O口时,由于引脚上需要外接上拉电阻,端口不存在高阻(悬空)状态,此时P0口只是一个准双向口;为保证引脚上的信号能正确读入,在读入操作前应首先向锁存器写1;单片机复位后,锁存器自动被

12、置1; 一般情况下,如果P0口已作为地址/数据复用口时,就不能再用作通用I/O口使用;P0口能驱动8个TTL负载;可以被定义为数据/地址的低八位。 P1口: P1口由于有内部上拉电阻,没有高阻抗输入状态,所以称为准双向口。作为输出口时,不需要再在片外接上拉电阻;P1口读引脚输入时,必须先向锁存器写入1,其原理与P0口相同;P1口能驱动4个TTL负载;在FLASH编程和校验时,P1口作为低八位地址接收。 P2口: P2口用作高8位地址输出线应用时,与P0口输出的低8位地址一起构成16位的地址总线,可以寻址64KB地址空间;当P2口作高8位地址输出口时,其输出锁存器原锁存的内容保持不变;作为通用I

13、/O口使用时,P2口为准双向口,功能与P1口一样;P2口能驱动4个TTL负载。P3口: P3端口和P1端口的结构相似,能驱动4个TTL负载,P3口也可作为AT89C51的一些特殊功能口,如下所示: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) 总结: 单片机的P0-P3口均是8位I/O口,其中P0为真正的双向口,P1、P2、P3为准双向口,P3口具有第

14、二引脚功能。 P1口的结构最简单,用途也单一,仅作为数据输入/输出端口使用;P2端口在功能上兼有P0端口和P1端口的特点,P2口可以作为I/O口使用,也可以作为地址总线使用。P0端口能驱动8个TTL负载,如需增加负载能力,可在P0总线上增加总线驱动器。P1、P2、P3端口各能驱动4个TTL负载。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:ALE是地址锁存允许信号端,这是一个低电平有效的信号端。 当ALE/PROG接上低电平的时候,CPU对外部存储器进行存取时,用来锁住地址线的低位地址。 当系统没有使用外部存储器(RAM/ROM)时,ALE可

15、作为外部时钟,频率=晶振的1/6。 在烧录EPROM时,ALE作为烧录时钟的输入端。 /PSEN:外部程序存储器读选通信号:在读外部ROM时PSEN(非)低电平有效,以实现外部ROM单元的读操作,全拼为Program Store Enable。 1、内部ROM读取时,PSEN不动作; 2、外部ROM读取时,在每个机器周期会动作两次; 3、外部RAM读取时,两个PSEN脉冲被跳过不会输出; 4、外接ROM时,与ROM的OE脚相接。 /EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地);当/EA端保持高电平时,此间访问内部程序存储

16、器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端XTAL2:振荡器反相放大器的输出端时钟振荡器:AT89C5l 中有一个用于构成内部振荡器的高增益反相放大器,引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路如图所示。外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳

17、定性,如果使用石英晶体,推荐电容使用30pF10pF,而如使用陶瓷谐振器建议选择40pF10pF。2单片机最小应用系统 单片机的主要功能是负责整个系统的控制,不承担复杂的数据处理任务,因此在设计单片机最小系统时通常选用AT89C5l、AT89C52、AT89S51、AT89S52(S系列芯片支持ISP功能,即在线编程/烧录)等型号的8位单片机作为微处理单元。图1 单片机最小系统的结构框图一个典型的单片机最小系统一般由时钟电路、复位电路、片外RAM、片外ROM、按键、数码管、液晶显示器、外部扩展接口等部分组成,图1 、图2分别给出了单片机最小系统的结构框图、原理图。图2原理图1、时钟电路 时钟电

18、路为整个单片机系统产生时间基准。是单片机系统必须的部分。单片机内部具有一个高增益反相放大器,用于构成振荡器。通常在引脚XTAL1和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,可以根据情况选择6MHz、12MHz或24MHz等频率的石英晶体,补偿电容通常选择30pF左右的瓷片电容。 2、复位电路 复位电路是单片机系统必须的,用来为单片机提供正确的复位信号。单片机小系统采用上电自动复位和手动按键复位两种方式实现系统的复位操作。上电复位要求接通电源后,自动实现复位操作。手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。3、ISP下载电路MAX232芯片是美信公司专

19、门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。 3 单片机的系统扩展一 前言 1.系统扩展的含义 单片机中虽然已经集成了CPU、I/O口、定时器、中断系统、存储器等计算机的基本部件(即系统资源),但是对一些较复杂应用系统来说有时感到以上资源中的一种或几种不够用,这就需要在单片机芯片外加相应的芯片、电路,使得有关功能得以扩充,我们称为系统扩展(即系统资源的扩充)。 2.系统扩展分类-单一功能的扩展 综合功能的扩展3.系统扩展需要解决的问题- 单片机与相应芯片的接口电路连接(即地址总线、数据总线、控制总线的连接)与编程。4.扩展使用的三总线 总线:连接系统中各扩展部

20、件的一组公用信号线。 地址总线:传出单片机送出的地址信号,进行存储单元和I/O口的选择。地址总线是单向的,从单片机发出。8051单片机16位地址总线 数据总线:单片机和存储器单元及单片机和I/O端口之间传输数据。数据总线:双向 控制总线:一组控制信号线的总称。有单片机发出的,也有从其他部件发向单片机的。对于一条控制线,其传送方向是单向的。 51系列单片机没有专用的对外地址总线和数据总线,其P0口和P2口既是通用I/O口,同时P0口还是分时复用的双向数据总线和低8位地址总线(一般需要加一级锁存器),而P2口则是高8位地址总线。单片机扩展的实现(总线结构)MCS-51单片机寻址范围位64K需要16

21、根地址线以P0口的8位口线作地址/数据线(复用线)以P2口的8位口线作高8位地址线所谓复用:既可作地址线(低8位),又可作数据线复用技术:增加一个8位锁存器,通过对锁存器的控制实现对地址(低8位)和数据的分离扩展时常用的控制信号1)ALE: P0口的地址锁存信号,用于低8位地址锁存控制,高电平有效2)PSEN:扩展程序存储器(外部ROM)读选通信号(低电平有效)3)EA:片内/片外程序存储器访问的控制信号;EA=1时,在片内存储器范围内访问片内程序存储器,当超过片内存储器范围,自动访问片外程序存储器;当EA=0时,只能访问片外程序存储器。 4)RD和WR:扩展外部数据存储器(RAM)的读、写选通信号(低电平有效) MCS-51访问外部程序存储器时序波形P1P2S1XTAL2(OSC)S2S3S4S5S6P1P1P1P1P1P1P2P2P2P2P2ALEPSENRD WR地址:A15A8地址:A15A8P2A7A0指令A7A0P0一个机器周期1、程序存储器的扩展 MCS-51外扩程序存储器结构图 二、MCS-51单片机存储器的扩展程序存储器的一般连接方式8031扩展一片2732电路图 工作时,ROM中的信息只能读出,要用特殊方式写入(固化信息),失电后可保持信息不丢失。 1. 掩膜ROM:不可改写ROM,由生产芯片的厂家固化信息。在最后一道工序用掩膜

温馨提示

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

评论

0/150

提交评论