650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt

上传人:sccc 文档编号:5612335 上传时间:2023-08-02 格式:PPT 页数:110 大小:1.90MB
返回 下载 相关 举报
650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt_第1页
第1页 / 共110页
650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt_第2页
第2页 / 共110页
650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt_第3页
第3页 / 共110页
650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt_第4页
第4页 / 共110页
650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt_第5页
第5页 / 共110页
点击查看更多>>
资源描述

《650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt》由会员分享,可在线阅读,更多相关《650单片机原理及应用 课程讲义第五章:单片机的接口技术wcytjx@126..ppt(110页珍藏版)》请在三一办公上搜索。

1、单片机原理及应用 课程讲义第五章:单片机的接口技术,本章内容,5.1 接口技术中的一般方法5.2 D/A转换电路接口技术5.3 A/D转换电路接口技术5.4 键盘接口技术5.5 显示器接口技术5.6 8279可编程的键盘/显示接口技术,5.1 接口技术中的一般方法,接口指令接口信号与时序输入/输出的数据交换方式地址的译码,接口指令,MCS-51的接口指令:同单片机与外部数据RAM单元之间的数据传送指令。即:MOVX A,Ri MOVX Ri,A MOVX A,DPTR MOVX DPTR,A,接口信号与时序,输入/输出的数据交换方式,有四种方式:无条件方式:立即作数据交换方式。即外围电路随时有

2、准备好的数据且随时能接收送来的数据。延时等待方式:先由单片机发启动信号,延时后在作I/O数据交换。查询方式:由软件查询外围电路是否准备好,直到准备好时再作I/O数据传送。中断方式:利用中断来作I/O数据传送。,地址的译码,线选法译码法(详见4.1节),5.2 D/A转换电路接口技术,5.2.1 D/A转换原理5.2.2 MCS-51和D/A的接口,概述,单片机和被控实体间的接口示意图,D/A转换器,图5.2.1 最简单D/A转换器框图,关系式:Vout=BVR式中,VR为常量,由参考电压VREF决定;B为 数字量,常为一个二进制数。数字量B的位数通常为8位和12位等,由D/A转换器芯片型号决定

3、。,5.2.1 D/A转换原理1、权电阻网络D/A转换法,思想:用一个二进制数的每一位产生一个与 二进制数的权成正比的电压,然后将这些电压加起来,就可得到对应的模拟量电压信号。某位对应:V0=-VR(RF/2nR)例如4位输出电压:V0=-VRRF(d3/R+d2/2R+d1/4R+d0/8R),图5.2.2 权电阻网络D/A转换器,反相求和电路,-+,2、倒T型电阻网络D/A转换法,把输入数字量中每位都按其权值分别转换成模拟量,并通过运算放大器求和相加(如图5.2.2所示)。根据基尔霍夫定律,如下关系成立:I3=23 VREF/16RI2=22 VREF/16RI1=21 VREF/16RI

