单片机原理及应用电子版教材(-173张)课件.ppt

上传人(卖家):晟晟文业 文档编号:4190563 上传时间:2022-11-18 格式:PPT 页数:173 大小:1.15MB
下载 相关 举报
单片机原理及应用电子版教材(-173张)课件.ppt_第1页
第1页 / 共173页
单片机原理及应用电子版教材(-173张)课件.ppt_第2页
第2页 / 共173页
单片机原理及应用电子版教材(-173张)课件.ppt_第3页
第3页 / 共173页
单片机原理及应用电子版教材(-173张)课件.ppt_第4页
第4页 / 共173页
单片机原理及应用电子版教材(-173张)课件.ppt_第5页
第5页 / 共173页
点击查看更多>>
资源描述

1、 单片机原理及应用单片机原理及应用 电子教案电子教案 赵秀珍赵秀珍 王乃钊王乃钊 制作制作 水利水电出版社水利水电出版社 2001.8 第一章 单片微型计算机概述n本章主要介绍单片机的发展,基本的结构和特点,单片机的应用模式和领域,单片机的供应状态等。n单片微型计算机就是将CPU、RAM、ROM、定时/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。因此,一块芯片就构成了一台计算机。它已成为工业控制领域、智能仪器仪表、尖端武器、日常生活中最广泛使用的计算机。11 单片机的发展概况单片机的发展概况n综上所述,我们可以把单片机的发展历史划分为四阶段:n第一阶段(19761978年):低性能

2、单片机的探索阶段。以Intel公司的MCS-48为代表,采用了单片结构,即在一块芯片内含有8位CPU、定时/计数器、并行I/O口、RAM和ROM等。主要用于工业领域。n第二阶段(19781982年):高性能单片机阶段,这一类单片机带有串行I/O口,8位数据线、16位地址线可以寻址的范围达到64K字节、控制总线、较丰富的指令系统等。这类单片机的应用范围较广,并在不断的改进和发展。n第三阶段(19821990年):16位单片机阶段。16位单片机除CPU为16位外,片内RAM和ROM容量进一步增大,实时处理能力更强,体现了微控制器的特征。例如Intel公司的MCS-96主振频率为12M,片内RAM为

3、232字节,ROM为8K字节,中断处理能力为8级,片内带有10位A/D转换器和高速输入/输出部件等。n第四阶段(1990年):微控制器的全面发展阶段,各公司的产品在尽量兼容的同时,向高速、强运算能力、寻址范围大以及小型廉价方面发展。12 单片机的结构特点单片机的结构特点n(1)片内的RAM采用寄存器结构形式,这样可以提高存取的速度;n(2)在存储器结构上,严格的将程序存储器ROM和数据存储器RAM在空间上分开;n(3)它的引出管脚一般都设计成多功能的;n(4)增加了一个全双工的串行接口,以扩充I/O口和外接同步输入和输出设备;n(5)有21个特殊功能寄存器;n (6)有丰富的指令系统,内部设置

4、了可以位寻址的位地址空间。13 单片机的主要品种及系单片机的主要品种及系列列n一、4位单片机n二、8位单片机表格 1 1 MCS-51系列型号型 号制造技术片内程序存储器片内数据存储器8051AHH MOSROM(4k)128字节8031AHAH MOS无128字节8751HH MOSEPROM(4K)128字节80C51CHMOSROM(4K)128字节80C31CHMOS无128字节8051H MOSROM(8K)256字节8031H MOS无256字节 14 单片机的应用单片机的应用n一、单片机在仪器仪表中的应用n二、单片机在机电一体化中的应用n三、单片机在智能接口和多机系统中的应用n四

5、、单片机在生活中的应用 第 二 章 MCS-51单片机的结构和原理n本章主要介绍MCS-51系列的8051的基本结构、工作原理、存储器结构、P0、P1、P2、P3四个I/O口的基本工作原理和操作特点。单片机的各种工作方式、单片机的时序等。21 MCS-51单片机的结构原理 n一、8051单片机的结构内部总线时钟电路CPUINT0T1T0并行接口串行接口P0 P1 P2 P3TXD RXD中断系统ROMRAM定时/计数器INT1图 2 1 MCS-51单片机的基本结构二、8051单片机的内部结构和工作原理n8051单片机的内部结构框图如图 2 2 所示,下面分别进行介绍:图 2 2 8051的内

