单片机学习教程524.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 MCS-51系统扩展技术 §5-1 MCS-51单片机最小系统 §5-2 存储器的扩展 §5-3 并口的扩展方法 §5-4 可编程并行接口芯片8255A §5-5 可编程并行接口芯片8155 (4)等待键释放 计算键码后,再以延时后进行行扫描的方法等待键释放。等待释放是为了保证键的一次闭合仅进行一次处理。 2.键盘接口的控制方式 在单片机的运行过程中,何时执行键盘扫描和处理,可有下列三种情况: l???????随机方式,每当CPU空闲时执行键盘扫描程序 l??????中断方式,每当有键闭合时才向CPU发出中断请求中断响应后执行键盘扫描程序 l 定时方式,每隔一定时间执行一次键盘扫描程序,定时可由单片机的定时器完成。 3. 键处理程序 在计算机中每一个键都对应一个处理子程序,得到闭合键的键码后,就可以根据键码,转到相应的键处理子程序(分支以JMP等散转指令实现),进行字符、数据的输入或命令处理。这样就可以实现该键设定的功能。 键处理的流程图 4. 用8155作单片机键盘接口 ① 接口电路逻辑图 8155作键盘接口 则A口地址为0FDF9H,C口地址为0FDFBH。 ② 判定有无闭合键的子程序 判定有无闭合键的子程序为KSI,供在键盘扫描程序中调 用。程序如下: KSI: MOV DPTR,#0FDF9H ;A口地址 ? MOV A, #00H ? ? MOVX @DPTR,A ;A口送00H ? INC DPTR ? ? INC DPTR ;C口地址 ? MOVX A,@DPTR ;读C口 ? CPL A ? ? ANL A,#0FH ;屏蔽高四位 ? RET ? ? 执行KSI子程序的结果是:有键闭合则 A0 无 则A=0 ③键盘扫描程序 如前所述,在单片机应用系统中常常是键盘和显示器同时存在,因此可以把键盘扫描程序和显示程序配合起来使用,即:把显示程序作为键扫描程序的延时子程序。这样做既省去了一个专门的延时子程序,又能保证显示器常亮的可观效果。 假定本系统中显示程序为DIR,执行时间约为6ms。键盘扫描程序如下: KEY1: ACALL KSI ;检查是否有键闭合 ? JNZ LK1 ;A非“0”则转移 ? ACALL DIR ;显示一次(“延时6s) ? AJMP KEY1 ? LK1: ACALL DIR ;有键闭合二次延时 ? ACALL DIR ; 共12ms去抖动 ? ACALL KSI ;再检查是否有键闭合 ? JNZ LK2 ;有键闭合转移到LK2 ? ACALL DIR ? ? AJMP KEY1 ;无键闭合,延时6ms后转KEY1 LK2: MOV R2, #0FEH ;扫描初值送R2 ? MOV R4, #00H ;扫描列号送R4 LK4: MOV DPTR,# 0FDF9H ;A口地址 ? MOV A, R2 ? ? MOVX @DPTR, A ;扫描初值送A口 ? INC DPTR ? ? INC DPTR ;C口地址 ? MOVX A, @DPTR ;读C口 ? JB ACC.0, LONE ;ACC.0=1,第0行无键闭合,转 ? MOV A,#00H ;装第0行值 ? AJMP LKP ? LONE: JB ACC.1, LTWO ;ACC.1=1,第1行无键闭合,转 ? MOV A,#08H ;装第1行值 ? AJMP LKP ? LTWO: JB ACC.2,LTHR ;ACC.2=1,第2行无键闭合,转LTHR ? MOV A,#10H ;装第2行值 ? AJMP LKP ? LTHR: JB ACC.3,NEXT ;ACC.3=1,第3行无键闭合,转 ? MOV A,#18H ;装第3行值 LKP: ADD A,R4 ;计算键码 ? PUSH ACC ;保护键码 LK3: ACALL DIR ;延时6ms ? ACALL KSI ;检查是否继续闭合,若闭合再延时 ? JNZ LK3 ? ? POP ACC ;若键起,则键码送A ? RET ? ? NEXT: INC R4 ;扫描列号加1 ? M

文档评论(0)

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

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

1亿VIP精品文档

相关文档