第六章单片机系统的并行扩展_第1页
第六章单片机系统的并行扩展_第2页
第六章单片机系统的并行扩展_第3页
第六章单片机系统的并行扩展_第4页
第六章单片机系统的并行扩展_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、lP0、P2口作为单片机的地址总线和数据总线l地址锁存原理l看时序图注意三个控制引脚的电平变化:ALE、PSEN、WR/RD 为了实现单片机与外部存储器的连接,把单片为了实现单片机与外部存储器的连接,把单片机的地址线分为机的地址线分为片内地址线片内地址线和和片选地址线片选地址线两部分两部分。l片内地址线片内地址线通常直接或通过地址锁存器与相应存通常直接或通过地址锁存器与相应存储器地址线相连。储器地址线相连。l片选地址线片选地址线通常直接或通过地址译码器和存储器通常直接或通过地址译码器和存储器芯片的芯片的CE相连,也可以悬空不用。相连,也可以悬空不用。l线选法0芯片A0A1A2CS(6000H7

2、FFFH)A0A1A2A151芯片A0A1A12CS(0A000H0BFFFH)A0A1A12A142芯片A0A1CS(0C000H0DFFFH)A0A1A13. 用某一位地址线直接连到所扩展的芯片的片选端 。A15A14A13A12A3A2A1A0011XX0000#单元011XX0011#单元011XX0102#单元011XX0113#单元011XX0004#单元011XX1015#单元011XX1106#单元011XX1117#单元0#芯片 关于地址重叠关于地址重叠:有一个以上有一个以上CPU地址与存储单元对应。地址与存储单元对应。X为无关项,即无论X取0,或取1,都不会影响对单元的确定

3、,0#芯片中每个单元都有210个重叠地址 。当X由全“0”,变到全“1”时,0#芯片的地址范围即为6000H7FFFH。基本地址范围:6000H6007H。 l全地址译码法 片选地址线全部参加译码常用地址译码器: 2-4译码器:74LS139 3-8译码器:74LS138 4-16译码器:74LS154单元地址唯一、地址空间能充分利用,不存在地址重叠。l部分地址译码法2芯片A0A1A2CS(0BFF8H0BFFFH)A0A1A23芯片A0A1A12CS(0E000H0FFFFH)A0A1A12.0芯片A0A1CS(3FFCH3FFFH)A0A1Y0Y1Y2Y3A0A1S74LS1381芯片A0

4、A1CSA0A1(7FFCH7FFFH)A15A14A13悬空 片选线中只有一部分参与译码,其余部分是悬空,具有重叠地址 一、一、MCS-51MCS-51用于扩展存储器的外部总线信号:用于扩展存储器的外部总线信号:P P0.00.7: 8 8位数据和低位数据和低8 8位地址信号,复用总线位地址信号,复用总线ADAD0 07 7。P P2.02.7: 高高8 8位地址信号位地址信号ABAB8 81515ALEALE:地址锁存允许控制信号地址锁存允许控制信号PSENPSEN:片外程序存储器读控制信号片外程序存储器读控制信号RDRD:片外数据存储器读控制信号片外数据存储器读控制信号WRWR:片外数据

5、存储器写控制信号片外数据存储器写控制信号EAEA:程序存储器选择程序存储器选择二、二、扩展程序存储器电路:扩展程序存储器电路:80318031扩展扩展32KB EPROM32KB EPROMIntel 27256 Intel 27256 常用常用EPROMEPROM芯片:芯片:Intel 2716(2KIntel 2716(2K8 8位位) )、2732(4KB)2732(4KB)、2764(8KB) 2764(8KB) 、27256(32KB)27256(32KB)、27512(64KB)27512(64KB)。(a) 实际连线表示法三三. 扩展数据存储器电路:扩展数据存储器电路:常用常用R

6、AMRAM芯片:芯片:Intel 6116(2KB)Intel 6116(2KB)、6264(8KB)6264(8KB)、62256(32KB)62256(32KB)。80318031扩展扩展8KB RAM 8KB RAM Intel 6264Intel 6264单片机连接单片机连接 一片一片 2764 2764 和和 两片两片 62646264 单片机往往通过P0和P2口构成扩展总线,扩展EPROM、RAM或其它功能芯片, MCS-51单片机可提供给用户使用的I/O口只有P1口和部分P3口。因此,在大部分的MCS-51单片机应用系统设计中都需要进行I/O口的扩展。6-4-2 6-4-2 可编