6、部结构框图FFFFH1000H外部ROM0FFFH0000H内部ROMEA=1外部ROMEA=0工作寄存器03组位寻址区RAMSFR00H20H30H80HFFH外部RAM0000HFFFFH图 2 3 8051存储器组织结构字节地址位 地 址 2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20HD7D6D5D4D3D2D1D07FH7EH7DH7CH7BH7AH79H78H77H76H75H74H73H72H71H70H6FH6EH6DH6CH6BH6AH69H68H67H66H65H64H63H62H61H60H5FH5EH5DH5CH5BH5A

7、H59H58H57H56H55H54H53H52H51H50H4FH4EH4DH4CH4BH4AH49H48H47H46H45H44H43H42H41H40H3FH3EH3DH3CH3BH3AH39H38H37H36H35H34H33H32H31H30H2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H1FH1EH1DH1CH1BH1AH19H18H17H16H15H14H13H12H11H10H0FH0EH0DH0CH0BH0AH09H08H07H06H05H04H03H02H01H00H图 2 4 8051内部RAM位地址区符号单元地址名称位地

8、址符号地址*ACCE0H累加器ACC.7ACC.0E7HE0H*BF0H乘法寄存器B.7B.0F7HF0H*PSWD0H程序状态字PSW.7PSW.0D7HD0H SP81H堆栈指针 DPL82H数据存储器指针(低8位)DPH83H数据存储器指针(高8位)*IEA8H中断允许控制器IE.7IE.0AFHA8H*IPB8H中断优先控制器IP.7IP.0BFHB8H*P080H通道0P0.7P0.087H80H*P190H通道1P1.7P1.097H90H*P2A0H通道2P2.7P2.0A7HA0H*P3B0H通道3P3.7P3.0B7HB0H PCON87H电源控制及波特率选择 *SCON98

9、H串行口控制SCON.7SCON.09FH98H SBUF99H串行数据缓冲器 *TCON88H定时控制TCON.7TCON.08FH88H TMOD89H定时器方式选择 TL08AH定时器0低8位 TL18BH定时器1低8位 TH08CH定时器0高8位 TH18DH定时器1高8位 P0.n锁存器P0.nQQD读锁存器写锁存器内部总线读引脚T1T2VCCMUX地址/数据控制图 2 5 P0口的位结构(1)P0口位的结构(2)P1口位的结构P1.n锁存器P1.nQQD读锁存器写锁存器内部总线读引脚内部上拉电阻TVCC图 2 6 P1口的位结构图 2 6 P1口的位结构图 2 6 P1口的位结构图

10、 2 6 P1口的位结构图 2 6 P1口的位结构(3)P2口的位结构P2.n锁存器P2.nQQD读锁存器写锁存器内部总线读引脚TVCC地址控制内部上拉电阻MUX图 2 7 P2口的结构图(4)P3口的位结构P3.n锁存器P3.nQQD读锁存器写锁存器内部总线读引脚TVCC第二输入功能第二输出功能内部上拉电阻图 2 8 P3口的结构图(4)P3口的位结构 P3.n锁存器P3.nQQD读锁存器写锁存器内部总线读引脚TVCC第二输入功能第二输出功能内部上拉电阻图 2 8 P3口的结构图表格 2 3 P3口的第二功能表I/O口第二功能注 释P3.0RXD串行口数据接收端P3.1TXD串行口数据发送端

11、P3.2INT()0外部中断请求0P3.3INT()1外部中断请求1P3.4T0定时/计数器0P3.5T1定时/计数器1P3.6WR()外部RAM写信号P3.7RD()外部RAM读信号 一、时钟周期、机器周期和指令周期 S机器周期1取指令、译码指令周期机器周期2取操作数、执行图 2-9 基本定时时序关系22 MCS-51单片机的时序单片机的时序1时钟周期 ALE时钟S1S4S6S5S3S2读操作码读操作码(无效)(a)1字节1周期指令读下一指令S1S4S6S5S3S2读操作码读第二字节(b)2字节1周期指令读下一指令S1S4S6S5S3S2读操作码读操作码(无效)(c)1字节2周期指令读下一指

