单片机应用技术第五章-MCS-51系统扩展技术.ppt

上传人:牧羊曲112 文档编号:5937916 上传时间:2023-09-06 格式:PPT 页数:64 大小:2.09MB
返回 下载 相关 举报
单片机应用技术第五章-MCS-51系统扩展技术.ppt_第1页
第1页 / 共64页
单片机应用技术第五章-MCS-51系统扩展技术.ppt_第2页
第2页 / 共64页
单片机应用技术第五章-MCS-51系统扩展技术.ppt_第3页
第3页 / 共64页
单片机应用技术第五章-MCS-51系统扩展技术.ppt_第4页
第4页 / 共64页
单片机应用技术第五章-MCS-51系统扩展技术.ppt_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《单片机应用技术第五章-MCS-51系统扩展技术.ppt》由会员分享,可在线阅读,更多相关《单片机应用技术第五章-MCS-51系统扩展技术.ppt(64页珍藏版)》请在三一办公上搜索。

1、第五章 MCS-51系统扩展技术,5-1 MCS-51单片机最小系统5-2 存储器的扩展5-3 并行I/O端口的扩展方法5-4 可编程并行接口芯片81555-5 常用通道配置与接口技术5-6 D/A转换5-7 A/D转换,项目引入,1.项目描述片外RAM对信号灯的控制及可编程I/O口的应用2.硬件电路与工作原理让学生根据任务分析硬件要求,画出具体电路,并在实验开发板上接线3.程序设计(给出控制程序),参考程序:对片外RAM写入数据并输出,控制P1口的亮灭状态。ORG 0000H MOV DPTR,#1000H;指向片外RAM的首地址 MOV A,#0FEH;设置第一个要送入的数据 MOV R1

2、,#08H;设循环次数,WRITE:MOVX DPTR,A;向RAM中写入数据 INC DPTR;片外RAM地址加1 CLR CY RL A;更新数据 DJNZ R1,WRITE;8次未送完,继续写入,否则顺序执行下一条指令 MOV R1,#08H;再次设置循环次数 START:MOV DPTR,#1000H;指向第一个数据单元1000H,READ:MOVX A,DPTR;读出数据到A累加器 MOV P1,A;送P1口点亮发光二极管 LCALL DELAY;延时一段时间 INC DPTR;更新地址 DJNZ R1,READ;连续读出8个数据,送P1口显示 SJMP START;8个数据读完,继

3、续从第一个数据单元开始。,单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。为此,应扩展其功能。MCS-51单片机的扩展性能较强,根据需要,可扩展:ROM、RAM;定时/计数器;并行I/O口、串行口;中断系统扩展等。,7-1 MCS-51单片机最小系统,一、8051/8751硬件最小系统对于片内有ROM型单片机,其自身可以构成最小系统,该系统的资源如下:4KB ROM,256B RAM;五源中断系统;两个十六位加一定时/计数器;一个全双工串行UART;四个并行I/O口。,二、8031硬件最小系统 8031单片机片内无ROM,若要正常工作,必需外配ROM。外接ROM

4、后,P3口、P2口、P0口均被占用只剩下P1口作I/O口用,其它功能不变。,图中:/E 三态门控制端 G 低电平锁存,三总线的概念:地址总线 AB,P0口提供(A7 A0);P2口提供(A15 A8),共16位。数据总线 DB,P0口提供(D7 D0),共8位。控制总线 CB,ALE、等。,7-2 存储器的扩展,一、三总线的连接,1、数据线的连接 P0口的八位线承担此任,此时不用外接上拉电阻。2、地址线的连接 P0口承担地址低八位线,A0 A7;P2口承担地址高八位线。A8 A15。注意:P0口线地址/数据分时复用,需用地址锁存器 74LS373锁存地址。,A10 A8,A7 A0,D7 D0