7、程并行可编程并行I/OI/O扩展接口扩展接口8255A8255A 1.1.数据线数据线D D0 07 7:传送计算机与传送计算机与82558255之间的数据、控制字和状态字。之间的数据、控制字和状态字。PAPA0 07 7 PB PB 0 07 7 PC PC0 07 7:传送传送82558255与外设之间的数据和联络信息,与外设之间的数据和联络信息,PCPC0 07 7可用作数据线或联络线可用作数据线或联络线3.3.读写控制线读写控制线RDRD,WRWR控制计算机与控制计算机与82558255之间的信息传送和流向之间的信息传送和流向4.4.复位线复位线RESETRESET高电平复位,使内部寄

8、存器全部清零。高电平复位,使内部寄存器全部清零。2.2.地址线地址线CSCS:片选线片选线A A1 1,A A0 0:口选线,寻址口选线,寻址 PAPA,PBPB,PCPC数据口和控制口。数据口和控制口。双向三态缓冲,驱动输入输出锁存输入输出锁存/缓冲缓冲输出锁存输出锁存/缓冲缓冲,输输入缓冲入缓冲输出锁存输出锁存/缓冲缓冲,输入输入缓冲缓冲,还可作握手联还可作握手联络线络线当当RD=0时,允许单片机从时,允许单片机从8255A读取数据或读取数据或状态字状态字;当当WR=0时,允许单片机将数据或控时,允许单片机将数据或控制字写入制字写入8255A;CS=0时时,选中芯片选中芯片;A1,A0:口

9、选线口选线A组控制组控制块控制块控制A口及口及C口口的高的高4位。位。B组控制块组控制块控制控制B口及口及C口的低口的低4位。位。RD方式控制字PC口置位/复位控制字 (1)方式方式0(基本(基本I/O方式)方式) PA、PB、PC可可分别被定义为方式分别被定义为方式0输入或方式输入或方式0输出。输出。输出具有锁存功能,输入没有锁存。输出具有锁存功能,输入没有锁存。 适用于适用于无条件传输数据无条件传输数据的设备,如读一组开关状态、控制的设备,如读一组开关状态、控制一组指示灯,不使用应答信号,一组指示灯,不使用应答信号,CPU可以随时读出开关状可以随时读出开关状态,随时把一组数据送指示灯显示。

10、态,随时把一组数据送指示灯显示。如:如:令令A口和口和C口高四位工作在方式口高四位工作在方式0输出方式,输出方式, B口和口和C口低四位工作在方式口低四位工作在方式0输入方式。输入方式。MOV R0 , #0FBH ;控制字寄存器地址控制字寄存器地址MOV A , #83H ;方式控制字;方式控制字MOVX R0 , A(2 2)方式)方式1 1(应答(应答I/OI/O方式)方式) 有选通输入和选通输出两种工作方式。有选通输入和选通输出两种工作方式。 A A口和口和B B口皆可独立地设置成这种工作方口皆可独立地设置成这种工作方式,在方式式,在方式1 1下,下,A A口和口和B B口通常用于传送

11、口通常用于传送和它们相连外设的和它们相连外设的I/OI/O数据,数据,C C口用作口用作A A口口和和B B口的握手联络线,以实现口的握手联络线,以实现中断方式传中断方式传送送I/OI/O数据数据。模式模式1下的下的C口状态字格式口状态字格式 方式方式1输入输入 STB:设备的选通信号输入线,低电平有效,通常是外设给8255A的信号,表示外设给8255的数据已到达引脚。IBF:端口锁存器满标志输出线,高电平有效。通知外设数据已从引脚取入锁存器中。INTE:8255A端口内部的中断允许触发器。 “1”表示中断允许(手动设置)。INTR:中断请求信号线,高电平有效。当STB、IBF、INTE都为”

