




已阅读5页,还剩92页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章,89C51系统接口技术,8.1按键、键盘及其接口,一、键输入过程与软件结构,按键通常采用机械弹性开关。由于机械触点的弹性作用,在闭合和断开瞬间产生一连串抖动,约为510ms。为确保CPU对一次按键动作只确认一次按键,必须消除抖动的影响。,二、键盘输入应解决的问题,Vcc,toI/O,R,前沿抖动,键稳定,后沿抖动,键按下,三、消除抖动的措施,1、硬件消抖采用消抖电路:如用RS触发器或单稳电路构成;用电容吸收抖动等措施。,三、消除抖动的措施,2、软件消抖采用程序延时避开抖动过程:第一次检测到有键按下,执行延时子程序(1020ms),再确定该键是否按下,从而消除抖动的影响。,四、独立式按键接口设计,键盘可以分为两类:独立连接式矩阵式独立连接式键盘:这是最简单的键盘电路,各按键相互独立,每个键独立地接入一根数据输入线。,1、独立式按键及其接口,芯片内有上拉电阻芯片内无上拉电阻,2、程序设计:,键盘扫描程序采用子程序方式,可供主程序、定时中断、外部中断等方式调用。下图中,采用89C51的P1口低4位扩展4个按键,子程序出口:A中放键值。若A中为FFH则表示无键按下。程序结构:识别有无键按下识别具体按键,赋键值,KEYSCAN:MOVA,P1ORLA,11110000BCPLAJZNOKEYLCALLDL10MSMOVA,P1ORLA,11110000BCPLAJZNOKEYMOVA,P1JNBACC.0,K1FJNBACC.1,K2FJNBACC.2,K3FJNBACC.3,K4FLJMPNOKEYK1F:MOVA,01HLJMPKEYNED,K2F:MOVA,02HLJMPKEYNEDK3F:MOVA,03HLJMPKEYNEDK4F:MOVA,04HLJMPKEYNEDNOKEY:MOVA,FFHKEYEND:RETDL10MS:略,延时10ms,查询方式的键盘程序,也可采用查询方式的键盘程序。P0FP7F为功能程序入口地址标号,PROM0PROM7分别为每个按键的功能程序。设I/O为P1口。,程序如下:SMKEY:ORLP1,#0FFH;置P1口为输入方式MOVA,P1;读P1口信息JNBACC.0,P0F;0号键按下,转0号键处理JNBACC.1,P1F;1号键按下,转1号键处理JNBACC.7,P7F;7号键按下,转7号键处理LJMPSMKEYP0F:LJMPPROG0P1F:LJMPPROG1P7F:LJMPPROG7PROG0:LJMPSMKEYPROG1:LJMPSMKEYPROG7:LJMPSMKEY,五、行列式键盘接口设计,行列式键盘也称矩阵式键盘。用I/O口线组成行列结构,按键位于行列的交叉点上。如:33行列结构可有9个键,占6根I/O线44行列结构可有16个键,占8根I/O线特点:节省I/O口线,软件结构相对复杂,适用于按键较多场合。,直接利用单片机的I/O口构成键盘接口,利用扩展的I/O口构成键盘接口,1、按键的识别方法,程序结构:识别键盘有无键按下识别具体按键,赋键值识别有无键按下:让所有行(列)线置零,读列(行)线。若列(行)线中有0电平,则有键按下。否则无键按下。(编程时要消除键抖)识别具体键:逐行(列)置0电平,其余行(列)置高电平,检查各列(行)线电平。若某列(行)线为0,则此行列的交叉点处的按键被按下。,2、设计举例,电路如图,利用单片机的P1口扩展44键盘。注意键盘的编码(键值):键号行号列号,P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7,+5V,8051,0,1,2,3,行,0,4,8,C,列,0,4,8,C,1,5,9,D,E,A,6,2,3,7,B,F,KEYSCAN:LCALLKAPJNZKP1LJMPKEYENDKP1:LCALLDELYLCALLKAPJNZKAP2LJMPKEYENDKP2:MOVR2,0FEHMOVR4,00H;(行号)KP4:MOVP1,R2MOVA,P1JBACC.4,L1MOVA,00H;(列号)ALMPKP5L1:JBACC.5,L2MOVA,04H;(列号)AJMPKP5L2:JBACC.6,L3MOVA,08H;(列号)ALMPKP5,L3:JBACC.7,NEXTMOVA,0CH;KP5:ADDA,R4;(键号)PUSHACCKP3:LCALLDELYLCALLKAPJNZKP3POPACCKEYEND:RETNEXT:INCR4MOVA,R2JNBACC.4,KEYENDRLAMOVR2,AAJMPKP4KAP:MOVP1,0F0HMOVA,P1CPLAANLA,0F0HRETDELY:延时10ms子程序,略。,8.2LED显示及显示接口,一、LED显示器1显示器结构与原理LED显示块是由发光二极管显示字段的显示器件,由若干发光二极管组合而成的,一般的“8”字形显示块由“a、b、c、d、e、f、g、h”8个发光二极管组成。这种显示块有共阴极与共阳极两种。,8段数码管外形,共阴极数码管,共阳极数码管,(1)共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。(2)共阴极接法。把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。,2、字形显示代码,字形显示代码用一个字节16进制数表示。共阳极和共阴极LED的显示代码互为反码。,例如,显示数字5,则共阳极LED代码为:92H共阴极LED代码为:6DH,二、显示方式,1静态显示方式各LED的公共端连地(共阴极)或连5V(共阳极)。每一位的段选线(adp)分别与一个8位端口的锁存输出相连。各LED同时导通。,特点:亮度较高,编程方便,占用的I/O口多。,2动态显示方式所有位的段选线相连,由一个8位I/O口控制,各位的公共端由另外的I/O口线控制。各位LED分时点亮。,特点:各位分时导通,占用CPU时间多,亮度较低,占用的I/O口少。,三、接实例口1、静态显示,并行输出:,串行输出:,2、动态显示,例1利用扩展的8155构成的显示接口电路(显示缓冲区为79H7EH),DIS:MOVR0,#79H;显示数据缓冲区首地址送R0MOVR3,#01H;使显示器最右边位亮MOVA,R3;LD0:MOVDPTR,#7F01H;数据指针指向A口MOVXDPTR,A;送扫描值INCDPTR;数据指针指向B口MOVA,R0;取欲显示的数据ADDA,#0DH;加上偏移量MOVCA,A+PC;取出字型码MOVXDPTR,A;送显示ACALLDL1;调用延时子程序INCR0;指向下一个显示段数据地址MOVA,R3;JBACC.5,ELD1;扫描到第六个显示器否?RLA;未到,扫描码左移1位MOVR3,AAJMPLD0ELD1:RET,DSEG:DB3FH,06H,5BH,4FH,66H,6DHDB7DH,07H,7FH,6FH,77H,7CHDB39H,5EH,79H,71H,40H,00HDL1:MOVR7,#02H;延时1ms子程序DL:MOVR6,#0FFHDL6:DJNZR6,DL6DJNZR7,DLRET,例2、利用P1口构成的显示接口电路,P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7,AaBCDg,Ay0By1C.y7,CD4511,74LS138,89C51,LED1,LED2,LED8,本例中,只能显示09数字,显示缓冲区为50H57H缓冲区内为BCD码。,DISP:MOVR0,#50H;显示指针MOVR2,00H;显示位指针MOVR7,08H;循环指针LOOP:MOVA,R2SWAPAMOVR3,A;暂存显示位地址MOVA,R0ORLA,R3;拼凑显示字MOVP1,AINCR0INCR2LCALLDLDJNZR7,LOOPRETDL:略,延时1ms。,3、键盘和显示器接口示例,例:8155的键盘及显示接口,KD1:MOVA,#00000011B;8155初始化:PA、PB为基本输出,PC为输入MOVDPTR,#7F00H;MOVXDPTR,A;KEY1:ACALLKS1;查有无键按下JNZLK1;有,转键扫描ACALLDIS;调显示子程序AJMPKEY1;LK1:ACALLDIS;键扫描ACALLDIS;两次调显示子程序,延时12msACALLKS1;JNZLK2;ACALLDIS;调显示子程序AJMPKEY1,LK2:MOVR2,#0FEH;从首列开始MOVR4,#00H;首列号送R4LK4:MOVDPTR,#7F01H;MOVA,R2;MOVXDPTR,A;INCDPTR;INCDPTR;指向C口MOVXA,DPTR;JBACC.0,LONE;第0行无键按下,转查第1行MOVA,#00H;第0行有键按下,该行首键号送AAJMPLKP;转求键号LONE:JBACC.1,LTWO;第1行无键按下,转查第2行MOVA,#06H;第1行有键按下,该行首键号送AAJMPLKP;转求键号LTWO:JBACC.2,NEXT;第2行无键按下,转查下一列MOVA,#0CH;第2行有键按下,该行首键号送ALKP:ADDA,R4;求键号。键号行首键号列号PUSHACC;保护键号LK3:ACALLDIS;等待键释放ACALLKS1;JNZLK3;POPACC;RET;键扫描结束。此时A的内容为按下键的键号,NEXT:INCR4;指向下一列MOVA,R2;RLA;扫描字对应下一列JNBACC.5,KND;判6列扫描完没有。MOVR2,A;AJMPLK4;未完,转下一列扫描KND:AJMPKEY1;扫完,转入新一轮扫描KS1:MOVDPTR,#7F01H;查有无键按下子程序。先指向A口MOVA,#00H;MOVXDPTR,A;送扫描字“00H”INCDPTR;INCDPTR;指向C口MOVXA,DPTR;CPLA;变正逻辑ANLA,#07H;屏蔽高5位RET;子程序出口,A的内容非0则有键按下,8.3A/D转换器接口,一、A/D转换器的主要技术指标将模拟量转换成数字量的器件称为模数转换器(ADC)主要技术指标有:1、分辨率ADC的分辨率是指转换器所能分辨的被测量的最小值,通常用输出二进制代码的位数来表示。例如8位ADC的分辨率为8位,模拟电压的变化范围被分成256级,而10位ADC能把模拟输入电压分成1024级。,2、精度,精度指的是转换的结果相对于实际的偏差。精度有两种表示方法。(1)绝对精度:用最低位(LSB)的倍数来表示,如(1/2)LSB或1LSB等。(2)相对精度:用绝对精度除以满量程值的百分数来表示,如0.05%等。,分辨率和精度是两个不同的概念。同样分辨率的A/D转换器其精度可能不同。分辨率高但精度不一定高,而精度高则分辨率必然也高。,3、偏移误差偏移误差是指输入信号为零时,输出信号不为零的值,所以有时又称为零值误差。,4、线性度误差线性度误差是指转换器实际的模拟数字转换关系与理想直线不同而出现的误差,通常用多少LSB来表示。,5、转换速率ADC的转换速率是能够重复进行数据转换的速度,即每秒转换的次数。而完成一次A/D转换所需的时间(包括稳定时间),则是转换速率的倒数。,影响A/D转换器技术指标的主要因素,工作电源电压不稳定;外接时钟频率不适合;环境温度不适合;与其他器件的电特性不匹配,如负载过重等;外界有强干扰;印刷电路板布线不合理;,二、A/D转换器运用要点,一般来说,各种型号的AD转换芯片均设有数据输出、启动转换、转换结束、控制等引脚。所以,A/D转换器与MCS51单片机的接口就是要处理好上述引脚的硬件连接问题。,1、数字量输出线的连接,A/D转换器数字量输出线与单片机的连接方法与其内部结构有关。对于内部带有三态锁存数据输出缓冲器的ADC(如ADC0809、AD574等),可直接与单片机相连。对于内部不带锁存器ADC,一般通过锁存器或并行I/O接口与单片机相连。此外,随着位数的不同,ADC与单片机的连接方法也不同。对于8位ADC,其数字输出线可与8位单片机数据线对应相接。对于8位以上的ADC,必须增加读取控制逻辑,把8位以上的数据分两次或多次读取。,2、ADC启动方式,3、转换结束信号处理方法,4、时钟信号的连接,三、A/D转换器ADC0809与单片机的接口,主要性能为:分辨率为位;精度:ADC0809小于1LSB(ADC0808小于1/2LSB);单+5V供电,模拟输入电压范围为05V;具有锁存控制的路输入模拟开关;可锁存三态输出,输出与TTL电平兼容;功耗为15mW;不必进行零点和满度调整;转换速度取决于芯片外接的时钟频率。时钟频率范围:101280KHz。典型值为时钟频率640KHz,转换时间约为100S。,1ADC0809芯片简介,ADC0809的内部结构及引脚功能,引脚介绍,1、IN0IN7,路模拟量输入端。2、D7D0,位数字量输出端。3、ALE,地址锁存允许信号输入端。通常向此引脚输入一个正脉冲时,可将三位地址选择信号A、B、C锁存于地址寄存器内并进行译码,选通相应的模拟输入通道。4、START,启动A/D转换控制信号输入端。一般向此引脚输入一个正脉冲,上升沿复位内部逐次逼近寄存器,下降沿后开始A/D转换。5、CLK,时钟信号输入端。6、EOC,转换结束信号输出端。A/D转换期间EOC为低电平,A/D转换结束后EOC为高电平。7、OE,输出允许控制端,控制输出锁存器的三态门。当OE为高电平时,转换结果数据出现在D7D0引脚。当OE为低电平时,D7D0引脚对外呈高阻状态。8、C、B、A,路模拟开关的地址选通信号输入端,3个输入端的信号为000111时,接通IN0IN7对应通道。9、VR()、VR():分别为基准电源的正、负输入端。,2、ADC0809与单片机的接口,通道IN0IN7地址:7F00H7F07H,例:对路模拟信号轮流采样一次,并依次把转换结果存储到片内RAM以30H为起始地址的连续单元中。MAIN:MOVR1,#30H;置数据区首地址MOVDPTR,#7F00H;指向通道MOVR7,#08H;置通道数LOOP:MOVXDPTR,A;启动A/D转换HER:JBP3.3,HER;查询A/D转换结束MOVXA,DPTR;读取A/D转换结果MOVR1,A;存储数据INCDPTR;指向下一个通道INCR1;修改数据区指针DJNZR7,LOOP;个通道转换完否?,(1)、查询方式,(2)、中断方式初始化程序:ORG0000HLJMPMAINORG0013HLJMPPINT1ORG0030HMAIN:MOVR0,#30H;设立数据存储区指针MOVR2,#08H;设置8路采样计数值SETBIT1;设置外部中断1为边沿触发方式SETBEA;CPU开放中断SETBEX1;允许外部中断1中断MOVDPTR,#7F00H;送入口地址并指向IN0LOOP:MOVXDPTR,A;启动A/D,A值无含义HERE:SJMPHERE;等待中断,中断服务程序:PINT1:MOVXA,DPTR;读取转换后的数字量MOVR0,A;存入片内RAM单元INCDPTR;指向下一模拟通道INCR0;指向下一个数据存储单元DJNZR2,DONE;8路未转换完,则继续CLREA;已转换完,则关中断CLREX1;禁止外部中断0中断RETI;中断返回DONE:MOVXDPTR,A;再次启动A/D转换RETI;中断返回,四、A/D转换器AD574与单片机的接口1AD574芯片简介AD574是一种快速的12位A/D转换芯片,片内有两片双极型电路组成的28脚双插直列式芯片,具备内部时钟电路,无需外接元器件就可独立完成A/D转换功能。即可实现12位变换,也可作快速的8位转换。转换后的数据可12位一次输出,也可按8位、4位分两次输出。内部设有三态数据输出锁存器。一次转换时间为25s。芯片引脚如下图所示。,AD574的引脚图,AD574的引脚定义如下:REFOUT:内部参考电源输出(+10V);REFIN:参考电压输入;BIP:补偿调整,调整ADC输出的零点;10VIN:5V或010V模拟输入;20VIN:10V或020V模拟输入;DB0DB11:数字量输出,高半字节为B8DB11,低字节为DB0DB7;STS:工作状态指示端。STS=1时表示转换器正处于转换状态,STS返回到低电平时,表示转换完毕。该信号可处理器作为中断或查询信号用;,AD574控制信号状态表,2AD574模拟输入电路的极性选择,AD574的模拟输入电路,(a)单极性输入;(b)双极性输入,3AD574与MCS-51单片机的接口,由于AD574有内部时钟,故无需外加时钟信号。当AD574与8031单片机接口时,由于AD574输出12位数码,所以单片机读取转换结果需分两次进行:先高8位、后低4位。在电路连接上AD574的12-8引脚接地,高8位数据线接单片机数据线,低4位数据线接单片机的低4位数据线。A00时读取高8位,A01时读取低4位。,AD574与MCS51单片机接口电路,4转换程序设计举例设要求AD574进行12位转换,单片机对转换结果读入,高8位和低4位分别存于片内RAM的31H和30H单元。,电路接口如上图,采用查询方式。启动AD转换:使CE=1,/CS=0,R/-C=0,A0=0;SYS1时,处转换状态,SYS0时转换完毕。读取12位转换结果:CE=1,/CS=0,R/-C=1,A0=0,读取高8位;CE=1,/CS=0,R/-C=1,A0=1,读取低4位;程序如下:,8.4D/A转换器接口,一、D/A转换器的主要技术指标将数字量转换成模拟量的器件称为模数转换器(DAC)主要技术指标有:1、分辨率分辨率是指输入数字量的最低有效位(LSB)发生变化时,所对应的输出模拟量(常为电压)的变化量。它反映了输出模拟量的最小变化值。如对于5V的满量程,采用位的DAC时,分辨率为5V/25619.5mV;当采用12位的DAC时,分辨率则为5V/40961.22mV。显然,位数越多分辨率就越高。(也可用有效位数来给出分辨率),2、转换精度,指满量程时DAC的实际模拟输出值和理论值的接近程度。,3、偏移量误差,偏移量误差是指输入数字量为零时,输出模拟量对零的偏移值。,4、建立时间,建立时间是描述D/A转换速率快慢的一个重要参数。一般所指的建立时间是输入数字量变化后,模拟输出量达到终值误差LSB/2(最低有效位)时所经历的时间。根据建立时间的长短,把D/A转换器分成以下几挡:超高速100ns较高速100ns1s高速110s中速10100s低速100s,二、D/A转换器运用要点,选择D/A转换芯片时,主要要考虑芯片的性能、结构及应用特性。在性能上必须满足D/A转换的技术要求;在结构和应用特性上应满足接口方便、外围电路简单、价格低廉等要求。,1、D/A转换芯片主要性能指标的选择,DA转换器的主要性能指标在芯片的器件手册上都会给出。在选择时主要考虑的是转换精度(常用位数表示,如8位、12位等)和转换时间。,2、D/A转换芯片输出特性,DA转换器的输出形式有电压输出和电流输出两种形式。目前多数并行接口的DA转换器件均为电流输出型,要得到电压输出一般要通过电阻负载或运算放大器进行转换。,3、锁存特性及转换控制,4、参考源,三、D/A转换器与单片机的接口1.不带数据锁存器的D/A转换器的接口方法对于这类D/A转换器与单片机的接口连接,只需在D/A转换器输入端外加一个锁存器即可。MC1408是一个不带锁存器的8位D/A转换器,图8-17是MC1408与89C51的接口连线图。,图8-17不带数据锁存器的D/A转换器与AT89C51的连接图,由于MC1408不带数据锁存器,所以用一片片外锁存器74LS273作为具有数据锁存的并行输出口,其输出端与MC1408的输入端相连,用2.5V的AD580作为D/A的参考电压源。,MC1408的输出外接一个运放,目的是由电流型转换为电压型的输出,用RBP选择输出电压的极性:若连上RBP,输出电压是双极性的;若断开RBP,则输出电压是单极性的。,根据图8-17中的连接方法,选通74LS273的口地址为FEH,以下三条指令就能实现D/A转换。MOVA,#NN;NN为待转换的数字量MOVR0,#0FEH;送口地址MOVXR0,A;输出转换数据执行MOVX指令,即产生信号,将锁存在74LS273中的数据输出到MC1408,立即进行D/A转换。,以下程序可以产生连续的锯齿波。MOVR0,#0FEHMOVA,#00H;置转换初值LOOP:MOVXR0,A;启动D/A转换INCA;转换值加1AJMPLOOP,2.带数据锁存器的D/A转换器的接口方法1)DAC0832特性与结构DAC0832是使用非常普遍的位D/A转换器,由于其片内有输入数据锁存器,故可以直接与单片机接口。DAC0832以电流形式输出,当需要转换为电压输出时,可外接运算放大器。属于该系列的芯片还有DAC0830、DAC0831,它们可以相互代换。DAC0832主要特性:,分辨率位;电流建立时间S;数据输入可采用双缓冲、单缓冲或直通方式;输出电流线性度可在满量程下调节;逻辑电平输入与TTL电平兼容;单一电源供电(5V15V);低功耗,20m。,DAC0832具有两个输入数据寄存器的8位DAC,分辨率为8位,电流稳定时间1s,可采用单缓冲、双缓冲或直接数字输入工作方式,转换结果为电流型,它能直接与51系列单片机接口。DAC0809是单一电源供电(5V15V),低功耗。图8-18是DAC0832的内部逻辑结构图。,图8-18DAC0832的内部结构图,/LEX=1(X=1、2):寄存器数据直通。,/LEX=0(X=1、2):寄存器数据锁存。,图8-19DAC0832的引脚图,2)DAC0832引脚功能介绍,(1)DI0DI7:数据输入线。(2)ILE:数据锁存允许端,高电平有效。(3)/CS:输入寄存器选择信号端,低电平有效。(4)/WR1:输入寄存器的写选通信号端,低电平有效。,2)DAC0832引脚功能介绍,(5)/WR2:DAC寄存器的写选通信号端,低电平有效。(6)/XFER:数据转换控制信号线,低电平有效。(7)VREF:基准电源输入端(-10V+10V)。(8)Rfb:反馈信号输入端(反馈电阻在芯片内部)。,2)DAC0832引脚功能介绍,(9)IOUT1、IOUT2:电流输出端。(10)VCC:电源输入端。(11)AGND
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年学生安全教育月线上知识竞赛题库「附答案」
- 河北省衡水市景县梁集中学2026届化学高二第一学期期中考试试题含解析
- 光伏并网接入技术方案
- 2025-2030中国尖凿市场经营策略分析与投资风险预测报告
- 项目工期延误管理与应对方案
- 公园自来水系统改造方案
- 钢结构施工队伍管理方案
- 2025年橡胶板行业研究报告及未来行业发展趋势预测
- 2025年搅拌棒行业研究报告及未来行业发展趋势预测
- 2025年电脑连接线行业研究报告及未来行业发展趋势预测
- 耳穴压豆课件完整版
- 保利物业2024培训手册:如何引领行业新趋势
- 母乳喂养知识培训-课件
- DBJ41T 256-2021 河南省海绵城市设计标准 河南省工程建设标准(住建厅版)
- 独家授权合同模板
- 南京外国语2024-2025九年级上学期第一次月考物理试卷及答案
- 绿色火车站建设与可持续发展
- 湖南省名校联盟2024-2025学年高二上学期入学考试物理试题
- 成人鼻肠管的留置与维护(2021团体标准解读)-20221004172843
- 一年级道德法治教案设计
- 机电安装验收证明书
评论
0/150
提交评论