5、,CB,3、控制线的连接对存储器来讲控制线无非是:芯片的选通控制、读写控制。单片机与外部器件数据交换要遵循两个重要原则:一是,地址唯一性,一个单元一个地址。二是,同一时刻,CPU只能访问一个地址,即只能与一 个单元交换数据。不交换时,外部器件处于锁闭状态,对总线呈浮空状态。,读/写:CPU向外部设备发出的读/写控制命令。EPROM:/OE/PSEN SRAM:/WE/WR/OE/RD,选通:CPU与器件交换数据或信息,需先发出选通信号/CE或/CS,以便选中芯片。,二、存储器地址编码SRAM6116:“16”2K8=2KB 21210=211即6116有11根地址线。地址空间:A10 A9 A

6、8 A7 A6 A5 A4 A3 A2 A1 A0最低地址:0 0 0 0 0 0 0 00 0 0 0000H 最高地址:1 1 1 1 1 1 1 1 1 1 07FFH MCS-51单片机寻址范围:64KB 26210=216即16位地址线地址空间:A15A14A13A12A11A10A9A8A7A0 单片机 A10A9A8A7A0 6116,上式中:“”表示0或1。即单片机地址空间中包含有32个2KB。某片6116占据的是哪2KB不能确定地址浮动。,只有限定A15A11的取值才能确定6116在系统中的地址范围。如,P2.6=0,选中6116的/CS线。设P2.7 P2.5 P2.4 P

7、2.3假定全为1 则:6116地址范围是B800H BFFFH。同理,P27 P25 P24 P23假定全为0 则:6116地址范围是 0000H 07FFH;再设P27选中6116(设P26 P25 P24 P23全为1)则:地址范围是7800H 7FFFH,6116与2764在0800H DFFFH范围内地址重叠,这是不是违反交换原则呢?,不会!因为,6116是SRAM,2764是EPROM。除地址和选通信号外,还有读/写控制信号起作用。,RAM/WE/WR/OE/RD ROM/OE/PSEN,可用来区分二器件,5-5 可编程并行接口芯片8155,二、8155的RAM和I/O口地址编码包括

8、:内RAM 256B对应256个地址 命令/状态寄存器地址 1个地址 PA口地址 1个地址 PB口地址 1个地址 PC口地址 1个地址 定时器低8位地址 1个地址 定时器高8位地址 1个地址,三、8155的工作方式与基本操作有三种基本操作:1、作单片机片外256B数据存储器IO/M=0,与其它数据存储器统一编址。用MOVX访问。2、作扩展I/O口使用IO/M=1,PA口、PB口、PC口,可通过编程决定如何使用。命令寄存器(命令控制字)I/O口工作方式状态标志寄存器 PA口、PB口状态标志。,命令寄存器,只写不读状态标志寄存器,只读不写 二者使用同一地址,I/O口工作方式有四种:A口、B口 基本

9、I/O口,C口输入;A口、B口 基本I/O口,C口输出;A口选通I/O、B口基本I/O、C口作联络线;A口、B口选通I/O、C口作联络线。状态标志寄存器:BF 缓冲器满标志;INTR 端口中断请求标志;INTE 端口中断允许标志;TIMER 定时器中断请求。,3、作定时器扩展使用可以通过编程决定输出4种信号,即有四种工作台方式(P172 图5-27)单方波;连续方波;单脉冲;连续脉冲。由两个8位寄存器,决定14位定时器计数常数及四种工作方式。由命令寄存器的最高两位对定时器进行四种控制。,(a)定时器格式,(b)定时器方式及输出波形,四、单片机与8155的接口及操作软件 图 5-28(P173)