12、1”时,INTR就置“1” 。 方式1输出 :输出锁存器满状态标志输出线。 表示CPU已将数据输出到此端口。 :设备响应信号输入线。表示外设已取走数据。 INTR:中断请求信号输出线,高电平有效。当 、 和INTE都为”1”时,INTR被置“1”,发出中断请求 。OBFACKOBFACK方式方式2仅对仅对PA口有意义。口有意义。 方式方式2使使PA口成为口成为8位双向三态数据总线口,位双向三态数据总线口,既可发送数据又可接收数据既可发送数据又可接收数据。PA口方式口方式2工作工作时,时,PB口仍可作方式口仍可作方式0和方式和方式1 I/O口,口,PC口口高高5位作状态控制线。位作状态控制线。

13、方式选择控制字:方式选择控制字:D7=1D7=1C C口置位口置位/ /复位控制字:复位控制字:D7=0D7=0控制字控制字D7D6D5D4D3D2D1D0方式方式1A 组方式组方式PAPC47方式方式PBPC03置置/复位复位0位选择位选择1 / 0例:例:8255PA8255PA口方式口方式0 0输出单片机片内输出单片机片内RAMRAM数据,数据,PBPB口方式口方式1 1输入输入。 PIPIOS:M MOV VDPTRDPTR,#7F03H#7F03H;控制口地址;控制口地址M MOV VA A,#86H#86H;写控制字;写控制字M MOVXVX DPTRDPTR,A A;设工作方式设

14、工作方式M MOV VDPTRDPTR,#7F00H#7F00H;PAPA数据口地址数据口地址M MOV VA A,R0R0;取;取RAMRAM的数据的数据M MOVXVX DPTRDPTR,A A;由;由PAPA口输出口输出 8255A选通方式接口逻辑选通方式接口逻辑主程序:主程序:MAIN:MOV 8,#30H ;RAM首址首址 1区区R0 MOV 0FH,#20H ;长度;长度1区区R7 SETB EA ;开中断;开中断 SETB EX1 ;允许外中断,电平触发方式;允许外中断,电平触发方式 MOV DPTR,#7FFFH ;将;将8255A的的PC2(即(即INTEB)置)置“1” M

15、OV A,05H MOVX DPTR,A ;允许;允许B口中断口中断 MOV A,#0BCH ;写方式控制字(;写方式控制字(PB口方式口方式1输出)输出) MOVX DPTR,A MOV DPTR,#7FFDH ;从;从PB口输出第一个数据打印口输出第一个数据打印 MOV A,30H MOVX DPTR,A INC 8 ;RAM指针加指针加1 DEC 0FH ;长度减;长度减1 。 ;执行其它任务;执行其它任务 外中断外中断1服务程序:服务程序: PINT1: PUSH ACC ;现场保护(;现场保护(A,DPTR 等进堆栈)等进堆栈) PUSH DPH PUSH DPL PUSH PSW

16、MOV PSW,#8 ;当前工作寄存器区切换到;当前工作寄存器区切换到1区区 MOV A,R0 ;从;从PB口输出下一个数据打印口输出下一个数据打印 MOV DPTR,#7FFDH MOVX DPTR,A INC R0 ;修改指针、长度;修改指针、长度 DJNZ R7,BACK CLR EX1 ;长度为;长度为0,关中断返回,关中断返回 SETB F0 SETB F0 ;置打印结束标志位;置打印结束标志位F0F0BACK:POP PSW BACK:POP PSW ;现场恢复(;现场恢复(A A,DPTRDPTR等退栈)等退栈) POP DPLPOP DPL POP DPH POP DPH PO

17、P ACC POP ACC RETI RETI实现数模转换的功能部件称为D/A转换器,衡量D/A转换器性能的主要参数有: 分辨率,即输出的模拟量的最小变化量,分辨率,即输出的模拟量的最小变化量,n位的位的D/A转换转换器分辨率为器分辨率为2-n。满刻度误差,即输入为全满刻度误差,即输入为全1时输出电压与理想值之间的时输出电压与理想值之间的误差,一般为误差,一般为2-(n+1)输出范围;输出范围;转换时间,指从转换器的输入改变到输出稳定的时间间转换时间,指从转换器的输入改变到输出稳定的时间间隔;隔;是否容易和是否容易和CPU接口。接口。梯形电阻式梯形电阻式D/AD/A转换原理:转换原理:“按权展