12、令S1S4S6S5S3S2图 2 10 MCS-51的取指/执行时序 2机器周期3指令周期 二、MCS-51单片机指令的取指和执行的时序三、访问外部ROM和RAM的时序 ALE时钟S1S4S6S5S3S2PSENA15 A8A15 A8P2P0A7A0A7A0指令指令图 2 11 访问外部ROM的时序1访问外部ROM的时序 2访问外部RAM的时序 ALES1S4S6S5S3S2PSENPCH 输出P2P0PCL输出地址输出指令输入数据输入S1S4S6S5S3S2RDPCH 输出PCH 输出DPH 输出或 P2 输出PCL输出指令输入图 2 12 访问外部RAM的时序 23 MCS-51单片机的

13、时钟和复位电路 一、时钟电路 TTL(a)内部振荡器方式XTAL1R外部振荡器XTAL2VCCXTAL2XTAL1VSS(b)8051外时钟源接法8051NC外部振荡器XTAL1XTAL2VSS(c)80C51外时钟源接法80C51C1C2图 2 13 MCS-51时钟接法 1内部振荡器方式 2外部时钟方式 二、复位电路及复位状态 1内部复位电路 D1D2RST/VPDVCCVSSRAM斯密特触发器复位电路图 2 14 8051复位电路结构 2外部复位电路 VCC8051VCCRST/VPDVSSR1kC22FVCC8051VCCRST/VPDVSSR11kC122FR21kC2 22FRES

14、ET(a)上电复位(b)按键脉冲复位VCC8051VCCRST/VPDVSSR1 200C22FR21kRESET(c)按键电平复位图 2 15 复位电路3复位状态专用寄存器复位值PC0000HACC00HB00HPSW00HSP07HDPTR0000HP0P3FFHIPXXX00000BIE0XX00000BTMOD00HTCON00HTH000HTL000HTH100HTL100HSCON00HSBUF不定PCON(CHMOS)0XXX0000B24 MCS-51单片机的低功耗工作方式 一、电源控制寄存器PCON PCOND7D6D5D4D3D2D1D0SMODGF1GF0FDIDL三、掉

15、电方式 二、等待工作方式 第三章 MSC-51 单片机的指令系统 31 指令系统概述指令系统概述一、机器码指令与汇编语言指令机器码指令:机器码指令:汇编语言指令:汇编语言指令:二、指令格式 汇编语言格式为:标号:操作码助记符 目的操作数,源操作数 ;注释 单字节指令 双字节指令 三字节指令操作码 24H操作数 22HINC A ADD A,#22H MOV 5EH,4FH操作码 04H操作码 85H源操作数 4FH目的操作数 5EH 图 3-1 机器码指令格式 32 寻址方式 一、寄存器寻址二、直接寻址三、立即寻址四、寄存器间接寻址 五、变址寻址 六、相对寻址 七、位寻址 33 MSC-51单

16、片机的指令系统单片机的指令系统按照指令的功能,可以把MSC-51的111条指令分成五类:l 数据传送类指令(数据传送类指令(29条)条)l 算术运算类指令(算术运算类指令(24条)条)l 逻辑操作类指令(逻辑操作类指令(24条)条)l 控制转移类指令(控制转移类指令(17条)条)l 位操作类指令位操作类指令 (17条)条)80H下一条指令ALU54Hrel=54H2000H2001H2002H2056H操作码PC当前值2002H修正后转移目标地址(PC)=2056H图 3-2 相对寻址过程 第四章 MCS-51单片机的应用程序设计 过程A过程B是否入口出口条件满足?P2入口出口P1P3过程是否

17、入口出口条件满足?(a)顺序结构(b)分支结构(c)循环结构图 4-1 基本程序结构 4 41 1 运算程序运算程序一、多字节数加法1多字节无符号数加法2多字节有符号数加法 正负标志清零YN加完?开始复制保存地址指针清C正负标志置位溢出处理指针加1作加法,存和数正?溢出?YN恢复地址指针返回 SDADD:CLR 07H ;标志位清零图 4-3 多字节有符号数加法程序流程图二、多字节数减法 三、多字节十进制数(BCD码)加法 清标志位YN加完?开始最高字节置1取被加数有进位?YN恢复地址指针返回指针加1求和调整图 4-4 BCD码多字节加法程序流程图 MOV R0,#01H INC RRETUR

