《最新单片机应用技术第五章_MCS-51系统扩展技术PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新单片机应用技术第五章_MCS-51系统扩展技术PPT课件.ppt(65页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、项目引入项目引入1.项目描述片外RAM对信号灯的控制及可编程I/O口的应用2.硬件电路与工作原理让学生根据任务分析硬件要求,画出具体电路,并在实验开发板上接线3.程序设计(给出控制程序) 该系统的资源如下:该系统的资源如下: 4KB ROM,256B RAM; 五源中断系统;五源中断系统; 两个十六位加一定时两个十六位加一定时 / 计数器计数器; 一个全双工串行一个全双工串行UART; 四个并行四个并行I / O口。口。二、二、8031硬件最小系统硬件最小系统 8031单片机片内无单片机片内无ROM,若要正常工作,必需外配,若要正常工作,必需外配ROM。外接。外接ROM后,后,P3口、口、P2
2、口、口、P0口均被占用只剩下口均被占用只剩下P1口作口作I / O口用,其它口用,其它功能不变。功能不变。 图中:图中:/E 三态门控制端三态门控制端 G 低电平锁存低电平锁存 三总线的概念三总线的概念: :地址总线地址总线 AB,P0口提供(口提供(A7 A0);); P2口提供(口提供(A15 A8),共),共16位。位。数据总线数据总线 DB,P0口提供(口提供(D7 D0),共),共8位。位。控制总线控制总线 CB,ALE 、 、 、 、等。、等。EAPSENWRRD7-2 7-2 存储器的扩展存储器的扩展一、三总线的连接一、三总线的连接 1、数据线的连接、数据线的连接 P0口的八位线
3、承担此任,此时不用外接上拉电阻。口的八位线承担此任,此时不用外接上拉电阻。2、地址线的连接、地址线的连接 P0口承担地址低八位线,口承担地址低八位线,A0 A7; P2口承担地址高八位线。口承担地址高八位线。A8 A15。注意:注意:P0口线地址口线地址 / 数据分时复用,需用地址锁存器数据分时复用,需用地址锁存器 74LS373锁存地址。锁存地址。 A10 A8A7 A0D7 D0 CB3、控制线的连接、控制线的连接对存储器来讲控制线无非是:芯片的对存储器来讲控制线无非是:芯片的选通选通控制、控制、读写读写控制。控制。单片机与外部器件数据交换要遵循两个重要原则单片机与外部器件数据交换要遵循两
4、个重要原则:一是,地址唯一性,一个单元一个地址。一是,地址唯一性,一个单元一个地址。二是,同一时刻,二是,同一时刻,CPU只能访问一个地址,即只能与一只能访问一个地址,即只能与一 个单元交换数据。个单元交换数据。不交换时,外部器件处于锁闭状态,对总线呈浮空状态。不交换时,外部器件处于锁闭状态,对总线呈浮空状态。 读读 / 写写:CPU向外部设备发出的读向外部设备发出的读/写控制命令。写控制命令。 EPROM:/OE /PSEN SRAM: /WE /WR /OE /RD 选通选通:CPU与器件交换数据或信息,需先发出选与器件交换数据或信息,需先发出选通信号通信号/CE或或/CS,以便选中芯片。
5、,以便选中芯片。二、存储器地址编码二、存储器地址编码SRAM6116:“16” 2K8 = 2KB 21210 = 211即即6116有有11根地址线。根地址线。地址空间:地址空间: A10 A9 A8 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 单片机单片机 A10A9A
6、8A7A0 6116 25 = 322KB上式中:上式中:“”表示表示0或或1。即单片机地址空间中包含有即单片机地址空间中包含有32个个2KB。某片。某片6116占据的是哪占据的是哪2KB不能确定不能确定地址浮动。地址浮动。 只有限定只有限定A15A11的取值才能确定的取值才能确定6116在系统中的在系统中的地址范围。如,地址范围。如,P2.6 = 0 ,选中,选中6116的的/CS线。设线。设P2.7 P2.5 P2.4 P2.3假定全为假定全为1 则则: 6116地址范围是地址范围是B800H BFFFH。 同理,同理, P27 P25 P24 P23假定全为假定全为0 则则: 6116地
7、址范围是地址范围是 0000H 07FFH;再设再设P27选中选中6116 (设(设P26 P25 P24 P23全为全为1) 则:地址范围是则:地址范围是7800H 7FFFH 可见:存储器芯片在系统中地址分布由两个因素决定:可见:存储器芯片在系统中地址分布由两个因素决定: 一是,芯片本身的地址线(与容量有关)一是,芯片本身的地址线(与容量有关) 二是,芯片选通信号的获得方式。二是,芯片选通信号的获得方式。扩展存储器时,总是让单片机低位地址与存储器芯片地址扩展存储器时,总是让单片机低位地址与存储器芯片地址线相接;而让单片机剩余的高位地址线(在线相接;而让单片机剩余的高位地址线(在P2口)常作
8、为片口)常作为片选信号线。选信号线。这种方法对这种方法对SRAM、EPROM、扩展、扩展I / O芯片、外设同芯片、外设同样适用。样适用。 P2.5 = 0时,选中时,选中2764;“64” 8K8b = 23210 = 213 A15 A14 A13 A12 A11 A0 23 = 88KB若取若取P2.7 P2.6均为均为1;则则2764在本系统内地址范围:在本系统内地址范围:C000H DFFFH可以。此时可以。此时6116:D800H DFFFH 2764:C000H DB00H 若若6116与与2764都用都用A13 (P25)选中可否)选中可否6116与2764在0800H DFF
9、FH范围内地址重叠,这是不是违反交换原则呢?不会!因为,不会!因为,6116是是SRAM,2764是是EPROM。除地址。除地址和选通信号外,还有读和选通信号外,还有读/写控制信号起作用。写控制信号起作用。RAM /WE /WR /OE /RD ROM /OE /PSEN可用来区分二器件包括:包括: 256B静态静态RAM; 2 个个8位和位和1个个6位可编程并行位可编程并行I / O口;口; 1个个14位定时器(减位定时器(减1计数);计数); 1个个8位地址锁存器;位地址锁存器; 一些控制逻辑电路等。一些控制逻辑电路等。 5-5 5-5 可编程并行接口芯片可编程并行接口芯片81558155
10、 一、引脚一、引脚 AD0 AD7 地址地址/数据线。数据线。 传送地址、数据、命令、状态等。传送地址、数据、命令、状态等。 ALE 地址锁存(输入)地址锁存(输入) IO/M IO口口/RAM选择;选择;0:选内选内RAM;1:选内选内IO口口 /CE 片选线片选线 /RD、/WR 读、写控制读、写控制 PA7 PA0 A口输入口输入/输出线输出线 PB7 PB0 B口输入口输入/输出线输出线 PC5 PC0 C口输入口输入/输出线输出线 TIMERIN 定时器输入(输入定时器所需时钟)定时器输入(输入定时器所需时钟) TIMEROUT 定时器输出(输出所产生的方波脉冲)定时器输出(输出所产
11、生的方波脉冲) 二、二、81558155的的RAMRAM和和I / OI / O口地址编码口地址编码包括:内包括:内RAM 256B对应对应256个地址个地址 命令命令/状态寄存器地址状态寄存器地址 1个地址个地址 PA口地址口地址 1个地址个地址 PB口地址口地址 1个地址个地址 PC口地址口地址 1个地址个地址 定时器低定时器低8位地址位地址 1个地址个地址 定时器高定时器高8位地址位地址 1个地址个地址 由由AD7 AD0及及IO/M决定。决定。三、三、81558155的工作方式与基本操作的工作方式与基本操作有三种基本操作有三种基本操作:1、作单片机片外、作单片机片外256B数据存储器数
12、据存储器IO/M=0,与其它数据存储器统一编址。用,与其它数据存储器统一编址。用MOVX访问。访问。2、作扩展、作扩展I / O口使用口使用IO/M=1,PA口、口、PB口、口、PC口,可通过编程决定如何使用。口,可通过编程决定如何使用。命令寄存器(命令控制字)命令寄存器(命令控制字) I / O口工作方式口工作方式状态标志寄存器状态标志寄存器 PA口、口、PB口状态标志。口状态标志。 命令寄存器,只写不读命令寄存器,只写不读状态标志寄存器,只读不写状态标志寄存器,只读不写 二者使用同一地址二者使用同一地址 I / O口工作方式有四种:口工作方式有四种:A口、口、B口口 基本基本I / O口,
13、口, 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)
14、单方波;单方波; 连续方波;连续方波; 单脉冲;单脉冲; 连续脉冲。连续脉冲。由两个由两个8位寄存器,决定位寄存器,决定14位定时器计数常数及四种工作方式。位定时器计数常数及四种工作方式。由命令寄存器的最高两位对定时器进行四种控制。由命令寄存器的最高两位对定时器进行四种控制。 T7T6T5T4T3T2T1T0(a) 定时器格式T7T6T5T4T3T2T1T0D7 D7 D7 D7 D7 D7 D7 D7 减1计数器低8位减1计数器低6位定时器方式编辑位D7 D7 D7 D7 D7 D7 D7 D7 M2 M1方式定时器输出波形0 0单波形0 1 连续波形1 0单脉冲1 1连续脉冲(b)定时器方
15、式及输出波形四、单片机与四、单片机与81558155的接口及操作软件的接口及操作软件 图图 5-28 (P173)如图连线后地址分布是:内如图连线后地址分布是:内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 5-6 常用通道配置及接口基础常用通道配置及接
16、口基础一、按键、键盘及其接口一、按键、键盘及其接口1、按键操作存在的问题、按键操作存在的问题 键抖动键抖动 硬件消除抖动硬件消除抖动 P180图图5-37,RS触发器构成单稳电路触发器构成单稳电路软件去抖软件去抖 延时延时10ms左右。左右。 2、按键分类、按键分类(1)独立式按键)独立式按键单片机一条单片机一条I / O口线对应一个按键。口线对应一个按键。(2)键盘)键盘一般指矩阵式键盘。一般指矩阵式键盘。若干若干I / O口线作行线;若干口线作行线;若干I / O口线作列线,在每个行列交口线作列线,在每个行列交点设置按键组成。点设置按键组成。 图图5-42 P185 3、按键监测方法、按键
17、监测方法(1)监测有无键按下)监测有无键按下(中断方式或查询方式)(中断方式或查询方式)(2)按键的识别)按键的识别 (哪一个键被按下)(哪一个键被按下) 扫描法扫描法 有键按下时,读入行或列值,有键按下时,读入行或列值, 则为则为0值的行列交点的键便是。值的行列交点的键便是。 线反转法院线反转法院 第一步,行线输出全第一步,行线输出全0,列线输入;,列线输入; 第二步,列线输出全第二步,列线输出全0,行线输入;,行线输入; 输入的行值、列值均为输入的行值、列值均为0的相应键便是。的相应键便是。 二、七段二、七段LEDLED显示器及接口显示器及接口1、字形码表的产生、字形码表的产生, P192
18、 表表5-112、显示方式、显示方式1)静态显示)静态显示2)动态显示(利用人眼的视觉暂留效应)动态显示(利用人眼的视觉暂留效应)3、接口方法、接口方法1)与单片机直接相接:取字形码表中的码值来显示。)与单片机直接相接:取字形码表中的码值来显示。2)通过硬件七段译码器相接:单片机利用口线输出十六进制)通过硬件七段译码器相接:单片机利用口线输出十六进制数来显示。数来显示。 5-7 D / A5-7 D / A转换转换一、一、D / A转换的作用转换的作用二、二、D / A转换的重要指标转换的重要指标分辨率的定义:分辨率的定义:最小输出电压与最大输出电压所对应的数字量之比。最小输出电压与最大输出电
19、压所对应的数字量之比。如如10位位D / A转换器:转换器:分辨率分辨率 = 1/(2101)= 1/1023 = 0.001反映了反映了D / A转换的灵敏度。转换的灵敏度。 三、三、D / A转换器转换器DAC0830 0832u8位分辨率位分辨率u具有两个输入数据寄存器(具有两个输入数据寄存器(8位);可单缓冲、双缓冲或位);可单缓冲、双缓冲或u直接输入,实现多通道直接输入,实现多通道D / A同步转换输出。同步转换输出。u须外接参考电压源须外接参考电压源u为电流输出型为电流输出型D / A转换器转换器 1、DAC 0832内部结构内部结构P205 图图5-58有有20个引脚。个引脚。
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转换:转换:M
21、OV DPTR,#7FFFH ;DAC 0832口地址口地址MOV A,#DATA ;欲转换的数字量;欲转换的数字量MOVX DPTR , 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一循环。一循环。解:解: ST
22、ART: MOV A,#00H MOV DPTR,#7FFFH ;转换器地址;转换器地址 MOV R1,#0AH ;10个台阶(个台阶(10ms) 1ms0vt LOOP: MOVX DPTR,A ;送欲转换数字量;送欲转换数字量 CALL DL1 ;延时;延时1ms DJNZ R1,NEXT ;10个台阶未完继续增幅个台阶未完继续增幅 SJMP START NEXT: ADD A,#10 JMP LOOP DL1 : MOV 20H,#249 DLL : NOP NOP DJNZ 20H,DLL RET 如此,还可产生锯齿波,三角波等。如此,还可产生锯齿波,三角波等。 5-8 A / D5-
23、8 A / D转换转换一、常用一、常用A / D转换器的转换原理转换器的转换原理 1、逐次逼近式、逐次逼近式 图图5-662、双积分式、双积分式 图图5-67分辨率的定义:分辨率的定义:输出数字量变化一个相邻数码所需要输入模拟电压的变化量。输出数字量变化一个相邻数码所需要输入模拟电压的变化量。用公式表示为:用公式表示为:满刻度电压满刻度电压/2n (n为位数)为位数) 二、二、ADC 0808 / 0809 8路路8位位A / D转换器转换器采用逐次逼近式采用逐次逼近式A / D转换原理(时钟:转换原理(时钟:10 1280KHz)模拟输入有模拟输入有8个通道(任一通道模拟都可以转换为一个个通
24、道(任一通道模拟都可以转换为一个8位数字量输出)位数字量输出) 1、ADC 0809内部结构及引脚内部结构及引脚( 图图 5-72 ) 图中图中SAR是逐次逼近寄存器;引脚(有是逐次逼近寄存器;引脚(有28条):条):IN0 IN7 8路模拟量输入通道的输入口;路模拟量输入通道的输入口; 2-1 2-8 8位数字量输出口;位数字量输出口; START 启动输入口启动输入口 启动转换启动转换 ALE 通道地址锁存通道地址锁存 EOC 转换结束输出信号转换结束输出信号 OE 输出允许输出允许 CLK 时钟端时钟端 ADDA、ADDB、ADDC 8路模拟开关的路模拟开关的3位地址选择端位地址选择端
25、REF(+)、)、REF(-) 参电压输入端参电压输入端 Vcc、GND 电源、地。电源、地。 2、ADC 0809 与与8031单片机接口设计单片机接口设计 有查询方式、中断方式、等待延时方式。有查询方式、中断方式、等待延时方式。片内无时钟,由单片机的片内无时钟,由单片机的ALE(fosc/6)经二分频)经二分频后接入。后接入。若若fosc = 6MHz,则接入时钟为,则接入时钟为500KHz,满足:满足:10 1280KHz的要求。的要求。 图图 5-75 P2.7(片选)(片选) 地址码地址码 输入通道输入通道C B A7FF8H 0 0 0 0 IN0 7FFFH 0 1 1 1 IN
26、7 例、对通道例、对通道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、硬件
27、连线、硬件连线 (图图P218 5-75) 图中,图中, ALE = START = /(/WR+P2.7) OE = /(/RD+P2.7)通道地址:通道地址: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;采
28、样;采样采用循环程序,采用循环程序,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 NOP DJNZ R6,DLAY MOVX A,DPTR MOV R1,A INC DPTR INC R1 DJNZ R7,LOOP RET (2) 中断方式中断方式 合上合上K1,启动转换后,经,启动转换后,经tEOC时间,时间,EOC输出负脉冲波形,表示某输出负脉冲波形,表示某通道
29、转换已结束,单片机可以取走数据。让八个通道轮流转换一遍。通道转换已结束,单片机可以取走数据。让八个通道轮流转换一遍。ORG 0000HAJMP MAIN2ORG 0013HAJMP INTR1ORG 0300H MAIN2:MOV R1,#30HSETB IT1 ;下降沿触发;下降沿触发/INT1中断中断SETB EX1 ;允许;允许/INT1中断中断SETB EA ;开中断;开中断MOV R7,#08H ;待转换的通道个数,即循环次数;待转换的通道个数,即循环次数MOV DPTR,#7FF8H;指向通道;指向通道0MOV DPTR,A ;启动首次转换;启动首次转换 WAIT: CJNE R7
30、,#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电平,若电平,若
31、为为0说明仍在转换中,若为高电平说明转换结束,书中只针对说明仍在转换中,若为高电平说明转换结束,书中只针对IN0通道模似量转换一次而编程。通道模似量转换一次而编程。 ADC 0801 0804转换芯片与转换芯片与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、4265 结束语结束语