4、0=20 VREF/16R,图5.2.2 倒T型电阻网络型D/A转换器的电路图和等效电路图,即有:I=VREF/R,I0=VREF/16R,I1=VREF/8R,I2=VREF/4R,I3=VREF/2R且有:Iout1+Iout2=I,特点:,较权电阻网络D/A转换法有如下特点:电阻离散性小:只需两种电阻易于在集成电路中实现应用最多,3D/A转换器的性能指标,l分辨率(Resolution):分辨率是指D/A转换器能分辨的最小输出模拟增量,取决于输入数字量的二进制位数。l转换精度(Conversion Accuracy):指满量程时DAC的实际模拟输出值和理论值的接近程度。l偏移量误差(Of

5、fset Error):偏移量误差是指输入数字量为零时,输出模拟量对零的偏移值。l线性度(Linearity):线性度是指DAC的实际转换特性曲线和理想直线之间的最大偏移差。,5.2.2 MCS-51和D/A的接口1DAC0832,lDAC0832内部结构DAC0832内部由三部分电路组成(如图5.2.3所示)。“8位输入寄存器”、“8位DAC寄存器”、“8位D/A转换电路”由8位T型电阻网络和电子开关组成,l引脚功能DAC0832共有20条引脚,双列直插式封装。引脚连接和命名如图5.2.4所示。(1)数字量输入线DI7DI0(8条);(2)控制线(5条);(3)输出线(3条);(4)电源线(

6、4条)。,1,20,DAC0832,10,11,CS,WR1,AGND,D3,D2,D1,D0,VREF,DGND,RFB,Vcc,ILE,WR2,XFER,D4,D5,D6,D7,IOUT2,IOUT1,2,3,4,5,6,7,8,9,12,13,14,15,16,17,18,19,图5.2.3 DAC0832原理框图,单缓冲方式的接口(1),一个处于直通方式,另一个处于受控的锁存方式,+5V,DAC0832,Vcc,ILE,Vref,Rfb,Iout1,Iout2,AGND,DGND,A,Vout,DI 7-0,CS,XFER,WR1,WR2,74LS373,8031,P0,WR,ALE,

7、G,单缓冲方式的接口(2),两个输入寄存器同时受控的方式,A7A0,A0,单缓冲方式的应用 产生锯齿波,假定采用接口(2)方式,输入寄存器和DAC寄存器的地址为00FEH,产生锯齿波。,源程序清单如下:ORG 2000HSTART:MOV DPTR,#00FEH;选中DAC0832 MOV A,#00H;转换初值 WW:MOVX DPTR,A;WR1、WR2有效,启动D/A转换 INC A NOP;延时,可改变频率 NOPAJMP WW,1/28,2/28,3/28,254/28,255/28,0,产生的锯齿波的过程,D/A转换产生的锯齿波,用同样的方法也可以产生三角波、矩形波、梯形波。,若将

8、A的初值改为FFINC改为DEC?,ORG 2000HSTART:MOV DPTR,#00FEH;指向输入寄存器地址 MOV A,#0FFH;转换初值 WW:MOVX DPTR,A;启动D/A转换 DEC A NOP;延时 NOPAJMP WW,两个锁存器都接成受控锁存方式。,双缓冲方式的接口和应用,双缓冲方式的接口和应用,对一个数字量的转换,需两步完成,程序如下:MOV DPTR,#00FEHMOVX DPTR,AMOV DPTR,#00FBHMOVX DPTR,A,1#输入寄存器地址:00FEH2#输入寄存器地址:00FDH1#2#DAC寄存器地址:00FBH,单极性与双极性输出,l DA

9、C用作单极性电压输出 如前所示,使用反相比例放大器实现电流到电压的转换,输出模拟极性与参考电压极性相反。(参见P106 表5.4)l DAC用作双极性电压输出(见下页表、图所示),双极性DAC的接法,Vout2=(数字码-128)/128*VREF,双极性DAC的接法,表:双极性输出电压与输入数字量的关系,5.3 A/D转换电路的接口技术,5.3.1 概述5.3.2 双积分型A/D 转换器工作原理5.3.3 逐次逼近型A/D转换器接口5.3.4 ADC0809与单片机的接口5.3.4 AD574与单片机的接口,5.3.1 概述单片机测控系统前向通道配置,A/D转换器概述 A/D转换器用以实现模

10、拟量向数字量的转换。按转换原理可分为 4 种:计数式、双积分式、逐次逼近式以及并行式A/D转换器。逐次逼近式A/D转换器是一种速度较快,精度较高的转换器,其转换时间大约在几微秒到几百微秒之间。常用的这种芯片有:逐次逼近式A/D:ADC0809、ADC574A、ADC1210等 双积分式A/D:MC14433(3位半)、ICL7135(4位半)等,5.3.2 双积分型A/D 转换器工作原理,1双积分型A/D转换器工作原理原理:采用间接A/D转换技术。先将模拟电压转换成积分时间(先定时积分、再定值积分)然后用数字脉冲计时方法转换成计数脉冲数最后将此代表模拟输入电压大小的脉冲数转换成二进制或BCD码