18、N:MOV R0,#20H RET四、多字节数乘法ZHENFA:MOV A,R0 MOV B,R1 MUL AB ;(R1)*(R0)MOV R,A ;积的低位送到R MOV R4,B ;积的高位送到R4 MOV A,R0 MOV B,R2 MUL AB ;(R2)*(R0)ADD A,R4 ;(R1)*(R0)的高位加(R2)*(R0)的低位 MOV R4,A ;结果送R4,进位在CY中 MOV A,B ADDC A,#OOH;(R2)*(R0)的高位加低位来的进位 MOV R,A ;结果送R RET五、多字节数除法DV:MOV R7,#08H ;设计数初值DVl:CLR C MOV A,R

19、 RLC A MOV R,A MOV A,R6 RLC A ;将(R6)、(R)左移一位 MOV 07H,C ;将移出的一位送07H位保存 CLR C 图 4-5 除法程序流程图 SUBB A,R2 ;余数(高位)减除数 JB O7H,GOU ;若标志位为1,说明够减 除法次数R7YN标志位=1?开始清进位,(R6)(R5)左移一位进位位=0?YN恢复余数返回余数高位-除数移出的位标志位商上1保存余数(R7)-1=0?YN JNC GOU ;无借位也说明够减 ADD A,R2 ;否则,恢复余数 AJMP DV2 GOU:INC R ;商上1 DV2:MOV R6,A ;保存余数(高位)DJNZ

20、 R7,DVl RET一、数据的拼拆4 42 2 数据的拼拆和转换数据的拼拆和转换例4-7 设在30H和31H单元中各有一个8位数据:(30H)=x7x6xx4xx2x1x0(3lH)=y7y6yy4yy2y1y0现在要从30H单元中取出低5位,并从31H单元中取出低3位完成拼装,拼装结果送40H单元保存,并且规定:(40H)=y2y1y0 x4xx2x1x0解:利用逻辑指令ANL、ORL来完成数据的拼拆,程序清单如下:MOV 4OH,3OH ;将x7x0传送到40H单元ANL 4OH,#000111llB;将高3位屏蔽掉MOV A,31H ;将y7y0传送到累加器中SWAP A ;将A的内容

21、左移4次RL A ;y2y0移到高3位ANL A,#111000OOB ;将低5位屏蔽掉ORL 4OH,A ;完成拼装任务二、数据的转换 1ASCII码与二进制数的互相转换 例4-10 编程实现十六进制数表示的ASC1I代码转换成4位二进制数(1位十六进制数)。解:对于这种转换,只要注意到下述关系便不难编写出转换程序:“字符0”“字符9”的ASCII码值为“30H”“39H”,它们与30H之差恰好为“00H”“09H”,结果均0AH。“字符A”“字符F”的ASCII码值为“41H”“46H”,它们各自减去37H后恰好为“0AH”“0FH”,结果0AH。根据这个关系可以编出转换程序如下,程序以R

22、1作为入口和出口。ASCHIN:MOV A,R1 ;取操作数CLR C ;清进位标志位CSUBB A,#30H ;ASCII码减去30H,实现0-9的转换MOV R1,A ;暂存结果SUBB A,#0AH ;结果是否9?JC LOOP ;若9则转换正确XCH A,R1SUBB A,#07H ;若9则减37HMOV R1,ALOOP:RET2BCD码与二进制数的转换 取高字节BCD数开始调用子程序返回结果100保存结果两结果相加取低字节BCD数调用子程序高位BCD数开始乘以10返回保存结果加低位BCD数图 4-6 BCD码(十进制)转换成二进制数程序流程图程序清单如下:MAIN:MOV A,R

23、MOV R2,A ;给子程序入口参数 ACALL BCDBIN ;调用子程序 MOV B,#64H MUL AB MOV R6,A XCH A,B MOV R,A MOV A,R4 MOV R2,A ACALL BCDBIN ;调用子程序 ADD A,R6 MOV R4,A MOV A,R ADDC A,#00H MOV R,A RET子程序如下:BCDBIN:MOV A,R2 ANL A,#0F0H ;取高位BCD码,屏蔽低4位 SWAP A MOV B,#0AH MUL AB MOV R,A MOV A,R2 ANL A,#0FH ADD A,R3 ;加低位BCD码 MOV R2,A RE

