任务九:8-8矩阵键盘

任务九:8-8矩阵键盘

ID:40593821

大小:447.50 KB

页数:3页

时间:2019-08-04

任务九:8-8矩阵键盘_第1页
任务九:8-8矩阵键盘_第2页
任务九:8-8矩阵键盘_第3页
资源描述:

《任务九:8-8矩阵键盘》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、任务九:8*8矩阵键盘数码管显示实验开始初始化延时计算键值显示键值结束主程序流程图判断行号列号子程序行线为1,列线为0取行线值到AA=0FFH?按键判断子程序行编码放入30H中NY返回按键判断按键判断按键判断子程序判断行号列号子程序取行编码到AACC.0=0?(行编码的最后一位是否为0?)Y取列编码到A返回N计算键值子程序计算键值子程序行号乘以8到A取行号(R0值)再加列号键值送32H单元返回判断行号和列号,并且存入相应单元列线为1,行线为0取列线值到AA=0FFH?列编码放入31H中NYR0清零(用来放行号)ACC

2、.0=0?(列编码的最后一位是否为0?)R1清零(用来放列号)行号加1(R0+1)A右移(为了下次判断)N行号加1(R1+1)A右移(为了下次判断)显示子程序显示子程序查表取个位段码值返回取键值到A(32H值)键值除以10(个位在A,十位在B)段码值送P0口位码值送P2口延时查表取十位段码值段码值送P0口位码值送P2口延时YORG00HLJMPMAINORG30HMAIN:MOVP0,#0FFH;初始化MOVP1,#0FFHMOVP2,#0FFHMOVP3,#0FFHMOV30H,#00H;行编码放置单元MOV31H

3、,#00H;列编码放置单元MOV32H,#100;键值放置单元LOOP:LCALLKEYS;按键判断子程序LCALLDELAY;延时10MSLCALLKEYS;按键判断子程序LCALLPANDUAN;判断行号和列号LCALLJISUAN;计算键值LCALLSHOW;数码管显示键值LJMPLOOPKEYS:MOVP1,#00H;按键判断子程序,MOVP3,#0FFH;列为0,行为1MOVA,P3CJNEA,#0FFH,KEYS1LJMPKEYS_RETKEYS1:MOV30H,A;有键按下,行编码放入30HMOVP3,

4、#00H;列为1,行为0MOVP1,#0FFHMOVA,P1CJNEA,#0FFH,KEYS2LJMPKEYS_RETKEYS2:MOV31H,A;有键按下,列编码放入31HKEYS_RET:RETPANDUAN:;判断行号和列号MOVA,30H;判断行号MOVR0,#00H;行号值放入R0中PANHANG1:JNBACC.0,PANLIEINCR0RRALJMPPANHANG1PANLIE:MOVA,31H;判断列号MOVR1,#00H;列号值放入R1中PANLIE1:JNBACC.0,PANDUAN_RETINC

5、R1RRALJMPPANLIE1PANDUAN_RET:RETJISUAN:MOVA,R0;计算键值MOVB,#8;行号乘以8加列号MULABADDA,R1MOV32H,A;键值放入32H单元中RETSHOW:;显示子程序MOVA,32HMOVB,#10DIVABMOVDPTR,#TAB;将32H中值MOVCA,@A+DPTR;十位显示出来MOVP0,#0FFHMOVP0,AMOVP2,#0FEHLCALLDELAYMOVA,BMOVDPTR,#TAB;将32H中值MOVCA,@A+DPTR;个位显示出来MOVP0,

6、#0FFHMOVP0,AMOVP2,#0FDHLCALLDELAYRETDELAY:MOVR7,#40;延时10MS子程序D1:MOVR6,#123NOPD2:DJNZR6,D2DJNZR7,D1RETTAB:;数码管段码表DB0C0H,0F9H,0A4H,0B0HDB099H,092H,082H,0F8HDB080H,090H,088H,083HDB0C6H,0A1H,086H,08EHEND说明:此例与4*4键盘一样,先行线为0,列线为1;然后行线为1,列线为0;其都为8位不能合并,采用“行号*8+列号=键值”形

7、式,行号(0~7)8行,列号(0~7)8列。行号列号判断有专门的子程序,另外键值显示部分采用的是动态显示(显示的是两位数)。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。