10、如图连线后地址分布是:内RAM地址 7E00H 7EFFH I/O口地址:命令状态口 7F00H PA口 7F01H PB口 7F02H PC口 7F03H 定时器低8位 7F04H 定时器高8位 7F05H,操作软件:MOV DPTR,#RAM或I/O口地址 MOV A,#欲写内容或命令字 MOV DPTR,A,5-6 常用通道配置及接口基础,一、按键、键盘及其接口1、按键操作存在的问题 键抖动 硬件消除抖动 P180图5-37,RS触发器构成单稳电路软件去抖 延时10ms左右。,2、按键分类(1)独立式按键单片机一条I/O口线对应一个按键。(2)键盘一般指矩阵式键盘。若干I/O口线作行线;

11、若干I/O口线作列线,在每个行列交点设置按键组成。图5-42 P185,3、按键监测方法(1)监测有无键按下(中断方式或查询方式)(2)按键的识别(哪一个键被按下)扫描法 有键按下时,读入行或列值,则为0值的行列交点的键便是。线反转法院 第一步,行线输出全0,列线输入;第二步,列线输出全0,行线输入;输入的行值、列值均为0的相应键便是。,二、七段LED显示器及接口1、字形码表的产生,P192 表5-112、显示方式1)静态显示2)动态显示(利用人眼的视觉暂留效应)3、接口方法1)与单片机直接相接:取字形码表中的码值来显示。2)通过硬件七段译码器相接:单片机利用口线输出十六进制数来显示。,5-7

12、 D/A转换,一、D/A转换的作用,1、DAC 0832内部结构P205 图5-58有20个引脚。,2、与8031单片机接口及操作软件(1)单缓冲方式 P206 图5-60,有20个引脚DI0 DI7 数据输入线 ILE 数据允许锁存/CS 输入寄存器选择/WR1 输入寄存器的写选通/WR2 DAC寄存器的写选通/XREF 数据传送信号 Vref 基准电源输入 Rfb 反信号输入(内有反馈电阻)Iout1、Iout2 电流输出Vcc、AGND、DGND 电源、地,完成一次D/A转换:MOV DPTR,#7FFFH;DAC 0832口地址MOV A,#DATA;欲转换的数字量MOVX DPTR,

13、A;转换(2)双缓冲器同步方式 电路:图5-61 图中:P2.5 选中DAC 0832(1)P2.6 选中DAC 0832(2)输入锁存器P2.7 控制两芯片/XREF同步转换,3、应用例、利用单片机及DAC 0832产生阶梯波,DAC 0832采用单缓冲方式,定时1ms,增幅10,10ms一循环。,解:START:MOV A,#00H MOV DPTR,#7FFFH;转换器地址 MOV R1,#0AH;10个台阶(10ms),LOOP:MOVX DPTR,A;送欲转换数字量 CALL DL1;延时1ms DJNZ R1,NEXT;10个台阶未完继续增幅 SJMP START NEXT:ADD

14、 A,#10 JMP LOOP DL1:MOV 20H,#249 DLL:NOP NOP DJNZ 20H,DLL RET 如此,还可产生锯齿波,三角波等。,5-8 A/D转换,一、常用A/D转换器的转换原理,分辨率的定义:输出数字量变化一个相邻数码所需要输入模拟电压的变化量。用公式表示为:满刻度电压/2n(n为位数),二、ADC 0808/0809 8路8位A/D转换器采用逐次逼近式A/D转换原理(时钟:10 1280KHz)模拟输入有8个通道(任一通道模拟都可以转换为一个8位数字量输出),1、ADC 0809内部结构及引脚(图 5-72),图中SAR是逐次逼近寄存器;引脚(有28条):IN

15、0 IN7 8路模拟量输入通道的输入口;2-1 2-8 8位数字量输出口;START 启动输入口 启动转换 ALE 通道地址锁存 EOC 转换结束输出信号 OE 输出允许 CLK 时钟端 ADDA、ADDB、ADDC 8路模拟开关的3位地址选择端 REF(+)、REF(-)参电压输入端 Vcc、GND 电源、地。,2、ADC 0809 与8031单片机接口设计 有查询方式、中断方式、等待延时方式。片内无时钟,由单片机的ALE(fosc/6)经二分频后接入。若fosc=6MHz,则接入时钟为500KHz,满足:10 1280KHz的要求。图 5-75,P2.7(片选)地址码 输入通道C B A7