24、T43 查表程序 MOV R2,A ;暂存 MOVC A,A+DPTR ;取得入口地址低位 PUSH A ;进栈暂存 INC A MOVC A,A+DPTR ;取得入口地址高位 MOV DPH,A POP DPL CLR A JMP A+DPTR ;转向键处理子程序BS:DB RK0L ;处理子程序入口地址表 DB RK0H DB RK1L DB RK1H DB RK2L DB RK2H 4 44 4 散转程序散转程序一、采用转移指令表的散转程序 二、采用地址偏移量表的散转程序 DB OPRD2-TAB3 DB OPRD3-TAB3 DB OPRD4-TAB3三、采用转向地址表的散转程序 CL

25、R A JMP A+DPTR ;转向相应的操作程序BRTABL:DW OPRDO ;转向地址表 DW OPRD1 DW OPRDn四、采用“RET”指令的散转程序 45 I/O端口控制程序 例4-22 试编出能模拟图4-9中电路的程序。GF+DEVCC8031P1.0P1.1P1.2P1.3K0K1K3DEF(a)8031的接线(b)被模拟电路 ORG 0200H D BIT 00H E BIT 01H G BIT 02HLOOP1:ORL P1,#08H ;准备P1.3输入LOOP2:MOV C,P1.3 ;检测K3状态 JC LOOP2 ;若未准备好(K3断),则LOOP2 ORL P1,

26、#03H ;若准备好,则准备输入P1.0和P1.1状态 MOV C,P1.0 ;输入K0状态 MOV D,C ;送入D MOV C,P1.1 ;输入K1状态 MOV E,C ;送入E ANL C,D ;DE送C MOV G,C ;送入G MOV C,E ORL C,D ;DE送C ANL C,/G ;(DE)(DE)MOV P1.2,C ;输出结果 SJMP LOOP1 ;准备下次模拟 END4 46 6 子程序调用时的参数传递方法子程序调用时的参数传递方法一、通过寄存器或片内RAM传递参数例4-23 利用通过寄存器或片内RAM传递参数这种方法编出调用SUBRT子程序的主程序。解:应该是:MA

27、IN :MOV R0,#30H ;传送RAM数据区的起始地址 MOV R7,#0AH ;传送RAM数据区的长度 ACALL SUBRT ;调用清零子程序 SJMP$;结束 SUBRT:MOV A,#00H ;清零子程序LOOP:MOV R0,A INC R0 DJNZ R7,LOOP RET二、通过堆栈传递参数 三、利用指针寄存器传递参数 第五章 定时/计数器 51 定时/计数的结构及工作原理 一、定时/计数器的结构和原理1定时/计数器的结构内部总线工作方式工作方式TH1TL1TH0TL0TCONTMODT1T0微处理器图 5 1 TMOD、TCON与T0、T1的结构框图2定时/计数器的原理

28、控制信号振荡器12加1计数器TFX中断TX 端C/T=0C/T=1图 5 2 定时/计数器的结构框图 二、定时/计数器方式寄存器TMOD表格 5 1 方式选择位意义M1 M0工作方式功 能 说 明0 0方式013位计数器0 1方式116位计数器1 0方式2自动再装入8位计数器1 1方式3定时器0:分成两个8位计数器定时器1:停止计数TMOD格式如下:定时器1定时器0 TMOD D7D6D5D4D3D2D1D0GATEC/T()M1M0GATEC/T()M1M0三、定时控制寄存器TCON定时器控制字TCON的格式如下:TCON8FH8EH8DH8CH8BH8AH89H88HTF1TR1TF0TR

29、0IE1IT1IE0IT0 5 52 2 定时定时/计数器的工作方式计数器的工作方式一、方式0当M1M0两位为00时,定时/计数器被选为工作方式0,其逻辑结构如图 5 3 所示。控制振荡器12TL0(5位)TF0中断T0 端C/T=0C/T=1+INT0 端GATETR0TH0(8位)图 5 3 T0(或T1)方式0结构二、方式1控制振荡器12TL0(8位)TF0中断T0 端C/T=0C/T=1+INT0 端GATETR0TH0(8位)图 5 4 T0(或T1)方式1结构三、方式2控制振荡器12TL0(8位)TF0中断T0 端C/T=0C/T=1+INT0 端GATETR0TH0(8位)重新装

