华东交通大学 单片机微机原理及应用基础教程第6章 接口技术及其应用基础(第1部分).ppt

华东交通大学 单片机微机原理及应用基础教程第6章 接口技术及其应用基础(第1部分).ppt

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华东交通大学单片机微机原理及应用基础教程第6章接口技术及其应用基础(第1部分)创新

* 2. 51单片机扩展并行I/O口连接键盘 实际应用中,多数情况下P0~P2端口已被占用,只能通过扩展8155、8255A等通用并行I/O接口芯片构建键盘接口电路,如图6-18所示;或者采用8279等专用接口芯片构建键盘接口电路,如图6-19所示。 采用8155连接4×8键盘的接口电路 2. 51单片机扩展并行I/O口连接键盘 或者采用8279等专用接口芯片构建键盘接口电路,如图6-19所示。 采用8279连接3×8键盘的接口电路 以前述采用8155连接4×8键 盘的接口电路为例,行扫描法识 别闭合键的程序流程右图。 首先调用全扫描子程序,检查 有无闭合键。若无键闭合,则对数 码显示器扫描显示1遍;若有键闭 合,则调用两次数码显示器扫描显 示子程序的延时约12ms消抖。 然后再次检查有无键闭合,若 无键闭合,则返回主程序;若有键 闭合,则进行逐行扫描,以判别闭 合键的具体位置。   6.2.3 键盘扫描程序 1. 行扫描法编程 键盘扫描子程序流程图(行扫描法) 对于本例8×4的键盘,可直接由公式“键值=行号×4+列号”计 算键值,见下表。 1. 行扫描法编程 计算出闭合键的键值后,再判断键释放否?若键未释放,则等待;若 键已释放,则再延时消抖,然后判断是命令键还是数字键。若是命令键,则 转入命令键处理程序,完成命令键的功能;若是数字键,则转入数字键处理 程序,进行数字的存储和显示等。 1. 行扫描法编程 KEY1: LCALL KS1 ;检查有闭合键否? JNZ LK1 ;A非0,有键闭合则转 LJMP LK8 ;无键闭合转返回 LK1: LCALL DIR ;有键闭合,则延时12ms LCALL DIR ;消抖 LCALL KS1 ;再次检查有键闭合否? JNZ LK2 ;有键闭合则转 LJMP LK8 ;无键闭合转返回 LK2: MOV R3,#00H ;行号初值送R3 MOV R2,#FEH ;行扫描初值送R2 LK3: MOV DPTR,#0101H ;指向8155口A MOV A,R2 ;行扫描值送A MOVX @DPTR,A ;扫描1行 INC DPTR 【例6-7】键盘扫描程序(行扫描法) 键盘扫描程序(续1) 1. 行扫描法编程 INC DPTR ;指向8155口C MOVX A,@DPTR ;读入列值 ANL A,#0FH ;保留低4位 MOV R4,A ;暂存列值 CJNE A,#0FH,LK4 ;列值非全“1”则转 MOV A,R2 ;行扫描值送A JNB A.7,LK8 ;已扫到最后1行则转 RL A ;未扫完,则移至下1行 MOV R2,A ;行值存入R2中 INC R3 ;行号加1 SJMP LK3 ;转至扫描下1行 LK4: MOV A,R3 ;行号

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档