11、输出。特点:双积分型A/D转换器转换时间较长,一般要大于4050ms,但精度高,抗干扰性能好。双积分:一次A/D转换需二次积分。图5.3.2给出了双积分转换器的电路图和原理图。,图5.3.2双积分ADC电路图与原理图,5.3.3 逐次逼近型A/D转换器接口,逐次逼近型ADC基本原理,图5.3.7 逐次逼近ADC原理电路框图,对N位寄存器逐位置1,比较后决定是否将该位清零,5.3.4 ADC0809与单片机的接口一、结构:ADC0809是一种常用的8位逐次逼近式A/D。其引脚图如下,其内部结构 图等见下页。,1,14,15,28,ADC0809,IN3,IN4,IN5,IN6,IN7,IN2,I

12、N1,IN0,ADDA,ADDB,ADDC,ALE,START,EOC,OE,CLK,Vcc,VREF(+),GND,VREF(-),2-1(MSB),2-2,2-3,2-4,2-8(LSB),2-5,2-7,2-6,.,IN0,IN7,ADDA,ADDB,ADDC,ALE,START,CLK,EOC,D0(2-8),D7(2-1),OE,VREF(+),VREF(-),8路模拟开关,地址锁存与译码,三态输出锁存器,8位A/D转换器,3,8,二、ADC0809与8031接口,8031,P0.0,P0.7,ALE,RD,WR,P2.7,INT1,D0,D7,+,+,ADDA,ADDB,ADDC,

13、START,ALE,OE,EOC,IN7,IN0,CLK,ADC0809,D0,D1,D2,转换程序示例:主程序:MAIN:MOV R0,#A0H;数据暂存区首址MOV A,#00H;8路计数初值SETB IT1;边沿触发方式SETB EA;开中断SETB EX1MOV DPTR,#7FF8H;指向0809首地址MOVX DPTR,A;选择模拟通道,启动A/DHERE:SJMP HERE;等待中断中断服务程序MOVX A,DPTR;读数MOVXR0,A;存数DONE:MOV DPTR,#7FF8H;指向0809首地址MOV A,#00HMOVX DPTR,A;选择模拟通道,启动A/DRETI,

14、与P112区别,三、八路巡回检测系统 例:某粮库或某冷冻厂需对8点(8个冷冻室或8个粮仓)进行温度巡回检测。要求设计一个单片机巡回检测系统,使其能对各冷冻室或各粮仓的温度巡回检测并加以处理。温度传感器可选用热电阻、热敏电阻、PN结或集成温度传感器AD590和SLIM等芯片。将转换后的数据依次存放在片外数据存储器A0HA7H单元。,其主程序和中断服务程序如下:MAIN:MOV R0,#A0H;数据暂存区首址MOV R2,#00H;8路计数初值SETB IT1;边沿触发方式SETB EA;开中断SETB EX1MOV DPTR,#7FF8H;指向0809首地址MOV A,R2MOVX DPTR,A

15、;选择模拟通道,启动A/DHERE:SJMP HERE;等待中断中断服务程序MOVX A,DPTR;读数MOVXR0,A;存数INC R2;更新通道INC R0;更新暂存单元CJNE R2,#08,DONEMOV R0,#A0HMOV R2,00HDONE:MOV DPTR,#7FF8H;指向0809首地址MOV A,R2MOVX DPTR,A;选择模拟通道,启动A/DRETI,5.3.5 AD574A与单片机的接口,图5.3.11 AD574A与8031接口电路图,AD574A与单片机的接口电路,表:AD574A逻辑控制真值表,(a)启动与转换(b)转换结果输出 图5.3.12 AD574A

