《MCS-51的人机界面接口技术.ppt》由会员分享,可在线阅读,更多相关《MCS-51的人机界面接口技术.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第八章第八章 MCS-51MCS-51的人机界面接口技术的人机界面接口技术8-18-1键盘及其接口键盘及其接口8-28-2显示器接口显示器接口8-38-3打印机接口打印机接口8-48-4拨码盘及语音接口拨码盘及语音接口8-1 键盘及其接口键盘及其接口 8-1-1 独立式键盘接口1.独立式按键结构 2.独立式按键的软件结构 使用8255扩展I/O的独立式键盘KEY:MOVDPTR,#7FFFH;指向8255MOVA,#90H;8255初始化,设PA口为方式0基本输入。MOVXDPTR,AMOVDPTR,#7FFCH;指向PA口REP:MOVXA,DPTR;读入PA口按键状态CJNEA,#0FFH
2、,KY0;有键按下先查0号键SJMPREP;无键按下返回KY0:CJNEA,#0FEH,KY1;0号键未按下查1号键SJMPFP0;0号键按下,转至0号功能键入口中转地址KY1:CJNEA,#0FDH,KY3;1号键未按下查2号键SJMPFP1;1号键按下,转1号功能键入口中转地址KY2:CJNEA,#0FBH,KY3;2号键未按下查3号键SJMPFP2;2号键按下,转至2号功能键入口中转地址KY7:CJNEA,#7FH,ENDSJMPFP7END:RETFP0:LJMPPROM0;FP1:LJMPPROM1;键功能程序入口地址PF7:LJMPPROM7;PROM0:;LJMPENDPROM1
3、:LJMPEND PROM7:LJMPEND8-1-2行列式键盘 1.键盘工作原理 行列式键盘原理电路2.键盘工作方式(1)编程扫描工作方式8155扩展I/O口组成的行列式键盘判断键盘上有无键按下 去键的机械抖动影响 求按下键的键号 键闭合一次仅进行一次键功能操作 键扫描子程序框图(2)定时扫描工作方式 定时扫描方式程序框图(3)中断工作方式 中断方式键盘接口3.键盘扫描方式(1)扫描法)扫描法扫描法是在判定有键按下后逐列(或逐行)置低电平,同时读入行(或列)的状态,如果行(或列)的状态出现非全1状态,这时0状态的行、列交点的键就是所按下的键。(2)反转法)反转法(a)线反转法第一步(b)线反
4、转法第二步4.行列式键盘接口(1)通用并行扩展I/O口键盘接口(2)8031串行I/O口扩展的键盘接口8031串行I/O口扩展的行列式键盘接口 8-2 显示器接口显示器接口 8-2-1 LED显示器接口1.LED显示器结构与原理(a)共阴极(b)共阳极(c)管脚配置2.LED显示器与显示方式 N位LED显示器(1)LED静态显示方式 四位静态LED显示器电路(2)LED动态显示方式 八位LED动态显示器电路3.LED显示器接口实例(1)硬件译码器LED显示器接口利用硬件译码器的七段LED接口电路(2)软件译码LED显示器接口 通过8155扩展I/O口控制的8位LED动态显示接口对于图示动态显示
5、接口,其动态显示子程序流程图见右图8-2-2LCD显示器接口1.LCD的基本结构及工作原理液晶显示器基本结构2.LCD的驱动方式(1)静态驱动方式(2)时分割驱动电压平均化(a)驱动回路(b)驱动波形(c)真值表静态驱动回路及波形3.LCD接口实例(1)硬件接口电路 六位LED静态显示电路(2)典型显示子程序)典型显示子程序设显示缓冲区为8031片内RAM的22H27H六个单元依次放置六位分离的BCD码。DISP:MOVR0,#22H;初始化,缓冲单元首址R0MOVR3,#00H;初位选MOVR4,#06H;六位显示DISP1:MOVA,R3;位选有效转为高四位并入R2保存SWAPAMOVR2
6、,AMOVA,R0ORLA,R2ORLA,#80H;拼成P1口输出BCD码及控制位MOVP1,AANLP1,#7FH;屏蔽P1。7位ORLP1,#80HINCR3;屏蔽P1.7位INCR0DJNZR4,DISP1RET8-2-3典型键盘/显示器接口实例 1.8155扩展I/O口的键盘/显示器接口2.串行口扩展的键盘/显示接口 串行口扩展的键盘/显示接口(1)接口电路(2)软件设计 显示子程序清单:DISP:MOVSCON,#00H;设串行口工作方式CLREA;关闭中断SETBP3.3;开放显示数据传送MOVR7,#XSWS;置显示器位数DP0:MOVA,R0;取某位显示字符的BCD码MOVDP
7、TR,#SEGTAB;置字型码首址MOVCA,A+DPTR;取BCD码的字型码MOVSBUF,A;字型码输出DP1:JNBTI,DP1;未发送完等待CLRTI;清中断标志INCR0;下一显示位DJNZR7,DP0;全部显示器未显示完则跳转CLRP3.3;关闭显示数据传送CLRA;置键盘列线全为0MOVSBUF,A;发送键盘列扫描码JNBTI,$CLRTISETBEA;开放中断RET键盘扫描中断服务程序清单:KEYSCAN:PUSHACC;保存ACC内容CLREA;关闭中断MOVSBUF,A;列线全置0JNBTI,$CLRTIKL1:JNBP3.4,KL2;第一行有键按下转JBP3.5,KL3;
8、第二行无键按下转KL2:ACALLD10ms;延时10msJNBP3.4,KL3;第一行有键按下转JBP3.5,KL1;第二行无键按下转KL3:MOVR7,#08H;列数计数初值送R7MOVR6,#0FEH;列扫描码初值送R6MOVR3,#00H;键列码初值KL4:MOVA,R6;送到扫描码MOVSBUF,AJNBTI,$CLRTIJNBP3.4,KONE;第一行有键按下转JBP3.5,NEXT;第二行无键按下转MOVR4,#08H;第二行键行码AJMPKL5KONE:MOVR4,#00H;第一行键行码KL5:MOVA,R4;键行码送AADDA,R3;键码=键行码+键列码DAA;十进制调整MO
9、V20H,A;键码送20HSETBEA;开中断POPACC;恢复ACC内容RETI;中断返回NEXT:MOVA,R6;准备下一个列扫描RLAMOVR6,AINCR3;键列码加1DJNZR7,KL4;8列未扫描完转SETBEA;开中段POPACC;恢复ACC内容RETI;中断返回D10ms:MOVR5,#0AH;10ms延时程序DL:MOVR2,#0FFHDJNZR2,$DJNZR5,DLRET3.8279键盘/显示器接口 8279是专用键盘、显示控制芯片,能对显示器自动扫描,能识别键盘上按下键的键号;可充分提高CPU的工作效率。8279与MCS-51接口方便,由它构成的标准键盘、显示接口在微机
10、应用系统中使用越来越广泛。4.8279接口和编程的一般方法接口和编程的一般方法接口电路的一般连接方法8279的键盘、显示电路及与8031接口8279键盘、显示接口应用特性 8279操作命令8279的FIFO状态查询8279的数据输入/输显示器的填入/移位方式 8279的内部译码与外部译码 键盘键值的给定 8031和8279键盘、显示接口的编程方法 START:MOVDPTR,#7FFFH;指向命令/状态口地址,=0MOVA,#0D1H;清除命令MOVXDPTR,A;命令数据送入WAIT:MOVXA,DPTR;读入状态字JBACC.7,WAIT;清除等待MOVA,#2AH;程序时钟分频对ALE1
11、0分频得100KHZMOVXDPTR,A;命令送入MOVA,#08H;键盘/显示器工作方式MOVXDPTR,A;命令送入MOVR0,#30H;段选码存放单元首址MOVR7,#10H;显示16位数MOVA,#90H;写显示RAM命令MOVXDPTR,A;命令送入MOVDPTR,#7EFEH;指向数据口地址,=0,A0=0LOOP1:MOVA,R0MOVXDPTR,A;段选码送入8279显示RAMINCR0;指向下一个段选码DJNZR7,LOOP1;16个段选码送完?MOVR0,#40H;送完转此,40H为键值存放单元首址MOVR7,#10H;有16个键值LOOP2:MOVDPTR,#7FFFH;
12、指向命令/状态口地址LOOP3:MOVXA,DPTR;读8279状态字ANLA,#0FH;取状态字低四位JZLOOP3;FIFO中无键值时等待键输入MOVDPTR,#7EFFH;指向为数据口地址MOVXA,DPTR;读如键值ANLA,#3FH;没有使用CNTL、SHIFT时,屏蔽该;两位,保存低6位键值MOVR0,A;键值入内存40H4FHINCR0;指向下一个键值存放单元DJNZR7,LOOP2;读完10H个键值HERE:AJMPHERE;键值读完等待8-3打印机接口 8-3-1 TPP-40A主要性能、接口要求及时序1.TPP-40A的主要技术性能 2.接口要求3.接口信号时序 插脚安排(
13、从打印机背视)接口信号时序TPP-40A/16ATPP-40A/16A4.主计算机端推荐接口电路 TPP-40A/16A推荐接口8-3-2字符代码及打印命令8-3-3TPP-40A/16A与MCS-51单片机接口 TPP-40A/16A与8031数据总线接口8-3-3TPP-40A/16A与MCS-51单片机接口TPP-40A/16A与8031扩展I/O口连接的接口8-4拨码盘及语音接口8-4-1拨码盘接口及应用实例 1.十线拨盘(1)十线拨盘接口(2)读数及自检软件 2.BCD拨码盘(1)硬件接口(2)读数及检测软件 BCD拨码盘读入子程序:BCDI:MOVDPTR,#0FFFAHMOVXA
14、,DPTRMOVR3,ACLRCCLRAC;清除辅助进位标志SUBBA,#66HJBAC,EROMOVA,R3CPLARETERO:MOVA,#0EHRET8-4-2ISD1420语音接口芯片及其应用 1.1.ISD1420芯片的特点外围元件简单,仅需少量阻容元件、麦克风即可组成一完整录放系统;模拟信息存贮重放音质极好,并有一定混响效果;待机时低功耗(仅0.5A),典型放音电流15mA;放音时间20s,可扩充级联;可持续放音,也可分段放音,最小分段20s/160段=0.125s/段,可分段数160段;录放次数达10万次;断电信息存贮,无需备用电池,信息可保100年;操作简单,无需专用编程器及语
15、音开发器;高优先级录音,低电平或负边沿触发放音;单电源供电,典型电压+5V。2.内部接口介绍 ISD1420语音芯片内部结构框图3.ISD1420封装及引脚介绍 4.ISD1420基本技术指标(均为典型值)工作电源+5V;静态电流10A;工作电流15mA;信噪比S/N=43dB;录音时间长度:20S;每基本段时间长度:20s;5.ISD1520与单片机接口举例(1)硬件连接(2)录入语音信息 RECORD:MOVDPTR,#7FFFH;语音接口地址MOVA,#0FFHMOVXDPTR,A;送停止录放音码MOVA,40H;录音控制码由20H送入AACALLTIMA;延时20msMOVCDPTR,AACALLTIMB;延时0.5s对麦克风发音录单字,;如数字“1”,“千”MOVA,#0FFHMOVXDPTR,A;停止录音RET(3)放音程序 放音子程序PLAY:MOVDPTR,#7FFFHMOVA,#0FFH;复位信号MOVXDPTR,AMOVA,40H;放音地址及控制码由40H送AACALLTIMA;延时放音时间(单字时0.5s词段时1.5s)MOVXDPTR,AACALLTIMBMOVA,#0FFH;停止放音MOVXDPTR,ARET
限制150内