《MCS单片机硬件结构.pptx》由会员分享,可在线阅读,更多相关《MCS单片机硬件结构.pptx(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 8位CPU 片内128B RAM 片内4KB ROM/EPROM(8031无)特殊功能寄存器区 SFR 2个优先级的5个中断源结构 4个8位并行口:P0、P1、P2、P32.1 MCS-51单片机主要功能特点一、MCS-51单片机的主要上页下页回目录8051/8751功能特点第1页/共62页 2个16位定时器/计数器T/C 1个全双工串行口UART 布尔处理机 位处理机(10)64KB外部RAM地址空间(11)64KB外部ROM地址空间(12)片内时钟电路及振荡器(13)指令系统(111条)上页下页回目录通用异步收发器半双工 即可接受又可发送,但不同时单工 只接收或只发送可同时接收或发送16
2、条地址线第2页/共62页区别:8051/8751单片机中含有 ROM/EPROM,而 8031中没有,使用时需外接一片 EPROM型号ROMEPROMRAMT/CI/OINT803280528KB87528KB 256B 256B 256B333并串444111666二、MCS-51系列单片机的差异51子系列(基本型)上页下页回目录型号ROMEPROMRAMT/CI/OINT803180514KB87514KB128B128B128B222并 串44411155580318051基本型803152子系列请见:P20 表1-4 P21 表1-5 51系列产品 第3页/共62页2.2 MCS-51
3、单片机内部结构分析上页下页回目录RAM P0口串行口 定时器 计数器特殊功能寄存器(SFR)中断系统微处理器ALU控制逻辑 P2口 P1口 P3口ROM/EPROMCPU内部 总线VccVssXTAL1XTAL2PSEN EAALERESETP2.0P2.7P0.0P0.788P1.0P1.78P3.0P 3.788051/8751面向用户的结构8031共40条引线用户的内特性用户外特性图2-2 MCS-51功能 框图P31P31 图2-1是其物理结构框图逻辑结构框图第4页/共62页1、中央处理器2、存储器3、I/O口 MCS-51单片机有 4 个 8 位并行口,1 个全双工串行口 UART,
4、2 个 16 位的 T/C。由运算器和控制逻辑组成。主要功能是产生各种控制信号,控制存储器、I/O端口的数据传送、数据运算、及位处理等操作等。采用SFR集中控制 程序存储器ROM/EPROM(8031中没有,需外接),存放程序和编好的表格及常数等。数据存储器RAM:存放中间结果、数据暂存、缓冲、及存放标志位等。上页下页回目录8051/8751第5页/共62页40引脚,双列直插式结构上页下页回目录RST/VPDP3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2
5、.7P0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0RXD TXD INT0 INT1 T0 WR RDT1 XTAL1XTAL2VssVccEA/VPPALE/PROGPSEN803180518751403938373635343332313029282726252423222112345678910111213141516171819202.3 MCS-51单片机的引脚功能用户外特性第6页/共62页一、51单片机的管脚功能1、按功能分类I/O口线 P0、P1、P2、P3 共32条电 源 Vcc、Vss 共2条时 钟 XTAL1、XTAL2 共2条上页下页回目录控制口线 PS
6、EN、ALE、EA/VPP、RESET 共4条数据/地址复用口I/O口双功能口第7页/共62页2、管脚的功能(1)电源与时钟Vcc:接+5V电源端 Vss:接地端XTAL1:片内振荡电路输入端XTAL2:片内振荡电路输出端内时钟方式:在XTAL1、XTAL2上外接定时元件,使其形成自激振荡器。时钟电路:内时钟方式外时钟方式上页下页回目录第8页/共62页 定时元件采用由石英晶体和电容组成并联谐振电路。晶体和电容尽可能靠近单片机芯片。单片机XTAL1XTAL21918C1C2电容通常选择为30PF左右振荡频率1.2MHz12MHz晶振内时钟方式电路图上页下页回目录第9页/共62页单片机XTAL2X
7、TAL1外时钟方式:XTAL1接地,XTAL2接外部振荡器外时钟方式电路图外部振荡源+5V1819上拉电阻频率低于12MHz上页下页回目录OC门第10页/共62页复位信号:高电平复位CPU,低电平CPU工作EA/VPPALEPSEN名称功 能片外取指信号(片外程序存储器读)输出端低电平有效。通过P0口读回指令或常数。控制的是片外程序存储器RESET 控制信号地址锁存信号。ALE低电平时,P0口出现数据信息;ALE高电平时,P0口出现地址信息。程序存储器选择信号 上页下页回目录EA=0 时,选外部ROM;1,地址小于4k时,选内部ROM地址大于4k时,选外部ROMP0口是数据/地址复用口用下降沿
8、 锁存P0口的低8位地址到外部锁存器第11页/共62页寄存器 内 容寄存器 内 容表 2-2 复位后内部寄存器状态PC 0000HACC 00HB 00HPSW 00HSP 07HDPTR 0000HP0P3 0FFHIP 00000BIE 000000BTMOD 00HTCON 00HTH0 00HTL0 00HTH1 00HTL1 00HSCON 00HSBUF 不定PCON 0 000B上页下页回目录第12页/共62页803180518751VSSVCCRST409200.47FR151kR2 51k+5V复位电路手动复位KR上电自动复位KR高电平要保持10ms以上+5VRESET高电平
9、有效上页下页回目录第13页/共62页 I/O口P0口:三态 双向 复用口地址/数据控制读锁存器写锁存器DCLQQP0.x锁存器T0T1MUXP0.x引脚内部总线读引脚P0口位结构Vcc11001“读”01100P0口作地址/数据复用总线上页下页回目录D0D7A0A7第14页/共62页P0口作地址/数据复用总线从P0口输出数据或地址信息的过程:控制端高电平MUX接反相器输出端输出级T1连接与门开锁信号驱动T0驱动电路接通P0口输出数据/地址信息从P0口输入数据信息:引脚信号从输入三态缓冲器进入内部总线上页下页回目录“读”第15页/共62页P0口:作通用I/O口使用地址/数据控制读锁存器写锁存器D
10、CLQQP0.x锁存器T0T1MUXP0.x引脚内部总线读引脚P0口位结构Vcc外接上拉电阻0100读读修改写功能上页下页回目录1ANL P0,A(P0)(A)P0“读”Vcc第16页/共62页控制端低电平与门输出低电平T0截止输出漏级开路外接上拉电阻MUX接锁存器Q端P0口作通用I/O口使用输出时:P0口作通用I/O口使用输入时:先将锁存器写“1”T0、T1截止读引脚信号P0P3口线上的“读修改写”是通过上面一个三态门实现的。P0的驱动能力:驱动8个TTL门上页下页回目录锁存器Q与T1连接第17页/共62页P1口:准双向口读锁存器写锁存器内部总线读引脚DCLQQP1.x锁存器TP1.x引脚V
11、cc内部上拉电阻010101输出输入上页下页回目录“读引脚”P1口位结构第18页/共62页作通用I/O口输出时:将“1”写入锁存器输出高电平将“0”写入锁存器Q 1,T导通输出低电平作通用I/O口输入时:口锁存器必须写“1”先将“1”写入锁存器,使T截止,口线上的数据取决于外部输入Q 0,T截止 P1口的驱动能力:驱动4个TTL门上页下页回目录内部总线为引脚为“高电平”“低电平”“1”“0”“读”准双向口第19页/共62页P2口:准双向口地址控制读锁存器写锁存器内部总线读引脚DCLQQP2.x锁存器TP2.x引脚P2口位结构VccMUX上拉电阻上页下页回目录P2比P1多一个输出控制第20页/共
12、62页P2口作通用I/O口使用时:准双向口。MUX倒向左边,输出级与锁存器“Q”端接通,P2口I/O操作完全与P1口相同P2口作地址总线高8位使用时:在CPU的控制下,MUX倒向右边,接通内部地址总线,P2口的口线状态取决于片内输出的地址信息 P2口的驱动能力:驱动4个TTL门上页下页回目录第21页/共62页P3口位结构第二输入功能P3口:双功能口读锁存器写锁存器内部总线读引脚DCLQQP3.x锁存器TP3.x引脚Vcc上拉电阻第二输出功能11上页下页回目录0第22页/共62页P3作第一功能口使用时:输出控制线为高电平,与非门的输出取决于锁存器“Q”端的状态,P3口的I/O操作和P1口相同。P
13、3作第二功能口使用时:相应的口线锁存器必须为“1”,与非门的输出取决于第二功能输出线。P3的驱动能力:驱动4个TTL门上页下页回目录 第二功能输入时,信号取自第一个缓冲器的输出端;第二个缓冲器的输出,仍是第一功能的读引脚信号缓冲器。第23页/共62页P3口的第二功能状态P3.0RXD串入(接收端)P3.1TXD串出(发送端)P3.6 WR外部RAM写信号P3.3INT1外部中断1输入P3.4T0计数器0输入P3.5T1计数器1输入第二功能作 用口线P3.2INT0外部中断0输入P3.7 RD外部RAM读信号上页下页回目录第24页/共62页ALEP3.1P3.2P3.3P3.4P3.5P3.6P
14、3.7P3.0EAPSENRST803180518751VccVssP1口P2口P0口373GE+5VA0A7A8A15D0D7I/OXTAL1XTAL2RXDTXDINT0INT1T0T1WRRD控制总线CB二、51单片机的三总线结构数据总线 DB地址总线 AB利用三条总线,可方便地进行系统扩展晶振 1.212MHZ上页下页回目录8031第25页/共62页地址总线地址总线ABAB(A A0 0 A A1515)宽)宽1616位位 片外寻址片外寻址64KB64KBP0.0P0.7ALE 锁存到锁存器373A0A7P2.0P2.7A8A15数据总线数据总线DBDB(D D0 0 D D7 7)宽
15、)宽8 8位位 双向、三态双向、三态 P0.0P0.7D0D7控制总线控制总线CB CB 宽宽1212位位 P3口的第二功能状态加上控制线PSENEAALERESET上页下页回目录第26页/共62页80318051875140393837363534333231302928272625242322211234567891011121314151617181920上页下页回目录RAM P0口串行口定时器计数器特殊功能寄存器(SFR)中断系统微处理器ALU控制逻辑 P2口P1口 P3口ROM/EPROMCPU内部 总线VccVssXTAL1XTAL2PSEN EAALERESETP2.0P2.7P
16、0.0P0.788P1.0P1.78P3.0P 3.788051/8751面向用户的内部结构8031共40条引线用户的内特性用户外部特性小结:面向用户的特性内部外部裸机第27页/共62页仅用来访问外部程序存储器和外部数据存储器2.4 MCS-51的存储器组织存储器数据存储器程序存储器 对单片机来讲,ROM和RAM的寻址机构和寻址方式是分开的。上页下页回目录ROM、EPROM E2ROM或FLASHRAM按地址访问的一维线性(逻辑)空间按地址访问的一维线性(逻辑)空间PSENWRRD单片机常驻容量小仅256B容量大达64KB普林斯顿结构哈佛结构普林斯顿结构第28页/共62页从物理上分,MCS-5
17、1分为4个存储空间片内程序存储器 ROM片内数据存储器 RAM片外程序存储器 ROM片外数据存储器 RAM(I/O)从逻辑上分,MCS-51分为3个逻辑空间 片内、外统一编址的程序存储器地址空间 256B片内数据存储器地址空间 64KB片外数据存储器或I/O地址空间上页下页回目录片内固有需要扩展需要扩展PC第29页/共62页从功能上分,MCS-51分为5个地址空间 程序存储器 ROM 片内数据存储器 RAM 特殊功能寄存器区 SFR 位寻址区 外部扩展的数据存储器 RAM(I/O)区上页下页回目录第30页/共62页一、程序存储器8051 内部有4KB ROM地址:0000H 0FFFH8051
18、 外部的ROM地址:1000H FFFFH8031 内部没有ROM/EPROM需要片外扩展,使用 时接成低电平 EA地址:0000H FFFFH上页下页回目录接地第31页/共62页上页下页回目录EA=1内部外部EA=00000H0FFFH0FFFH0000H1000H外部FFFFH8051/8751803151系列程序存储器配置图4KB接地第32页/共62页二、内部数据存储器 RAM 地址:00H FFH内部数据存储器从物理上分为几个不同的块:MCS-51128B RAM(地址00H7FH)128B SFR (地址80HFFH)上页下页回目录256B第33页/共62页上页下页回目录内部RAMS
19、FR特殊功能寄存器7FH00HFFH80HMCS-51内部RAM配置内部数据存储器配置图256B第34页/共62页1、内部RAM区(MCS-51)MCS-51内部RAM只有128B内部RAM区分为三部分地址:00H7FH上页下页回目录内部RAM7FH00HSFR特殊功能寄存器FFH80H7FH00H位寻址区2FH20H工作寄存器区1FH00H7FH30H数据缓冲区80个字节为真正的 RAM16个字节分为128个RAM位32个字节分为四个工作寄存器区每个区8个工作寄存器第35页/共62页0FH08H17H10H2FH20H7FH30H0区(8字节)1区(8字节)2区(8字节)3区(8字节)位寻址
20、区数据缓冲区80个字节RAM只能按字节寻址16个字节分为128个RAM位可按位亦可按字节寻址四个工作寄存器区内部RAM区功能配置图R7R0R7R0R7R0R7R000H1FH07H00H1FH18H布尔处理器上页下页回目录每个区,8个工作寄存器R0 R7亦可作普通RAM使用第36页/共62页 通用寄存器组 32个RAM单元 共4个区,每个区8个通用工作寄存器 R0R7“区”的选择由程序状态字PSW中的RS1(PSW.4)和RS0(PSW.3)确定 工作寄存器区地 址RS1 RS0 2 区10H 17H1 0 3 区18H 1FH1 1上页下页回目录 0 区00H 0 007H 1 区08H 0
21、 10FH第37页/共62页 位寻址区 (16个RAM单元 VS 12个SFR)字节地址:20H 2FH 16个 RAM 字节共128个 RAM 位 位地址:00H 7FH 12个SFR中的93位具有位寻址功能位寻址区128个RAM位93个SFR位 布尔处理机数据存储器的主要组成部分上页下页回目录布尔处理机共221位位地址请参看书的P43:图2-15 图 2-16直接地址能被8所整除的构成其中3位无定义第38页/共62页 用户RAM区(数据缓冲区)共80个单元字节地址:30H 7FH8051单片机复位时,堆栈指针SP指向 07H 单元片内RAM的部分单元可用作堆栈51的栈区不是固定的,为避开工
22、作寄存器区、位寻址区,用户堆栈一般设置在 30H 7FH 之间上页下页回目录真正的RAM单元SP 指针是可编程的寄存器第39页/共62页 程序计数器PC$16位专用寄存器,寻址范围64KB$此时的程序是顺序执行的2.专用寄存器区$通电时自动复位,运行时可手动复位,复位 后,PC的内容自动清零$用来存放下一条指令地址。CPU取指令时,将PC内容经地址总线送到程序存储器,从该地址单元取回指令,译码并执行;同时,PC自动加1$如果程序需要转移,可在程序中安排转移或条件转移指令(JMP或JNC)、调用子程序指令CALL等上页下页回目录PC 0000H 系统的启动地址 23个专用(3个属于52)其中5个
23、是双字节寄存器,PC物理上是独立的,其余22个属于SFR,共占用26个字节第40页/共62页PC 管理程序执行顺序的过程:74H08H24H04H02H22H00H78H74HPC0000HPCMOV A,#08H ADD A,#04HLJMP,2200HMOV R0,#74H0004H0003H0002H0001H0000H2200H2201H0005H 0006H 0007H存储器 指令寄存器 74HPC0001H 08HPC0002H 24HPC0003H 04HPC0004H 02HPC 22HPC 00HPC0005H0006H0007HPC2200H 78HPC2201H 74HP
24、C2202H2202HMOV A,#08HADD A,#04HLJMP 2200HMOV R0,#74H上页下页回目录下一条指令第41页/共62页 累加器A 地址:0E0H最常用的一个专用寄存器大部分单操作数指令的操作数取自A很多双操作数指令的一个操作数取自A算术运算和逻辑运算的结果放在A或AB对中指令系统采用A 作为累加器的标识符例:INC A;执行A中的内容加1操作ADD A,#data;执行A (A)+#data 操作上页下页回目录位寻址功能第42页/共62页 寄存器B 地址:0F0H 8位寄存器与累加器 A 配合使用,一般用于乘除法运算寄存器 B 存放第二操作数、乘积的高8位字节除法的
25、余数部分例:MUL A B;执行 (A)(B)B ADIV A B;执行(A)/(B)商 A 余 B 上页下页回目录次累加器作 一 RAM单元用 B余 B第43页/共62页 程序状态字PSW 地址:0D0H 8位寄存器,存放程序的状态信息CY D7 D6 D5 D4 D3 D2 D1 D0ACF0RS1RS0OV P格式如下:进/借位标志CY(PSW.7)加法运算时,如果D7有进位,则CY=1,否则CY=0减法运算时,如果D7有借位,则CY=1,否则CY=0布尔运算中被定义为位累加器上页下页回目录PSWD7 D0CY第44页/共62页辅助进位标志AC(PSW.6)8位加法运算时,如果低半字节的
26、D3向D4有进位,则 AC=1,否则AC=08位减法运算时,如果低半字节的D3向D4有借位,则AC=1,否则AC=0标志F0(PSW.5)由用户定义可用软件来使它置“1”、或清“0”可由软件测试F0来控制程序流向上页下页回目录D7D4 D3D0AC第45页/共62页工作寄存器区选择位RS1、RS0(PSW.4、PSW.3)通过软件来改变RS1、RS0的组合,以确定当前工作寄存器区。上页下页回目录工作寄存器区地 址RS1 RS0 2 区10H 17H1 0 3 区18H 1FH1 1 0 区00H 0 007H 1 区08H 0 10FHPSW.4 PSW.3用布尔操作来改变第46页/共62页O
27、V=C6 C7+溢出标志OV(PSW.2)作为有符号数加、减法时由硬件置位或清除,以指示运算结果是否溢出执行加/减法指令时,用Ci 表示i位向i+1有进/借位a)第6位向第7位有进/借位,而第7位不向CY进/借位时b)第6位不向第7位进/借位,而第7位向CY有进/借位时 OV=1,否则 OV=0若OV=1,意味着加/减法的结果已超出了一个字节 有符号补码数 所表示的范围(-128 +127)上页下页回目录a)OV=1 0b)OV=0 1第47页/共62页奇偶标志P(PSW.0)每个指令周期都由硬件置位或清零,以表示累加器A中值为“1”的位数的奇偶性 该标志可用于串行数据通讯,验证数据传输的可靠
28、性上页下页回目录P=1 A中1的个数为奇数0 A中1的个数为偶数第49页/共62页?思 考试分析执行指令 MOV A,#7FHADD A,#47H后,程序状态字 PSW中 CY,AC,OV,P 的状态是什么?上页下页回目录第50页/共62页D7D6D5D4 D3D2D1D0 0 1 1 1 1 1 1 1 (7FH)0 1 0 0 0 1 1 1 (47H)01100011(C6H)MOV A,#7FHADD A,#47H#7FHACY=0AC=1执行第一条指令后P=1,执行第二条指令后P=0此时C6=1、C7=0 则OV=C6 C7=1+上页下页回目录有无第51页/共62页 堆栈指针 SP8
29、位寄存器,存放栈顶地址保护CPU现场和断点地址作用:工作方式:“先进后出”或“后进先出”数据压入堆栈时,SP自动加1数据弹出堆栈时,SP自动减1 SP始终指向栈顶地址上页下页回目录中断时转子时栈区“向上生成”按“先进后出”工作原则,由SP组织的内部 RAM区域,被称为堆栈。主程序第52页/共62页SPSP例:堆栈操作建立堆栈压入操作弹出操作 60H61H62H63H64HA的内容B的内容SPMOV SP,#60HPUSH APUSH BPOP direct SP上页下页回目录direct栈 底第53页/共62页 数据指针 DPTR16位寄存器,高字节用DPH表示,低字节用DPL表示对外部 RA
30、M 或 I/O 口寻址,范围64KB例:MOVX A,DPTRMOVX DPTR,A;将外部RAM中地址为DPTR的单元内容读到A中;将A中的内容写到外部RAM中地址为DPTR的单元MOVC A,A+DPTR;采用基址+变址的方法读程序存储器内的表格常数;DPTR为基址寄存器,A为变址寄存器上页下页回目录(DPTR)AP3.7 RDP3.6 WR(A)DPTR(A)+(DPTR)APSEN第54页/共62页 I/O 端口P0 P3 地址:80H 90H 0A0H 0B0H专用寄存器P0 P3分别是端口P0 P3的锁存器 串行数据缓冲器 SBUF 地址:99H存放欲发送的数据存放已接收的数据一个
31、地址:99H 定时/计数器 T0 T1 MCS-51系列有2个16位定时/计数器T0、T1MCS-52系列增加了1个16位定时/计数器T2上页下页回目录SBUF两个缓冲器共用“写”发送缓冲器“读”接受缓冲器MOV SBUF,AMOV A,SBUF第55页/共62页 其他控制寄存器IP0B8H 中断优先控制寄存器IE0A8H 中断允许控制寄存器TMOD89H 定时/计数器方式控制寄存器TCON88H 定时/计数器控制寄存器SCON99H 串行口控制寄存器PCON97H 电源及波特率选择控制上页下页回目录地址名称作 用第56页/共62页寻址空间64KB采用寄存器间接寻址方式间址寄存器有R0、R1(
32、256B)数据指针DPTR(64KB)采用MOVX指令单片机产生读/写信号,对外部RAM产生读写操作3、外部数据存储器FFFFH0000H上页下页回目录外部RAM(I/O)64KBMOVX A,RiMOVX A,DPTRiMOVX Ri,AMOVX DPTRi,A“读”指令“写”指令通过三条总线扩展第57页/共62页2.5 MCS-51 CPU时序一、机器周期、状态、相位一个机器周期包括6个S 状态S1S6,每个S状态 分为2(拍)个振荡周期(相位P1,相位P2)。1个机器周期 6个S状态12(拍)个振荡周期采用主频为 12MHz 振荡源,每个机器周期为1S上页下页回目录又称为CPU周期第58
33、页/共62页二、典型指令的取指和执行时序OSCALEP1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6机器周期读操作码 04H读下一个操作码(丢掉)PC不增“1”S1S2S3S4S5S6再读下一个操作码(a)单字节单周期指令 如:INC A上页下页回目录机器周期OP04HROMPCXTAL2指令长度为一个字节执行时间为一个机器周期第59页/共62页(b)双字节单周期指令 如:ADD A,#data上页下页回目录OP24HdataROMPC操作数PC指令长度为2个字节执行时间为一个机器周期(c)单字节双周期指令 如:INC DPTROPA3HROMPCDPLDPH“+1”指令长度为1个字节执行时间为2个机器周期,因DPTR是16位的而CPU是8位的,需要2次运算第60页/共62页(d)单字节双周期指令 如:MOVX A,DPTRMOVX DPTR,AOPE0HROMPC上页下页回目录第61页/共62页感谢您的观看!第62页/共62页
限制150内