16、控制时序图,例:启动A/D 转换与读出转换结果程序,电路:见图5.3.11。程序:MOV R0,#1FHMOVX R0,A;启动转换MOV R7,#10HDJNZ R7,$;延时等待转换结束MOV R1,#7FHMOVX A,R1;读低4位MOV R2,AMOV R1,#3FHMOVX A,R1;读高8位MOV R3,ASJMP$,图:AD574的单极性转换,BIP OFF,5.3.6 MC14433芯片与单片机的接口 MC14433是3位半的双积分A/D转换器,具有抗干扰性好、转换精度高、自动校0、自动极性输出、自动量程控制输出、动态字位扫描BCD码输出等优点。其主要特性参数如下:转换精度:

17、1/1999的分辨率 电压量程:分1.999V和199.9mV两档 转换速度:310次/S 输入阻抗:大于100Mohm 基准电压:取2V或200mV(分别对应量程为1.999V或199.9mV)输出形式:多路调制的BCD码,逻辑框图,VAG:模拟地VR:基准电压输入VX:一路被测电压输入R1、R1/C1、C1:外接元件C01、C02:补偿电容DU:转换结果输入锁存器打入信号EOC:转换结束标志输出OR:过量程标志输出|Vx|Vr,1,24,MC14433,12,13,VAG,VR,VX,R1,R1/C1,C1,C01,C02,DU,CLKI,CLKO,VEE,VSS,EOC,OR,DS4,D

18、S3,DS2,DS1,Q0,Q1,Q2,Q3,VDD,引脚图及说明,DS1DS4:多路选通脉冲输出 Q0Q3:BCD码输出 其中,Q0为最低位Q3为最高位。在DS2DS4选通期间,输出3个完整的BCD码,但在DS1选通期间,Q0Q3输出除了表示千位的0或1外,还表示了转换值的正负极性和欠量程还是过量程。,DS1 Q3 Q2 Q1 Q0 输出结果状态 1 1 0 千位数为0 1 0 0 千位数为1 1 1 0 输出结果为正 1 0 0 输出结果为负 1 0 1 输入信号过量程 1 1 1 输入信号欠量程 表:DS1选通时Q0Q3表示的输出结果,.,千位,百位,十位,个位,DS1,DS2,DS3,

19、DS4,EOC,欠量程表示输入信号小于0.179V,过量程为大于1.999V,MC14433输出时序,双积分A/D转换器MC14433功能及接口技术,程序示例(P117-119),5.4 键盘接口技术,5.4.1 键盘结构与工作原理5.4.2 键盘扫描的控制方式5.4.3 键操作及功能处理,5.4.1 键盘结构与工作原理,在设计键盘接口时需解决:开关状态的可靠输入可设计硬件去抖动电路或设计去抖动软件。键盘状态的监测方法中断方式还是查询方式。键盘编码方法。键盘控制程序的编制。,按键的特点及输入原理,按键的分类:触点式:机械;无触点式:电气键输入原理:通过按键的接通与断开,产生两种相反的逻辑状态

20、低电平“0”与高电平“1”。,键盘接口需要解决的问题,是否有键按下,按键识别:,键抖动及消除:,机械按键抖动时间在5ms10ms之间,硬件方案双稳态去抖电路,软件方案延时10ms20ms后再次判断,消除方法:,求键号,独立式按键,接口电路:,特点:一线一键,按键识别(编程)简单;但占用较多口线,适合8键以下使用。,例1:用P1口检测三个按键的状态并完成相应的功能,解:,资源分配:用P1口的低3位检测3个按键的输入,为1则表示按键没有按下,为0则表示相应按键被按下。,流程图:,ORG 0000HKB:MOV P1,#0FFH MOV A,P1 CPL A ANL A,#0FH JZ KB LCA

21、LL D10MS MOV A,P1 CPL A ANL A,#0FH JZ KB CJNE A,#01H,KB01 LCALL PGM1 SJMP KBKB01:CJNE A,#02H,KB02 LCALL PGM2 SJMP KBKB02:CJNE A,#04H,KB LCALL PGM3 SJMP KB END,编程:按三个按键中的任一键都对应一个特定功能。,行列式按键,关键:如何判断键号?,接口电路:,特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用,键盘扫描子程序一般包括以下内容:1.判别有无键按下;2.扫描获取闭合键的行、列值;3.用计算法或查表法得到键