16、FF8H 0 0 0 0 IN0 7FFFH 0 1 1 1 IN7,例、对通道IN0,采样一次,转换,并将转换结果存到数据存储区。解:MAIN:MOV R1,#data;存数地址MOV DPTR,#7FF8H;P2.7=0,指向IN0MOVX DPTR,A;不论A中为何内容都启动转换MOV R6,#0AH;软件延时 DLAY:NOP NOP NOP NOP NOP DJNZ R6,DLAY MOVX A,DPTR;读转换结果 MOV R1,A;存储数据,A/D转换接口的设计,1、硬件连线(图P218 5-75),图中,ALE=START=/(/WR+P2.7)OE=/(/RD+P2.7)通道

17、地址:P27 P26 P20 P07 P0.3 P0.2 P0.1 P0.0 A15 A14 A8 A7 A3 A2 A1 A0 7FFBH 0 0 0 0 7FFFH 0 1 1 1,(1)延时等待方式,2、软件设计方法,分别8路模拟信号轮流采样一次,并依次把结果转存到数据存储区的采样转换程序如下(设数据区首地址30H;采样采用循环程序,R7作计数器):,ORG 0000H AJMP MAIN ORG 0100H MAIN:MOV R1,#30H MOV DPTR,#7FF8H MOV R7,#08H,LOOP:MOVX DPTR,A MOV R6,#0FH DLAY:NOP NOP NOP

18、 NOP DJNZ R6,DLAY MOVX A,DPTR MOV R1,A INC DPTR INC R1 DJNZ R7,LOOP RET,(2)中断方式 合上K1,启动转换后,经tEOC时间,EOC输出负脉冲波形,表示某通道转换已结束,单片机可以取走数据。让八个通道轮流转换一遍。ORG 0000HAJMP MAIN2ORG 0013HAJMP INTR1ORG 0300H MAIN2:MOV R1,#30HSETB IT1;下降沿触发/INT1中断SETB EX1;允许/INT1中断SETB EA;开中断MOV R7,#08H;待转换的通道个数,即循环次数MOV DPTR,#7FF8H;

19、指向通道0MOV DPTR,A;启动首次转换,WAIT:CJNE R7,#00H,$;等待中断 CLR EX1;8个通道转换完成,结束 SJMP$ORG 0500H INTR1:MOVX A,DPTR;读取转换结果 MOV R1,A;存数 INC DPTR;通道号加1 INC R1 DEC R7 MOVX DPTR,A;启动下一次转换 RETI END,(3)查询方式启动转换后,经tOEC时间后,转换结束,EOC输出负脉冲。所以,启动转换后,延时tEOC时间,检查EOC电平,若为0说明仍在转换中,若为高电平说明转换结束,书中只针对IN0通道模似量转换一次而编程。ADC 0801 0804转换芯

20、片与ADC 0809芯片的区别是:ADC 0801 0804是单通道模拟信号。,P00 DB0 REF+P01 DB1 REF-P02 DB2 P07 DB7 P27/CS VIN+/WR/WR VIN-/RD/RD/INT1 INTR,上图中,模拟通道地址是:7FFFH。编程同ADC 0809,只是仅有一个通道。,8031 ADC0801,本章小结,1、常用的程序存储器芯片有哪些?2、扩展芯片地址范围如何确定?3、8155A有几个并行I/O口?几种工作方式?4、如何软件去抖?5、键盘扫描程序一般具有哪些功能?6、静态显示与动态显示的区别7、动态显示的接口电路及程序设计8、DAC 0832的作用是什么?分辨率是多少位?9、D/A转换器的指标有哪些?10、ADC0809的作用是什么?有几个模拟通道?,作业,P2451、2、3、5、7、9、18、20、30、33、42,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号