MCS51单片机.ppt
《MCS51单片机.ppt》由会员分享,可在线阅读,更多相关《MCS51单片机.ppt(152页珍藏版)》请在课桌文档上搜索。
1、MCS-51单片机的结构和原理 MCS-51单片机的结构8051单片机的引脚及功能 MCS-51单片机的时序 MCS-51单片机外部存储器扩展,3.1 MCS-51单片机的结构3.1.1 MCS-51单片机的基本组成,时钟电路,ROM,RAM,定时/计数器,CPU处理器,并行接口,串行接口,中断系统,内部数据总线,P0 P1 P2 P3 TxD RxD INT0 INT1,T0 T1,外部晶振 212MHz,3.1.2 MCS-51系列表3.1 MCS-51系列单片机性能表,1.不带EPROM和EEPROM(带片内 掩膜ROM)的80系列:,1 片内RAM 128B(字节)2 片内RAM 25
2、6B(字节)1 片内RAM 128B,片内(掩膜)ROM 4kB 2 片内RAM 256B,片内(掩膜)ROM 8kB,3,5,80,2.带EPROM和EEPROM的87和89 系列:,1 片内RAM 128B,片内EPROM 4kB 2 片内RAM 256B,片内EPROM 8kB 1 片内RAM 128B,片内EEPROM 4kB 2 片内RAM 256B,片内EEPROM 8kB,87C5,89C5,3.1.3 MCS-51单片机内部结构图,RAM地址寄存器,RAM1288,P0驱动器,P2驱动器,ROM48K,P0锁存器,P2锁存器,B寄存器,暂存器TMP1,ACC,PC值递增器,堆栈
3、SP,暂存器TMP2,缓冲器,程序地址寄存器,DPTR,程序计数器PC,指 令 寄 存 器指 令 译 码 器定 时 控 制,ALU,PSW,中断、串行口和定时器,P3驱动器,P3锁存器,P1驱动器,P1锁存器,OSC,PSENALEEARST,VccVss,P0.0P0.7 P2.0P2.7,P1.0P1.7 P3.0P3.7,XTAL1,XTAL2,1 存储器空间及结构,片外ROM,RAM(8052/8032),特殊功能寄存器,数据缓冲区RAM位寻址区工作寄存器区0 3组,片内ROM(EA=1),外部RAM,片外ROM(EA=0),程序存储器 内部数据存储器 外部数据存储器,0FFFH,0,
4、0FFFFH,1000H,0FFH,0FFFH,0,0FFFFH,0,0,20H1FH,80H,0FFH,80H,7FH,30H2FH,位寻址区,(MSB)(LSB),置“1”,2.CPU,组成 ALU:运算器 控制器:完成算术、逻辑运算 特殊功能寄存器:ACC、B、PSW、SP、DPTR 通用寄存器:R0R7,并行I/O口(1)8031 P1口位结构,D Q 锁存器CP Q,P1.XPIN,读锁存器(读端口),Vcc,管脚,三态门 1,T,内部上拉电阻,三态门 2,读引脚,内部总线,写锁存器,(2)8031 P3口位结构,D Q 锁存器CP,P3.XPIN,读锁存器,Vcc,管脚,三态门 1
5、,T,内部上拉电阻,三态门 2,读引脚,内部总线,写锁存器,第二输出功能,第二输入功能,(3)8031 P2口位结构,D Q 锁存器CP,P2.XPIN,读锁存器,Vcc,管脚,三态门 1,T,内部上拉电阻,三态门 2,读引脚,内部总线,写锁存器,MUX,地址 控制,(4)8031 P0口位结构,D Q 锁存器CP Q,P0.XPIN,读锁存器,Vcc,管脚,三态门 1,T,三态门 2,读引脚,内部总线,写锁存器,MUX,地址/数据 控制,T,4 定时器,组成:T0 T1特点:作计数器 作定时器 长度:16位 可编程 定时计数到可向CPU发中断,5 中断系统,中断源:五个 INT0 INT1
6、T0 T1 串行口特点:中断入口固定 有两级中断 6 串行口特点:可编程 全双工,3.2 8051单片机引脚及功能,特点:各型号芯片互相兼容 双列直插式芯片引脚:VSS 地 VCC 电源 并行口:P0P3 有第二功能 ALE/PROG:地址锁存/编程脉冲输入(8751)PSEN:外部程序存储器读选通信号 EA/VPP:外部ROM选择信号/编程电源(8751)RST/VDP:复位/RAM备用电源 XTAL1 XTAL2:晶振输入端,3.3 MCS-51单片机工作方式,复位方式:CPU复位到初始状态 PC=0000H ACC=00H PSW=00H SP=07H P0P3=0FFH 程序执行方式:
7、从ROM的0000H开始执行单步执行方式:每次执行一条指令掉电和节电方式:用备用电源维持RAM和SFR编程和校验方式:对内部EPROM编程和校验,3.4 MCS51的时序 3.4.1 机器周期和指令周期,1 机器周期:包括12个振荡周期(时钟周期)2 一个机器周期分为六个S状态:从S1S6。3 每个S状态由两拍组成,称为P1、P2所以,一个机器周期可以表示为:S1P1、S1P2、S2P1、S6P2,S1 S2 S6P1 P2P1 P2 P1 P2,第一周期(机器周期)第二周期,时钟,S1P1 P2,ALE,S1 P2,S4 P2,S1 P2,S4 P2,S1 P2,1字节1周期指令。例:MOV
8、 A,R0;机器码:E8 读操作码 读操作码(由于PC指针未加1,为无效读取)读下一指令,S6 S1 S2 S3 S4 S5 S6 S1,S6 S1 S2 S3 S4 S5 S6 S1,S6 S1 S2 S3 S4 S5 S6 S1 S2 S3 S4 S5 S6 S1,2字节1周期指令。例:MOV A,30H;机器码:E530 读操作码 读第二字节 读下一指令,1字节2周期指令。例:RET;机器码:22 读操作码 读下一指令 读操作码(无效),第一周期(机器周期)第二周期,3.4.2 MCS51的取指/执行时序,时钟,3.4.3 外部存储器读周期,(不执行MOVX指令),ALE 锁存低8位地址
9、 锁存低8位地址,P1 P2 P1 P2 S1 S2 S3 S4 S5 S6 S1,选通 ROM,PSEN 读数,(80H)(80H),RD、WR,P2 地址 A15A8 地址 A15A8,(00H)(74H)(01H)(28H),P0A7A0 A7A0,(执行MOVX指令),P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2,第一周期 第二周期,S6 S1 S2 S3 S4 S5 S6 S1 S2 S3 S4 S5 S6,ALE 锁存 锁存,PSEN 读数,RD、WR 读、写,
10、(80H)(82H),P2 PCH输出 PCH或P2口输出,(00H)(E0H)(12H)(56H),指令 外部RAM 外部RAM 无效 低8位地址 数据,P0 PCL,3.5 MCS-51外部扩展,PSENRD8031WRP2EAALEP0,锁存器,控制总线高8位地址线A15A8地址总线低8位地址线A7A0数据总线D7D0,锁 存 器,74LS273功能表,74LS377功能表,74LS373功能表,8282功能表,CLK273CLR,CLK377G,G373OC,STB8282OE,ALE,ALE,ALE,ALE,+5V,3.5.1 程序存储器扩展,P2.7P2.6P2.5P2.4P2.3
11、P2.2 P2.1P2.0ALE 8031P0.7P0.0EA PSEN,CE2716A10A9A8A7A0O7O0OE,G74LS373,8,8,3.5.2 数据存储器扩展,P2.7P2.6 8031P2.5P2.4P2.3P2.2 P2.1P2.0ALE P0.7P0.0EARDWR,CS6116A10A9A8A7A0D7D0OEWE,G74LS373,8,11100100,译码器,8,第四章 MCS-51单片机的指令系统,内容 指令和指令程序 寻址方式 指令 传送指令 运算指令 控制指令,4.1 指令和指令系统,4.1.1 指令和助记符 指令:计算机能识别和执行的命令 指令形式:二进制码
12、或机器码 特点:机器真正执行语言、不便记忆 构成:操作码 操作数 由机器码的集合构成机器语言 助记符:由助记符号表示的机器指令 特点:便于记忆、不能直接执行 由助记符构成的语言称汇编语言,4.1.2 指令的字节数:单字节(49条)、双字节(45)、三单字节(17),4.2 寻址方式 1 寄存器寻址:以通用寄存器作为操作数 通用寄存器:R0R7 例:MOV A,R0 2 直接寻址:直接给出操作数地址 例:MOV A,20H 3 立即寻址:操作数为8位或16位二进制数 例:MOV A,#30H,寄存器间接寻址:以寄存器给出操作数的地址 例 MOV A,R0变址寻址:以基址寄存器加上一个相对量为操作
13、数地址。例 MOVC A,A+PC相对寻址:相对转移指令中以相对偏移量为操作数 转移目的地址=源地址+转移指令字节数+rel 例 2000H SIMP rel(8位有符号数)若 rel=40H 目的地址=2000H+2+40H=2042H rel=0FEH 目的地址=2000H+2+(-2)=2000H,位寻址 在指令中给出一位二进制数的操作数地 址 位地址区域:内部RAM 20H2FH共128位 某些特殊功能寄存器(地址能被8整除)位地址表示:(1)用位地址00HFFH表示 20H2FH单元中:位地址=(单元地址-20H)*8+位数(07)特殊功能寄存器:位地址=单元地址+位数(07),(2
14、)用“单元地址.位”表示 例 20H.5 2FH.7.(3)用“寄存器名.位数”表示(SFR)例 P0.1 P2.0 P3.7 ACC.7(4)用伪指令表示,MCS-51指令分类:共有111条指令分为五大类(1)数据传送指令:28条(2)算术运算指令:24条(3)逻辑移位指令:25条(4)控制转移指令:17条(5)位操作指令:17条.,符号定义:Rn:工作寄存器组 R0R7#data:8位立即数 direct:8位直接地址.用于寻址内部RAM Ri:寄存器间接寻址 Ri=R0 或 R1#data16:16位立即数 DPTR:16位寄存器间接寻址,4.3 数据传送指令,4.3.1 内部RAM之间
15、数据传送 1 立即寻址 MOV A,#data;A data MOV Rn,#data;Rn data MOV Ri,#data;(Ri)data MOV direct,#data;(direct)data 2 直接寻址 MOV A,direct;A(direct)MOV direct,A;(direct)A,MOV Rn,direct;Rn(direct)MOV Ri,direct;(Ri)(direct)MOV direct2,direct1;(direct2)(direct1)3 间接寻址 MOV A,Ri;A(Ri)MOV Ri,A;(Ri)A MOV direct,Ri;(direc
16、t)(Ri),4 寄存器寻址 MOV A,Rn;A Rn MOV Rn,A;Rn A MOV direct,Rn;(direct)Rn 注:传送指令不影响标志位4.3.2 外存的传送指令 1 16位地址传送指令 MOV DPTR,#data16 DPTR可以用于寻找RAM或ROM中数据,2 访问外部ROM指令 MOVC A,A+DPTR MOVC A,A+PC 3 访问外部RAM指令 MOVX A,Ri MOVX Ri,A MOVX A,DPTR MOVX DPTR,A,4.3.3 堆栈操作指令 1 进栈 格式:PUSH direct 操作:SP=SP+1(direct)(SP)例 PUSH
17、20H PUSH ACC 2 出栈 格式:POP direct 操作:(direct)(SP)SP=SP-1 注:堆栈操作只能在内部RAM中设置,4.3.4 数据交换指令 XCH A,Rn;A Rn XCH A,direct;A(direct)XCH A,Ri;A(Ri)XCHD A,Ri;A03(Ri)03 特点:交换指令是在A及内部RAM之间进行交换 交换后除标志寄存器受A内容变化影响外,其它标志位不变,4.4 算术运算指令,4.4.1 加法指令 ADD A,Rn;A A+Rn ADD A,direct;A A+(direct)ADD A,Ri;A A+(Ri)ADD A,#data;A
18、A+data 注:加法运算影响标志位,例 MOV A,#0FFH ADD A,#0FH 求PSW中各标志位状态 11111111+00001111 100001110 Cy=1 P=1 AC=1 OV=0 注意:Cy用于判断无符号数 OV用于判断有符号数,4.4.2 带进位加法指令 ADDC A,Rn;A A+Rn+Cy ADDC A,direct;A A+(direct)+Cy ADDC A,Ri;A A+(Ri)+Cy ADDC A,#data;A A+data+Cy注:Cy=0时ADDC和ADD结果完全一样,4.4.3 加1指令 INC A;A A+1 INC Rn;Rn Rn+1 IN
19、C direct;(direct)(direct)+1 INC Ri;(Ri)(Ri)+1 注:(1)与ADD指令的区别:ADD指令影响各标志位 INC指令不影响各标志位(除加A时影响P外)(2)INC指令一般用来修改地址,4.4.4 带借位减法指令和减1指令 SUBB A,Rn;A A-Rn-Cy SUBB A,direct;A A-(direct)-Cy SUBB A,Ri;A A-Ri-Cy SUBB A,#data;A A-data-Cy 注:(1)MCS51没有不带借位的减法指令 开始应使Cy=0:CLR C(2)作为有符号数时溢出判断规则为:正数-负数结果为负则溢出 负数-正数结果
20、为正则溢出,减1指令 DEC A;A A-1 DEC Rn;Rn Rn-1 DEC direct;(direct)(direct)-1 DEC Ri;(Ri)(Ri)-1 注:DEC指令同样不影响标志位(除减A指令 影响标志位P外),4.4.5 乘、除指令和其他运算指令 1 乘、除指令 MUL AB;A B=BA DIV AB;A/B=AB 注:(1)乘、除指令均为无符号8位数运算指令(2)乘、除指令只影响Cy、OV和P标志 乘法:Cy=0,P由A中1的奇偶性决定 B=0 则OV=0 否则OV=1 除法:Cy=0,P由A中1的奇偶性决定 B=0 则OV=1 否则OV=0,例:如果A0B4H,B
21、11H,求执行指令 MULAB后的结果。因为A0B4H为无符号数180D B11H为无符号数17D 执行 MULAB 后:BA0BF4H3060D。因为B0,因此Cy0,OV1,2 十进制调整指令 DA A 作用:BCD码加法调整(对累加器A)调整:低4位大于9或AC=1,则A=A+06H 高4位大于9或Cy=1,则A=A+60H 例:ADDA,R0 DA A 指令执行前,A28H,R068H 执行ADD指令后,A90H,Cy0,AC1 因AC1而做加6运算 AA06 得A96H,结果正确,3 数据指针加1指令 INC DPTR 操作:DPTR=DPTR+1 特点:不影响标志位 例 编程对DP
22、TR减1 CLR C;Cy=0 MOV A,DPL;A=DPL SUBB A,#1;A=A-1 MOV DPL,A;DPL=A MOV A,DPH;A=DPH SUBB A,#0;A=A-0-Cy MOV DPH,A;DPH=A,4.5 逻辑运算及移位指令,4.5.1 逻辑“与”运算指令 ANL A,Rn(direct,Ri,#data)ANL direct,A ANL direct,#data 特点:按位“与”即:1“与”1=1 1“与”0=0 0“与”0=0 例 A=85H R7=67H ANL A,R7 则 A=05H A=85H R7=00H ANL A,R7 则 A=00H A=85
23、H R7=0FFH ANL A,R7 则 A=85H,4.5.2 逻辑“或”运算指令 ORL A,Rn(direct,Ri,#data)ORL direct,A ORL direct,#data 特点:按位“或”即:1“或”1=1 1“或”0=1 0“或”0=0 例 A=85H R7=67H ORL A,R7 则 A=0E7H A=85H R7=00H ORL A,R7 则 A=85H A=85H R7=0FFH ORL A,R7 则 A=0FFH,4.5.3 逻辑“异或”运算指令 XRL A,Rn(direct,Ri,#data)XRL direct,A XRL direct,#data 特
24、点:按位“异或”即:1“异或”1=0 1“异或”0=1 0“异或”0=0 例 A=85H R7=67H ORL A,R7 则 A=0E2H A=85H R7=00H ORL A,R7 则 A=85H A=85H R7=0FFH ORL A,R7 则 A=7AH,4.5.4 累加器清零及取反指令 CLR A;A=0 CPL A;A=A 注:所有逻辑指令对标志都不产生影响(除对A操作的指令对P产生影响)另:MCS-51没有求补指令。可用求反加1实现。例 N为绝对值一小于128的负数,求其补码 MOV A,#N CPL A(XRL A,#0FFH)ADD A,#1,4.5.5 移位指令 RL A R
25、LC A RR A RRC A,A7 A0,A7 A0,Cy,A7 A0,A7 A0,Cy,SWAP A;A03 A47,控制转移指令,符号定义:addr16:16位地址 addr11:11位地址 rel:8位转移相对偏移量4.6.1 无条件转移指令 1 长转移指令 LJMP addr16 操作:addr16 PC 范围:64K跳转 特点:绝对寻址,2 绝对跳转指令 AJMP addr11 操作:addr11 A 010(PC07,1315)范围:2K跳转 特点:绝对寻址 3 短转移指令 SJMP rel 操作:PC=PC+2+rel 范围:相对现PC地址:-128+127 特点:相对寻址,4



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MCS51 单片机

链接地址:https://www.desk33.com/p-242045.html