22、值;4.判断闭合键释放否,如没释放则继续等待;5.保存闭合键号。,5.4.2 键盘扫描的控制方式,键按下/释放判断,KS:MOV A,#00H MOV P1,A;全扫描字#00H送P1口 MOV P1,#0FH MOV A,P1;读入P1口状态 CPL A;变正逻辑,高电平表示有键按下 ANL A,#0FH;取低4位 RET;返回,A0表示有键按下,按键识别扫描法,流程:当第0列处于低电平时,逐行查找是否有行线变低,若有,则第0列与该行的交叉点按键按下;若无,则表示第0列无键按下,再让下一列处在低电平,依此循环,这种方式称为键盘扫描。键号=行首键号(0、4、8、12)+列号(0、1、2、3),

23、原理:在某一时刻只让一条列线处于低电平,其余列线均处于高电平,则当这一列有键按下时,该键所在的行电平将会由高电平变为低电平,可判定该列相应的行有键按下。,例2:键盘扫描程序,SERCH:MOV R2,#0EFH MOV R3,#00H LINE0:MOV A,R2 MOV P1,A MOV A,P1 JB ACC.3,LINE1 MOV A,#00H AJMP TRYKLINE1:JB ACC.2,LINE2 MOV A,#04H AJMP TRYK LINE2:JB ACC.1,LINE3 MOV A,#08H,AJMP TRYKLINE3:JB ACC.3,LINE4 MOV A,#0CH

24、 AJMP TRYKLINE4:INC R3 MOV A,R2 RL A JNB ACC.0,BACK MOV R2,A AJMP LINE0 TRYK:ADD A,R3BACK:RET,图:8155扩展I/O口组成的行列式键盘,图:键扫描子程序框图,实用子程序,见P124-125,定时扫描方式,定时扫描方式就是每隔一段时间对键盘扫描一次,它利用单片机内部的定时器产生一定时间(例如10 ms)的定时,当定时时间到就产生定时器溢出中断。CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。,图:定时扫描方式程序框图,中断扫描方式,为提高CPU工作效率,可采用中断扫描工作

25、方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时,产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。,5.4.3 键操作及功能处理,键键操作及功能处理:对于一组键或一个键盘,需通过接口电路与单片机相连。可采用查询或中断方式测试有无键按下,再确定是哪一个键按下,将该键号送入累加器ACC,然后判断是数字键还是功能键,若是数字键,则将键号对应的数字送入相关输入缓冲区;若是功能键,则通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。功能键转移程序(键盘图见前图8155扩展I/O口组成的行列式键盘)ORG 8000HKEYADR:MOV A,BUFF CLR C SU

26、BB A,#10H JC DIGPROKEYTBL:MOV DPTR,#JMPTBL RL A,JMP A+DPTRJMPTBL:AJMP AAAAJMP BBBAJMP CCCAJMP DDDAJMP EEEAJMP FFFAJMP GGGAJMP HHHAJMP IIIAJMP JJJAJMP KKKAJMP LLLAJMP MMMAJMP NNNAJMP OOOAJMP PPP,5.5 显示器接口技术,5.5.1 LED显示器的结构与原理5.5.2 LED静态显示接口5.5.3 LED动态显示接口5.5.4 串行口控制的显示器与键盘接口,5.5.1 LED显示器的结构与原理,LED显示块

