资源描述:
《单片机原理与应用 答案4.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第7章单片机应用系统中的按键与显示习题解答一、填空题1.键盘抖动可以使用硬件和软件两种办法消除。2.液晶显示的优点是:液晶显示的优点是:与数码管相比,显示内容多,可显示数字、字符,甚至汉字和图形。3.键盘中断扫描方式的特点是提高了CPU的工作效率。4.数字5的共阴极七段LED显示代码是6DH,数字5的共阳极七段LED显示代码是92H。5.液晶显示模块(LCM)是指将液晶显示模块(LCM)是指将控制器、驱动器、显示器集成在一起的器件。二、简答题1.何谓LED静态显示?何谓LED动态显示?两种显示方
2、式各有何优缺点?答:LED静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止,公共端恒定接地(共阴极)或接正电源(共阳极)。LED动态显示是一位一位地轮流点亮各位数码管的显示方式,每位数码管点亮的时间大约在lms左右。但由于LED具有余辉特性以及人眼也有视觉暂留特性,使人看起来就好像在同时显示不同的字符一样。静态显示的优点是,显示控制程序简单,显示亮度大,节约单片机工作时间。静态显示的缺点是,在显示位数较多时,静态显示占用的I/O口线较多,或者需要增加额外的硬件电路,硬件成本较
3、高。动态显示的优点是,可以大大简化硬件线路。动态显示的缺点是,要循环执行显示程序,对各个数码管进行动态扫描,消耗单片机较多的运行时间;在显示器位数较多或刷新间隔较大时,会有一定的闪烁现象,显示亮度较暗。2.简述用RS触发器消除按键抖动的基本原理。答:RS触发器消除按键抖动的常用电路如图7-3所示。图中用两个与非门构成一个RS触发器。当按键未被按下而处于A处时,触发器输出为“1”。当按键按下处于B处时,输出为“0”。此时即使由于按键的机械弹性,因抖动产生瞬间断开,只要按键不返回原始状态A,双稳态电
4、路的状态就不改变,输出保持为“0”,不会产生抖动。3.设有一个单片机应用系统用三个LED数码管显示运行结果,电路如图7-22所示。显示数据的显示代码已分别存储在内部RAM32H~30H中(百位在32H)。编写程序,实现静态显示。图7-22简答题3的图答:汇编语言参考答案:(此图中,请将74164的Q0~Q7接数码管的Dp~a,或对显示内容从高到低逐位转换)ORG0000H;在0000H单元存放转移指令SJMPMAIN;转移到主程序ORG0030H;程序从0030H开始MAIN:MOV32H,#5
5、;百位MOV31H,#4;十位MOV30H,#3;个位MOVSCON,#00H;初始化串行口方式0START:MOVDPTR,#TAB;字形表的入口地址MOVR0,#30H;显示数的初始地址LOOP:MOVA,@R0;取待显示数据MOVCA,@A+DPTR;查表获取字型码MOVSBUF,A;送串口显示JNBTI,$;等待发送完毕CLRTI;清发送标志INCR0;地址加一,准备取下一个待显示数CJNER0,#33H,LOOP;判断3个数据是否显示完SJMP$;显示结束TAB:DB0C0H,0F9H
6、,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;段码表;0123456789对应内容END;程序结束C语言参考答案:#include//预处理命令,定义SFR的头文件charcodeTAB[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//段码表unsignedcodedis_code[3]={0x5,0x4,0x3};//待显示数据main(){inti,dis;//定义变量i,disS
7、CON=0x00;//初始化串行口方式0for(i=2;i>=0;i--)//3位显示循环{dis=dis_code[i];//取待显示位数SBUF=TAB[dis];//取待显示数的字型码while(TI==0);//等待发送完毕TI=0;//清发送标志}while(1);//显示结束}Proteus仿真图如下所示:4.设有一个LED数码管动态显示电路如图7-23所示。已知显示代码存储在内部RAM30H开始的8个单元中,编写程序,动态显示给定的信息。图7-23简答题4的图答:汇编语言参考答案:
8、(用Proteus仿真画图的时候,P0口需接上拉电阻)ORG0000H;在0000H单元存放转移指令SJMPMAIN;转移到主程序ORG0030H;程序从0030H开始MAIN:MOV30H,#00H;给内部RAM30H开始的8个单元内容赋值MOV31H,#01HMOV32H,#02HMOV33H,#03HMOV34H,#04HMOV35H,#05HMOV36H,#06HMOV37H,#07HMOVDPTR,#TAB;共阴字形表的入口地址LOOP:MOVR0,#30H;待显示数的首地址MOVR1