18、开,然后相加按权展开,然后相加” 321027214181RVRVIIIIREFREFl根据以上的分析计算,可推理得到n位二进制数的转换表达式:l其中D为n位二进制数的和,因此, 电流和二进制数成线性关系。 l运算放大器的输出电压为:运算放大器的输出电压为:nREFDRVI2InREFDRRVV200lDAC0832是美国数据公司的8位D/A,片内带数据锁存器,电流输出,输出电流稳定时间为1 us。+5V +15V单电源供电,功耗为20mW。 6-5-26-5-2 DAC 0832 DAC 0832DAC 0832DAC 0832的内部结构的内部结构控制线(控制线(5条)条)ILE: 数据锁存

19、允许控制信号输入线,高电平有效; CS:片选片信号输入线,低电平有效;WR1:数据锁存器写选通输入线,负脉冲有效 ;WR2:DAC寄存器写选通输入线,负脉冲有效;XFER:数据传输控制信号输入线,低电平有效; 12345678910201918171615141312118位数据锁存器8位DAC寄存器8位D/A转换器DAC0832CSWR1AGNDD3D2D1D0VREFRfbDGNDIOUT1IOUT2D7D6D5D4XFEWR2ILEVCCD0-D7LE1ILECSWR1XFERVREFIOUT1IOUT2锁存WR2LE2锁存RfbAGNDVccDGND8121132010(b)DAC08

20、32结构框图图6-30 DAC0832的引脚图和结构框图(a)DAC0832引脚图12345678910201918171615141312118位数据锁存器8位DAC寄存器8位D/A转换器DAC0832CSWR1AGNDD3D2D1D0VREFRfbDGNDIOUT1IOUT2D7D6D5D4XFEWR2ILEVCCD0-D7LE1ILECSWR1XFERVREFIOUT1IOUT2锁存WR2LE2锁存RfbAGNDVccDGND8121132010(b)DAC0832结构框图图6-30 DAC0832的引脚图和结构框图(a)DAC0832引脚图输出线(输出线(3条)条)IOUT1: 电流输