27、是由发光二极管显示字段的显示器件。在微机应用系统中通常使用的是七段LED。这种显示块有共阴极与共阳极两种,如图5.5.1所示。七段显示块与微机接口非常容易。如表5.5.1所示。,(a)共阴极(b)共阳极(c)管脚配置图5.5.1七段LED显示块,表5.5.1七段LED的段选码(字形码),8EH,5.5.2 LED静态显示接口,在微机应用系统中使用LED显示块构成N位LED显示器。图5.5.2是N位显示器的构成原理。LED显示器有两种方式:(1)LED静态显示方式(如图5.5.3所示)(2)LED动态显示方式,图5.5.2 N位LED显示器,g,g,g,g,g,图5.5.3四位静态LED显示器电

28、路,5.5.3 LED动态显示接口,LED动态显示:分时轮流选通数码管的公共端。选通相应LED,即在显示字段上得到显示字形码。字段线并联使用,可简化电路。八位LED动态显示器电路:,LED显示器与8155接口,LED显示子程序显示子程序 从右到左逐位轮流点亮各个LED,每位保持1ms设对8155初始化在主程序完成:PA口输出方式,地址7F01H;PB口输出方式,地址7F02H,扫描显示子程序如下:DIS:MOV R0,#7EH;显示缓冲区末址送R0 DB 3FH,06H,5BH,4FH,66H,6DH MOV R2,#01H;位选初值 DB 7DH,07H,7FH,6FH,77H,7CHMOV

29、A,R2 DB 39H,5EH,79H,71H,40H,00HLP0:MOVDPTR,#7F01;8155 A口地址 DIMS:MOV R7,#02HMOVXDPTR,A DL:MOVR6,#0FFHINCDPTR;8155 B口地址 DL1:DJNZR6,DL1 MOVA,R0;显示数据送A DJNZR7,DLADDA,#0DH RETMOVCA,A+PC;取字形码MOVX DPTR,A;送B口显示ACALLD1MS;延时DECR0;显示缓冲区地址减1MOVA,R2JBACC.5,LP1;扫描到最左的 LED,转RLA MOVR2,A AJMPLP0LP1:RET,5.5.4 串行口控制的键

30、盘/显示器接口,接口电路:图中使用一片74LS164和2根行线扩展16键键盘。电路原理如图5.5.6所示。软件设计:在图5.5.6中,设显示器位数存于R7,显示缓冲区首址存于R0,显示字符以BCD码形式存放,8031 RAM中20H为键码缓冲区,无键输入时,20H中为80H。,图5.5.6串行口扩展的键盘/显示器接口,区别:1)P132中图5.43为共阳结构 2)扫描方式不同,上图的键盘扫描与显示程序,参见P132-134 差别:此处为共阴,书上为共阳,5.6 8279可编程的键盘/显示器接口,8279是专用键盘/显示器控制芯片,能对显示器自动扫描,能识别键盘上按下键的键号;可充分提高CPU的

31、工作效率。8279与MCS-51接口方便,由它构成的标准键盘/显示器接口在微机应用系统中使用越来越广泛。,1、8279的组成及引脚,8279 芯片有 40 条引脚,由单一+5 V电源供电。它主要由以下几部分组成:(1)I/O控制和数据缓冲器;(2)控制和定时寄存器及定时控制部分;(3)扫描计数器;(4)回送缓冲器与键盘去抖动控制电路;(5)FIFO(先进后出)寄存器和状态电路;(6)显示器地址寄存器及显示RAM。,5.6.1 内部结构和引脚信号,8279的引脚定义,DB7DB0为双向外部数据总线;为片选信号线,低电平有效;和 为读和写选通信号线;IRQ为中断请求输出线。RL7RL0为键盘回送线

32、。SL3SL0为扫描输出线。OUTB3OUTB0、OUTA3OUTA0为显示寄存器数据输出线。RESET为复位输入线。SHIFT为换档键输入线。CNTL/STB为控制/选通输入线。CLK为外部时钟输入线。为显示器消隐控制线。,图5.5.8 8279芯片的内部结构框图,2.外部特性 电信号连接示意图可知,40条引线中与CPU一侧相关的共15条,与键盘、显示接口相关的共23条,电源、地各一条。,5.6.2 控制命令 当引脚A0=1时,CPU向8279芯片写入命令字。8279芯片可执行的命令共有8条,它们决定了8279芯片的操作方式。命令字格式如下:,(1)设置键盘及显示方式 设置键盘及显示方式命令

