欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    单片机键盘原理和实现(共9页).doc

    • 资源ID:15130071       资源大小:1.79MB        全文页数:9页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机键盘原理和实现(共9页).doc

    精选优质文档-倾情为你奉上§8.3 键盘接口技术一、 键盘输入应解决的问题键盘是一组按键的集合,它是最常用的单片机输入设备操作人员可以通过键盘输入数据或命令,实现简单的人机通讯。键是一种常开型按钮开关,平时(常态)键的二个触点处于断开状态,按下键时它们才闭合(短路)。键盘分编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件译码器实现并产生编号或键值的称为编码键盘,如:ASC码键盘、BCD码键盘等;靠软件识别的称为非编码键盘。在单片机组成的测控系统及智能化仪器中用得最多的是非编码键盘。本节着重讨论非编码键盘的原理、接口技术和程序设计。键盘中每个按键都是个常开关电路,如图所示。1. 按键的确认: P1.7=1 无按键; P1.7=0 有按键;2. 去抖动 去抖动的方法: 硬件去抖动 采用RS触发器: 优点: 速度快,实时, 缺点: 增加了硬件成本 软件去抖动 采用延时方法 延时510ms 延时510ms P1.7=0 确认P1.7=0 P1.7=1(去前沿抖动) (去后沿抖动) 二、 独立式键盘 每个I/O口连接一个按,S1 P1.0S2 P1.1.S8 P1.7 软件: START: MOV P1,#0FFH ;置P1口为高电平JNB P1.0, RS1 ; S1按下,程序去执行RS1JNB P1.1, RS2 ; S2按下,程序去执行RS2JNB P1.2, RS3 ; S3按下,程序去执行RS3JNB P1.3, RS4 ; S4按下,程序去执行RS4JNB P1.4, RS5 ; S5按下,程序去执行RS5JNB P1.5, RS6 ; S6按下,程序去执行RS6JNB P1.6, RS7 ; S7按下,程序去执行RS7JNB P1.7, RS8 ; S8按下,程序去执行RS8AJMPSTART ; 继续扫描按键.RS1:AJMP PK1 ;RS2:AJMP PK2;RS3:AJMP PK3;RS4:AJMP PK4;RS5:AJMP PK5;RS6:AJMP PK6;RS7:AJMP PK7;RS8:AJMP PK8;AJMP START ; 无键按下,继续扫描PK1:. ; 按键S1功能处理程序 AJMP START ; 处理S1按键后, 继续扫描PK2:. ; 按键S2功能处理程序 AJMP START .PK8: ; 按键S8功能处理程序 AJMP START ; 处理S8按键后, 继续扫描优点: 连线简单,程序容易.缺点: 太浪费资源适用于按键较少、I/O口空闲的场合。三、行列式非编码键盘接口方法 按键较多时,一般采用行列式键盘.采用扫描方式,软件扫描方式有三种: 程序扫描方式: 当CPU空闲时,扫描键盘,判断有无键按下. 定时扫描方式: 利用CPU的定时器,每隔一定时间扫描一次键盘. 中断扫描方式: 在硬件上采用中断,有键按下时,产生中断, 由中断服务程序来处理.下面是16个按键,构成的4×4键盘 行线: 四根,接P1.0-P1.3 列线: 四根,接P1.4-P1.7 程序扫描法原理: P1.0-P1.3输出低电平,读P1.4P1.7,若全为1,无键按下若不全为1,有键按下 在有键按下的情况下,进一步判断是那个键按下 使P1.0-P1.3依次输出低电平,读P1.4-P1.7判断有无键按下子程序, 程序名: KAP键盘查询子程序KAP:MOV P1,#0F0H ;行线输出低电平,列线输出高电平 MOVA,P1 ;P1口读入ACPL A ;取反ANL A,#0F0H ;取高四位,即P1.4-P1.7RET程序出口: A=0, 则无键按下. A0 则有键按下.去抖动-延时10ms子程序: 程序名D10MSD10MS:MOVR6, #14H;DL:MOV R7,#0FFH; DJNZ R7,$DJNZ R6,DLRETKINP:LCALLKAP; 调键盘查询子程序,JNZKP1; A0,有键按下SJMP END_KINP ; A=0,无键按下,退出按键查询程序KP1:LCALLD10MS;延时10MS,去抖动LCALLKAP;再次查询键盘,JNZKP2; A0,确认有键按下SJMPEND_KINP; A=0,误操作,重新查询KP2为取键值子程序KP2:MOVR2,#0FEH; R2为行扫描值MOVR4,#00H; R4初值为第0行行首键号CLRF0; F0=0表示正在扫描键盘KP4:MOV P1,R2; 扫描行为低MOV A,P1; 读P1JBACC.4, L1; 第0列不为低,则检查第1列MOVA,#00H; 为低,则行首键值送入AAJMPKP5; KP5L1:JB ACC.5,L2; 检查第一列MOVA,#04H; 第一列行首键值送入AAJMPKP5L2:JB ACC.6 ,L3 ; 检查第二列MOVA,#08H; 第二列行首键值送入AAJMPKP5L3:JB ACC.7 , NEXT; 检查第三列,若为1,则检查下一行MOVA,#0CH; 第三列行首键值送入AKP5:ADDA , R4; A A+R4,键值调整PUSHA; KP3:LCALLD10MS; 后沿去抖动LCALLKAP; 查询按键是否释放JNZKP3; A0 未释放,继续查询POPA; 键已释放,弹出键值RETNEXT:INCR4; 下一列,行键值加1MOV A ,R2; 取扫描值JNB ACC.3,END_KINP; 判断扫描是否结束?RLA; 下一个扫描值MOVR2, A;AJMP KP4 ; END_KINP:SETB F0 RET专心-专注-专业

    注意事项

    本文(单片机键盘原理和实现(共9页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开