显示和键盘流程图及程序_第1页
显示和键盘流程图及程序_第2页
显示和键盘流程图及程序_第3页
显示和键盘流程图及程序_第4页
全文预览已结束

下载本文档

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

文档简介

1、3.2 部分软件设计显示子程序动态显示程序框图如图所示。显示程序的要点有两个:一是代码转换。因为直接驱动LED显示器的是字形码,而人们习惯的是0、1、2、F等字符,因此,必须将待显示的字符转换成字形码。转换用查表的方法进行。二是通过软件实现逐位轮流点亮每个LED。为了实现代码转换,首先开辟一个显示缓冲区,将待显示的字符预先存放在缓冲区中。由于有4位LED显示器,故不妨假设显示缓冲区长度为4个字节。显示缓冲区地址为DIS0DIS3 ,DIS0单元与最左边一位LED相对应,DIS3单元与最右边一位LED相对应。开 始8051初始化动态显示初始化送位选字查段选表段选码送入延时1mS指向下个显示缓冲单

2、元显示下一位3位显示完?结 束 图3-3 显示子程序方框图程序清单如下:DIS: ORG 0500H MOV A,#00000011BMOV DPTR,#7F00HMOVX DPTR,AMOV R0,#78HMOV R3,#7FHMOV A,R3LD: MOV DPTR,#7F01HMOVX DPTR,AINC DPTRMOV A,R0ADD A,#0DHMOVC A, DPTRACALL DLYMOV A ,R3JNB A,R0RR A,LD1MOV R3,AINC R0AJMP LD0LD1: SJMP LD1DSEG:DB 3FH,06H,5BH,4FH,66H,6DH 7DH

3、,07H,7FH,6FHDLY: MOV R7,#02HDL: MOV R6,#0FFHDL1: DJNZ R6,DL1 DJNZ R7,DL RET键盘子程序键盘扫描子程序框图如图开 始 有键闭合吗?调用延时子程序 两次调用延时子程序确有键闭合吗判断闭合键号 闭合键释放吗键号 A返 回图3-4 键盘扫描子程序框图键盘扫描子程序如下:KEY: ORG 0440H ;ACALL KS ;调用KS判别是否有键按下 JNZ K1;有键按下转移 ACALL DIR;无键按下,调延时子程序AJMP KEY ;K1: ACALL DIR ;加长延时时间,消除键抖动ACALL DIR ;ACALL KS ;

4、调用KS子程序,再次判别有无键按下JNZ K2 ;有键按下,转逐列扫描AJMP KEY ;误读键,返回K2: MOV R2,#0FEH ;首列扫描字送R2MOV R4,#00H ;首列号送R4K3: MOV DPTR,#PA ;A口地址送DRTRMOV A,R2 ;MOVX DPTR,A ;列扫描字送8155A口INC DPTR ;指向8155C口INC DPTR ;MOVX A, DPTR ;读取行扫描值JB ACC.0,L1 ;第0行无键按下,转查第1行MOV A,#00H ;第0行有键按下,该行的行首键号#00H送 AAJMP LK ;转求键号L1: JB ACC .1,L2 ;第1行无

5、键按下,转查第2行MOV A,#08H ;第1行无键按下,该行的行首键号 #08H送AAJMP LK ;转求键号L2: JB ACC .2,L3;第2行无键按下,转查第3行MOV A,#10H ;第2行有键按下,该行的行首键号#10H送 AAJMP LK ;转查键号L3: JB ACC.3,NEXT ;第3行无键按下,转查下一列MOV A,#18H ;第3行有键按下,该行的行首键号#18H送 ALK: ADD A,R4 ;形成键释放 PUSH ACC ;未释放,等待K4: ACALL DIR ;键释放,弹出堆栈送ACCACALL KS ;键扫描结束,返回JNZ K4 ;修改列号POP ACC ;RET NEXT:INC R4 ;MOV A,R2 ;JNB ACC.7,KEY ;8列扫描完返回KEYRL A ;未扫描完,扫描字左移一位,变为下列扫描字MOV R2,A ;扫描字暂存R2AJMP K3 ;KS: MOV DPTR,#PA ;A口地址送DPTRMOV A,#00H;MOVX DPTR,A ;令扫描字00H送A口INC DPTR ;指向C口I

温馨提示

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

评论

0/150

提交评论