33、字格式为:D7D6D5(000):命令特征码。D4D3(DD):用来设定显示方式,定义如表5.5.3所示。D0(K0):用来设定扫描方式。K0=0为编码扫描;K0=1为译码扫描。,表5.5.3显示输出方式,表5.5.4输入工作方式,(2)设置时钟频率 设置时钟频率命令格式为:,其中D7D6D5(001):命令特征码。D4D0(PPPPP):用来设定对外输入CLK的分频系数N(N值可为231),以便获得8279芯片内部要求的100kHz的基本频率。(3)读FIFO RAM读FIFO RAM命令字格式为:,其中D7D6D5(010):命令特征码。D4(AI):自动地址增量标志位。当AI=1时,每次

34、读出后地址 自动加1指向下一存储单元 AI=0时,读出后地址不变。,D2D1D0(A2A1A0):在键盘方式中无意义,都写0.D3:不用。(4)读显示RAM 读显示RAM命令字格式为:,D7,D6,D5,D4,D3,D2,D1,D0,0,1,1,AI,A3,A1,A2,A0,其中D7D6D5(011):命令特征码。D4(AI):自动地址增量标志。AI=1时,每次读后地址自动增1;AI=0时,读后地址不变。(5)写显示RAM(略),(6)禁写显示RAM/消隐(略)(7)清除(略)(8)结束中断/设置错误方式(略)5.6.3 状态字 8279芯片的状态字主要用来指示FIFO RAM中的字符数和有无

35、错误发生。其格式为:,5.6.4 接口电路及应用举例,初始化程序如下:INIT:MOV DPTR,#7FFFH;置8279命令/状态口地址 MOV A,#0D1H;置清显示命令字 MOVX DPTR,A;送清显示命令 WEIT:MOVX A,DPTR;读状态 JB ACC.7,WEIT;等待清显示RAM结束 MOV A,#34H;置分频系数,晶振12MHz MOVX DPTR,A;送分频系数 MOV A,#00H;置键盘/显示命令 MOVX DPTR,A;送键盘/显示命令 MOV IE,#84H;允许8279中断 RET,对比:P146例,显示子程序如下:DIS:MOV DPTR,#7FFFH

36、;置8279命令/状态口地址 MOV R0,#30H;字段码首地址 MOV R7,#08H;8位显示 MOV A,#90H;置显示命令字 MOVX DPTR,A;送显示命令 MOV DPTR,#7FFEH;置数据口地址 LP:MOV A,R0;取显示数据 ADD A,#6;加偏移量 MOVC A,APC;查表,取得数据的段码 MOVX DPTR,A;送段码显示 INC R0;调整数据指针 DJNZ R7,LP;RET,SEG:DB 3FH,06H,5BH,4FH,66H,6DH;字符0、1、2、3、4、5段码 DB 7DH,07H,7EH,6FH,77H,7CH;字符6、7、8、9、A、b段码

37、 DB 39H,5EH,79H,71H,73H,3EH;字符C、d、E、F、P、U段码 DB 76H,38H,40H,6EH,FFH,00H;字符H、L、-、Y、日、“空”段码,键盘中断子程序如下:KEY:PUSH PSW PUSH DPL PUSH DPH PUSH ACC PUSH B SETB PSW.3 MOV DPTR,#7FFFH;置状态口地址 MOVX A,DPTR;读FIFO状态 ANL A,#0FH;JZ PKYR;MOV A,#40H;置读FIFO命令 MOVX DPTR,A;送读FIFO命令 MOV DPTR,#7FFEH;置数据口地址 MOVX A,DPTR;读数据 LJMP KEY1;转键值处理程序PKYR:POP B POP ACC POP DPH POP DPL POP PSW RETI;KEY1:;键值处理程序,Thank You!,

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

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号