30、入图 5 5 T0(或T1)方式1结构三、方式2控制振荡器12TL0(8位)TF0中断T0 端C/T=0C/T=1+INT0 端GATETR0TH0(8位)重新装入图 5 6 T0(或T1)方式2结构 四、方式3控制振荡器12TL0(8位)TF0中断T0 端C/T=0C/T=1+INT0 端GATETR0TH0(8位)1/12 fosc1/12 foscTF1中断1/12 foscTR1图 5 7 T0方式3下和T1结构一、方式0、方式1的应用例5-1 选择T1方式0用于定时,在P1。1输出周期为1ms的方波,晶振fosc=6MHZ。根据题意,只要使P1。1每隔500s取反一次即可得到1ms方

31、波,因而T1的定时时间为 500s。将T1设为定时方式0:GATE=0,C/T()=0,M1M0=00;T0不用可为任意,只要不使其进入方式3,一般取0即可。故TMOD=00H。系统复位后TMOD为0,所以不必对TMOD置初值。下面计算500s定时T1的初值:机器周期 T=12/fosc=12/6106=2s设初值为X则:(213X)2106 s=500106 s X=7942D=1111100000110B=1F06H因为在作13位计数器用时,TL1高3位未用,应写0,X的低5位装入TL1的低5位,所以TL1=06H;X的高8位应装入TH1,所以TH1=F8H。源程序如下:MOVTL1,#0

32、6H;给TL1置初值 MOVTH1,#F8H;给TH1置初值 SETBTR1;启动T1LP1:JBCTF1,LP2;查询计数溢出否 AJMPLP1 LP2:MOVTL1,06H;重装初值 MOVTH1,F8H CPLP1。1;输出取反 AJMPLP1;重复循环二、方式2的应用例5-2 用定时器1方式2计数,要求每计满100次,将P1。0取反。根据题意,外部计数信号由T1(P3.5)引脚输入,每跳变一次计数器加1,由程序查询TF1。方式2有自动重装初值的功能,初始化后不必再置初值。初值 X=28100=156D=9CH TH1=TL1=9CH TMOD=60H源程序如下:MOVTMOD,#60H

33、;设置T1为方式2 MOVTL1,#9CH;置初值 MOVTH1,#9CH SETBTR1;启动T1DEL:JBCTF1,REP;查询计数溢出 AJMPDEL REP:CPLP1。0;输出取反 AJMPDEL 三、门控位的应用图 5 8 外部正脉冲宽度测量例5-3 利用T0门控位测试INT0引脚上出现的正脉冲的宽度,并以机器周期数的形式显示在显示器上。根据要求可这样设计程序:将T0设定为方式1,GATE设为1,置TR0为1。一旦INT0(P3。2)引脚上出现高电平即开始计数,直至出现低电平,停止计数,然后读取T0的计数值并显示。测试过程如下:INT0(P3.2)09H(TMOD)1TR0T0从

34、0开始计数0TR0停止T0计数读出T0值BEGIN:M OVTMOD,#O9H;T0工作于方式1,GATE置1 M OVTL0,#00H M OVTH0;#00H WAIT1:JBP3。2,WAIT1;等待INT0变低 S E TBTR0;启动T0WAIT2:JNBP3。2,WAIT2;等待正脉冲到WAIT3:JBP3。2,WAIT3;等待INT0变低 CLRTR0;停止T0计数 M OVR0,#DISBUF;显示缓冲区首地址送R0 M OVA,TL0;机器周期的存放格式为低位占低地址,高位占高地址,连续4个显示缓冲单元 XCHDA,R0 INCR0 SWAPA XCHDA,R0 INCR0

35、M OVA,TH0 XCHDA,R0 INCR0 SWAPA XCHDA,R0 DIS:LCALLDISUP;长调用显示子程序 AJMPDIS;重复显示机器周期数源程序如下:第六章 MCS-51单片机的系统扩展61 MCS-51单片机的引脚定义及最小应用系统单片机的引脚定义及最小应用系统一、8051的引脚定义及功能12345678910111213141516171819204039383736353433323130292827262524232221P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0

36、/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1VSSVCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPSENP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A88 80 03 31 18 80 05 51 18 87 75 51 1P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0PSENEAALERESET

37、803180318051805187518751P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0G+5VVCCVSS锁锁存存器器 数据总线(DB)地址总线(AB)控制总线(CB)用户I/O图 6 1 MCS-51的引脚图及功能分类图二、MCS-51单片机最小应用系统 P0 P1 P2 P3+5V+5VEA8 80 05 51 18 87 75 51 1XTAL1XTAL28888图 6 2 8051/8