21、出线,当DAC寄存器为全1时IOUT1最大;IOUT2:电流输出线,其值和IOUT1值之和为一常数; Rfb: 反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度; 直通方式:直通方式:适宜连续反馈控制线路中;适宜连续反馈控制线路中; 使所有控制信号均有效(使所有控制信号均有效(CSCS、WR1WR1、WR2WR2、ILEILE、XFERXFER)8位位DACDAC寄存器寄存器输入输入寄存器寄存器-+IOUT2IOUT1RVERVOD07AGNDPA0PA1单缓冲器方式:单缓冲器方式:适宜一路模拟量输出,几适宜一路模拟量输出,几路模拟量非同步输出,控制使两个寄存路模拟量非同步输出,控制

22、使两个寄存器同时有效。器同时有效。双缓冲器方式:双缓冲器方式:适宜多个适宜多个DAC0832同时输出;同时输出; 输入寄存器和输入寄存器和DAC寄存器分配有各自的地址,寄存器分配有各自的地址,可分别选通用于同时输出多路模拟信号。可分别选通用于同时输出多路模拟信号。使用运算放大器,可以将DAC0832的电流输出线性地转换成电压输出。根据运放和DAC0832的连接方法,运放的输出可以分为单极型和双极型两种。 VoutBVref/256 Bb7*27+b6*26 +b0*20列方程:I1+I2+I3=0I1=Va/R,I2=Vout/2R,I3=Vref/2RVaBVref/256解得: Vout=

23、(B128)*Vref/128一路模拟量输出,单缓冲方式单缓冲方式例:例:D/AD/A转换程序,用转换程序,用DAC 0832DAC 0832输出输出0 05V5V锯齿波,电路为直锯齿波,电路为直通方式。设通方式。设V VREFREF= - 5V= - 5V,DAC 0832DAC 0832地址为地址为7FFFH7FFFH,脉冲周期要,脉冲周期要求为求为100ms100ms。100msDACSDACS:MOVMOVDPTRDPTR,#7FFFH#7FFFH;0832 I/O0832 I/O地址地址MOVMOVA A,#0#0;开始输出;开始输出0V0VDACLDACL:MOVXMOVXDPTR

24、DPTR,A A;输出模拟量;输出模拟量INCINCA A;升压;升压ACALLACALL DELAYDELAY;延时延时100ms/256100ms/256AJMPAJMPDACLDACL;连续输出;连续输出DELAYDELAY:;延时子程序;延时子程序+5V0V例:例:D/AD/A转换程序,用转换程序,用DAC 0832DAC 0832输出输出-1-1-5V-5V方波,方波,电路为直通方式。设电路为直通方式。设V VREFREF= 5V= 5V,DAC 0832DAC 0832地址地址为为7FFFH7FFFH。解: ORG 1000HSTART: MOV DPTR,#7FFFH LOOP:

25、 MOV A, #33H MOVX DPTR,A ;置上限电平置上限电平 ACALL DELAY ;形成方波顶宽;形成方波顶宽 MOV A,#0FFH MOVX DPTR, A ;置下限电平置下限电平 ACALL DELAY ;形成方波底宽;形成方波底宽 SJMP LOOP ;循环;循环DELAY: -1V-5VlA/D转换器是将模拟量转换成数字量的器件。模拟量可是电压、电流等电信号,也可是声、光、压力和温度等随时间连续变化的非电物理量。l非电物理量可通过合适的传感器等转换成电信号,模拟量只有转换成数字量才能被计算机采集、分析和计算处理。l电压频率式:精度高 价格低,但转换速度不高l积分式:抗

26、干扰能力好,转换速度低l逐次逼近式:转换速度较快逐次逼近式:转换速度较快l并行转换:l串行转换:以4位为例,首先1000B送比较,若Vx Vs则再送1100B,(若Vx Vs则送0100,)依次重复。衡量A/D性能的主要参数是:分辨率,即输出的数字量最低位变化一位所对应的输入模拟量的变化值;满刻度误差;转换速率;转换精度,满量程时实际输出与理论输出的接近程度;是否可方便地和CPU接口。6-6-2 ADC0809 ADC0809 一一结构结构8路模拟输入通道,分时转换通道地址译码锁存8位数字量输出D/A转换模块0809具有8位电阻阶梯,256个电阻,输出256个标准电压供比较树状开关结构二位电阻

27、阶梯1N01N7:8路模拟量输入通道;D7D0:8位三态数据输出线; A、B、C:通道选择输入线; ALE:通道锁存控制信号输入线 ;START:启动转换控制信号输入线;CLK:转换时钟输入线,CLK的典型值为640KHz,超过该频率时,转换精度会下降;EOC:转换结束信号输出线,高电平有效;OE:输出允许控制信号输出线,OE为高电平时把转换结果送数据线D7D0,OE为低电平时D7D0为浮空态;ALE高电平模拟通道地址 ALE上信号二分频上信号二分频后接后接ADC0809的的CLK端端正脉冲启动获取A/D转换结束信息结果允许输出满足以下条件:满足以下条件:在START端需产生一个正脉冲,上升沿

28、复位ADC0809,下降沿启动A/D转换。在启动A/D转换之前,需在ALE端产生一个正跳变,将地址锁存起来,使得在A/D转换期间,比较器内部输入始终是选中的模拟通道输入信号。在A/D转换结束之前,在START端和ALE端不能再次出现正脉冲信号。三种硬件连接方法对应三种启动方式1)ADDA,ADDB,ADDC分别接地址锁存器提供地址的低3位,指向IN7通道的相应程序指令为: MOV DPTR,#0EFF7H;指向D/A转换器和模拟通道IN7地址 MOVX DPTR,A ;启动A/D转换,A中可以是任意值 2)ADDA,ADDB,ADDC分别接数据线中的低3位,则指向IN7通道的相应程序指令为: MOV DPH,#0E0H ;送D/A转换器端口地址 MOV A,#07H ;IN7地址送A MOVX DPTR,A ;送地址并启动A/D转换 3)ADDA,ADDB,ADDC分别接高8位地址中的低3位,则指向IN7通道的相应程序指令为: MOV DPTR, #0E700H MOVX DPTR, A 1)无条件传送方式 ADC0809转换时间为128us,可在A/D转换启动后,调用一个延时足够长的子程序。2)查询方式 查询测试EOC的状态,即可确知转换是否完成。需注意AD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论