38、751最小应用系统6 62 2 MCS-51MCS-51单片机外部存储器的扩展单片机外部存储器的扩展一、外部程序存储器的扩展及取指过程EA8 80 03 31 1P2.7P2.0P0.7P0.0地址锁存器PSENOEA15A8CEA7A0D7D0外部程序存储器0K64K图 6 3 外部程序存储器一般连接方法 1程序存储器的一般连接方式PSENP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7A8A9A10A11A12QOA0A1A2A3A4A5A6A7Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALE

39、D0D1D2D3D4D5D6D7OEGOE803127C64CEEA74HC373图 6-4 扩展8K字节程序存储器的连线图2典型EPROM扩展电路3程序存储器E2PROM的扩展P2.0P2.1P2.2P2.3P2.4P2.7A8A9A10A11A12QOA0A1A2A3A4A5A6A7Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALED0D1D2D3D4D5D6D7OEGOE803128C64CEEA74HC373WRPSENRDWE74LS08图 6-5 E2PROM作为程序存储器的扩展图二、数据存储器的扩展P

40、3.7(RD)P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7A8A9A10QOA7A6A5A4A3A2A1A0Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ALEI/O0I/O1I/O2I/O3I/O4I/O5I/O6I/O7OEGOE80316116CEEAP3.6(WR)WE74HC373图 6-6 扩展2KB数据存储器的线路图1数据存储器一般的扩展方法 2常用数据存储器的扩展电路 三、综合扩展实例D7Q7Q0D074HC373A12A11A10A9A8CEA7A0D7D0OEP2.7P2.6P

41、2.5P2.4P2.3P2.2P2.1P2.0ALEP0PSENWRRD80C51IC02764IC02764D0OECEA12A11A10A9A8A7A0D7IC02764D0OECEA12A11A10A9A8A7A0D7D0OECEA12A11A10A9A8A7A0D7A8A9A10A11A12A8A9A10A11A12A8A9A10A11A12A12A11A10A9A8IC12764D0D0D0D0D7D7D7D7OEOEOEOEA0A0A0A0A7A7A7A7A0A0A0A0A7A7A7A7A8A8A8A8A9A9A9A9A10A10A10A10OEOEOEOECECECECEA11A

42、11A11A11A12A12A12A12A10A10A10A10A0A0A0A0OEOEOEOEA7A7A7A7A8A8A8A8A9A9A9A9A12A12A12A12A11A11A11A11CECECECECECECECEIC26264IC36264WEWED7-D0D7-D0GBAY2Y1Y074HC139图 6-7 扩展16KB RAM和16KB EPROM 6 63 3 并行并行I/OI/O口的扩展口的扩展一、简单I/O口的扩展P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.780C51WRP2.0RDD0D1D2D3D4D5D6D7Q0Q1Q2Q3Q4Q5Q6Q7Q0Q

43、1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7K0K1K2K3K4K5K6K7LED0LED1LED2LED3LED4LED5LED6LED7+5V74HC27374HC244G图 6-8 简单I/O接口扩展电路二、可编程I/O口的扩展12345678910111213141516171819204039383736353433323130292827262524232221PC3PC4TIMER INRESETPC5TIMER OUTCERDWRALEAD0AD1AD2AD3AD4AD5AD6AD7VSSVCCPC2PC1PC0PB7PB6PB5PB4PB3PB2PB1PB0PA

44、7PA6PA5PA4PA3PA2PA1PA08 81 15 55 5256 B静态RAM14位定时计数器ABCAD07CERDWRRESETALETIME INTIME OUTVCC(+5V)VSS(GND)PC05PB07PA07IO/MIO/M图 6 9 8155的结构和引脚表格 6 1 8155口地址分布AD0AD7选选 中中 寄寄 存存 器器A7 A6 A5 A4 A3A2A1A0 000内部命令寄存器内部命令寄存器 001通用通用I/O口口A寄存器寄存器 010通用通用I/O口口B寄存器寄存器 011口口C:通用通用I/O口或控制口口或控制口 100定时定时/计数器的低计数器的低8位

45、寄存器位寄存器 101定时定时/计数器的高计数器的高8位寄存器位寄存器38155与单片机的连接AD07CERDWRRESETALETIME INTIME OUTPCPBPAIO/M81558031RSTRDWRALEP2.3P2.4P0VCC表格 6 2 8155的RAM和I/O口地址分配P2.4P2.3选择选择地地 址址00RAME700HE7FFH(256B)01I/O口口EF00H 命令口命令口/状态口状态口EF01H 通用通用I/O口口AEF02H 通用通用I/O口口BEF03H 口口CEF04H 计数值低计数值低8位位EF05H 计数值高计数值高8位和计数位和计数方式方式图 6 10

46、 扩展一片8155的基本方案48155片内RAM的使用(1)命令寄存器的用法 表格 6 3 C口工作方式方方式式位位ALTIALT2ALT3ALT4PC0输入方式输入方式输出方式输出方式AINTR(A口中断)口中断)AINTR(A口中断)口中断)PC1ABF(A口缓冲器满)口缓冲器满)ABF(A口缓冲器满)口缓冲器满)PC2ASTB(A口选通)口选通)ASTB(A口选通)口选通)PC3输出方式输出方式BINTR(B口中断)口中断)PC4BBF(B口缓冲器满)口缓冲器满)PC5BSTB(B口选通)口选通)备注备注A口口B口为口为基本基本I/O口口A口口B口为口为基本基本I/O口口A口为选通输入方

47、口为选通输入方式式B口为基本口为基本I/O口口A口、口、B口为选通口为选通输入输入/输出方式输出方式RDWRI/OPC0PC1PC2PC3PC4PC5PBPA8155设备数据线至中断请求输入线至设备来自设备至中断请求输入线至设备来自设备设备数据线I/OAINTRABFASTBBINTRBBFBSTB图 6 12 8155方式4的逻辑结构图 6作定时/计数器用表 6-4 8155定时器输出方式M2 M1方方 式式定时器输出方波定时器输出方波0 0单个方波单个方波0 1连续方波连续方波1 0在终止计数时输出单个脉冲在终止计数时输出单个脉冲1 1连续脉冲连续脉冲第七章 MCS-51系统的串行接口71

48、 串行通讯概述一、串行通讯的两种基本方式1异步传送方式 第n个字符(一串行帧)n+1n-1 P10D0D1D2D3D4D5D6D7P10D0 起始位起始位数数 据据 位位校验位校验位 停止位停止位 图 7-2 异步通讯的帧格式开始开始 结束结束同步字符同步字符同步字符同步字符数据段数据段CRC字符字符#1CRC字符字符#2图 7-3 同步传送方式二、波特率图 7-4 串行通讯的制式 三、数据传送的方向1单工制式(Simplex)2半双工制式(Half Duplex)3全双工(Full-duplex)制式72 MCS-51单片机的串行接口一、MCS-51串行口结构图 7-5 MCS-51串行口组

49、成示意1串行口数据缓冲器SBUF 2串行口控制寄存器SCON见表格7-1SM0位地位地址址9F9E9D9C9B9A9998SCONSM1SM2RENTB8RB8TIRI 接收中断标志发送中断标志接收数据第9位发送数据第9位接收控制0:禁止接收1:允许接收多机通信0:单机对单机1:多机通信 图 7-6 串行口控制寄存器SCON图 7-6 串行口控制寄存器SCON3特殊功能寄存器PCONPCON主要是为CHMOS型单片机的电源控制设置的专用寄存器,单元地址为87H,不能位寻址。其格式如图 7-7 所示。SMODGF1GF0PDIDL通用标志位空闲控制位0:正常方式1:空闲方式掉电控制位0:正常方式

50、1:掉电方式波特率选择位SMOD=1时,方式1、2和3的波特率加倍 图 7-7 PCON各位定义二、MCS-51串行的工作方式MCS-51的串行口有四种工作方式,它是由SCON中的SM1和SM0来决定的,如表格 7-1 表格 7-1 串行口的工作方式SM0SMl工作方式工作方式方式简单描述方式简单描述波特率波特率000移位寄存器移位寄存器I/O主振频率主振频率/120118位位UART可变可变1029位位UART主振频率主振频率/32或主振频率或主振频率/641139位位UART可变可变1方式0图 7-8 串行口方式0的时序2方式1在方式1时,串行口被设置为波特率可变的8位异步通信接口。其时序

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机原理及应用电子版教材(-173张)课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|