版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机的输入输出设备接口第5章第五章单片机的输入/输出设备接口一、键盘接口概述1.单片机实现键盘接口的常用方法独立式键盘:由一组相互独立的按键组成,每个按键与一位I/O口相连,接口简单,但是占用I/O口较多。矩阵式按键:键按行列组成矩阵,行和列相交处安放一个按键,每条行线或列线与一位I/O相连,节省I/O资源。硬件去抖动方法:R-S触发器消抖电路+5V
闭合断开滤波消抖电路软件去抖方法:采用延迟躲过抖动,待信号稳定后,再进行键扫描。延迟时间10~20ms。⑵键值或键号的计算当确定有键按下时,需进一步根据行线和列线的状态确定按下键的值或键号,以实现键功能的程序。⑶等待键释放获得键值后在以延时或查询的方法等待键释放,以保证键的一次闭合只进行一次键功能的实现。⑷确定键盘的监控方法中断方式执行。当有键被按下时,向单片机发出中断请求,中断响应后执行键盘扫描工作。定时方式执行。利用内部定时计数器完成一段时间的重复定时,每次定时完成执行一次键盘扫描工作。KEY:MOVP1,#07H MOVA,P1 CPLA ANLA,#07H JZGRET JBACC.0,KEY1 JBACC.1,KEY2 JBACC.2,KEY3GRET:RETKEY1:LCALLWORK1KEY2:LCALLWORK2KEY3:LCALLWORK3RET三、矩阵式按键1.矩阵式键盘的工作原理
X0~X3为键盘的行线,通过电阻接+5V;Y0~Y3为键盘的列线,由单片机控制其输入信号。每条行线和列线处有一个按键结构,当所有键未被按下时,行线与列线断开,每条行线都呈现高电平。当有键被按下时,按键所在行线与列线短路,此时行线的电平由列线的电位所决定。3.键盘扫描程序键输入程序的功能:(1)判别键盘上有无键闭合:其方法为扫描口PA0~PA7输出全“0”,读PC口的状态,若PC0~PC3,为全“1”(键盘上行线全为高电平),则键盘上没有闭合键;若PC0~PC3不为全“1”,则有键处于闭合状态。(2)去除键的机械抖动:其方法为判别到键盘上有键闭合后,延迟一段时间再判别键盘的状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期,否则,认为是键的抖动。(3)判别闭合键的键号:方法为对键盘的列线进行扫描,扫描口PA0~PA7依次输出:PA7PA6PA5PA4PA3PA2PA1PA01111111011111101
:01111111相应地顺次读出PC口的状态,若PC0~PC3为全“1”,则列线输出为“0”的这一列上没有键闭合;否则,这一列上有键闭合。闭合键的键号等于为低电平的列号加上为低电平的行的首键号。eg、PA口的输出为11111101时,读出PC0~PC3为1101,则1行1列相交的键处于闭合状态,第一行的首键号为8,列号为1,闭合键的键号为:N:行首键号+列号=8+1=9(4)使CPU对键的一次闭合仅作一次处理:采用的方法为等待闭合键释放以后再作处理。键盘扫描程序如下:KEY1:ACALLKS1;调用判别有无键闭合子程序JNZLK1ACALLDIR;调用显示子程序,延迟6msAJMPKEY1LK1:ACALLDIRACALLDIRACALLKS1;调用判别有无闭合键子程序JNZLK2ACALLDIRAJMPKEY1LK2:MOVR2,#0FEH;扫描初值送R2MOVR4,#00H;扫描列号送R4LK4:MOVDPTR,#7F01H;指向A口MOVA,R2MOVX@DPTR,A;扫描初值送A口INCDPTRINCDPTRMOVXA,@DPTR;读8155C口JBACC.0,LONE;ACC.0=1,第0行无键按下,转LONEMOVA,#00H;装第0行行值AJMPLKP;转去计算键值LONE:JBACC.1,LTWO;ACC.1=1,第1行无键按下,转TWOMOVA,#08H;装第1行行值AJMPLKP;转去计算键值LTWO:JBACC.2,LTHR;ACC.2=1,第2行无键按下,转THRMOVA,#10H;装第2行行值AJMPLKP;转去计算键值LTHR:JBACC.3,NEXT;ACC.3=1,第3行无键按下,转NEXTMOVA,#18H;装第3行值LKP:ADDA,R4;计算键值PUSHACC;保护键值LK3:ACALLDIR;延时6msACALLKS1;查键是否继续闭合,若闭合再延时JNZLK3POPACC;若键起,则键码送ARETNEXT:INCR4MOVA,R2JNBACC.7,KND第二节LED显示器接口一、显示器的结构管脚配置及外形图共阴极共阳极二、显示方式1.LED静态显示方式静态显示方式:当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。优点:显示稳定,节省CPU时间。缺点:I/O口线多。
利用串行口扩展两片静态显示电路2.LED动态显示方式动态显示方式:一位一位地轮流点亮各位显示器(扫描)。LED动态接口电路显示缓冲区
在RAM中设置,用于存放要显示的数字或字符。位控口地址0FF20H(PA口),段控口地址0FF21H(PB口),控制口地址0FF23H。数码管为共阴极,驱动74LS240为反相器,段码取用“共阳极段选码”;位驱动75451为同相。字位表
20H10H08H04H02H01H
LCALLDL1;延时1msINCR0MOVA,R3JBACC.5,DISUPRLAMOVR3,ASJMPDISUP1ORG2100HDB0C0H,0F9H,0A4H,0B0H,99H92H,82H,0F8H,80H,90HORG2200HDL1:MOVR7,#02HDL:MOVR6,#0FFHDL6:DJNZR6,DL6DJNZR7,DLRET电脑时钟(定时、中断、显示综合实验)以秒、分、时为单位实现时钟计时。1.实现时钟计时的基本方法(1)计数初值计算定时器的定时时间定为125ms,计数溢出8次即得到时钟计时的最小单位秒,而8次计数用软件方法实现。T0,方式1,fosc=6MHz,计数初值为X,则:(216-X)×2=125000(2)采用中断方式进行溢出次数的累计。计满8次即得到秒计时。(3)从秒到分和从分到时的计时是通过累加和数值比较实现。(4)时钟显示及显示缓冲区
ORG0000HSTART:LJMPMAINORG000BHLJMPPITOORG1000H;主程序MAIN:MOVSP,#60H;定义堆栈MOVR0,#79H;显示单元清0MOVR7,#06HML1:MOV@R0,#00HINCR0DJNZR7,ML1MOVTMOD,#01HMOVTL0,#B6HMOVTH0,#17HSETBTR0SETBEASETBET0MOV30H,#08H;设置循环次数ML0:LCALLDISUP;调用显示子程序SJMPML0(3)中断服务程序(PITO)
中断服务程序的主要功能是进行计时操作。程序开始先判断计数溢出是否满了8次,不满8次表明还没达到最小计时单位秒,中断返回;如满8次则表明已达到最小计时单位秒,程序继续向下执行,进行计时操作。ORG1200H;中断服务程序PITO:PUSHPSW;现场保护PUSHACCSETBPSW.3MOVTL0,#0B6H;置定时器初值MOVTH0,#17HMOVA,30HDECAMOV30H,AJNZRET0MOV30H,#08HMOVR0,#7AHACALLDAADl;秒+1MOVA,R2XRLA,#60HJNZRET0ACALLCLR0;秒单元清0(4)加1子程序(DAAD1)加1子程序用于完成对秒、分和时的加1操作。中断服务程序中在秒、分、时加1时共有三处调用此子程序。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淀粉与蛋白添加量对挂面力学特性的影响及优化策略研究
- 液晶模板辅助合成锂离子正极材料及其电化学性能的深度剖析
- 湖南省长沙市宁乡市2026年七年级下学期期中数学试题附答案
- 涟水县农村养老模式:实践、困境与突破路径探究
- 金融行业劳动合同范本及政策解读
- 河北省保定市六校联盟2025-2026学年高一化学上学期期中联考试题
- 202年电建集团数字化能源合同协议合同三篇
- 妊娠期胰腺炎的超声诊断规范化流程
- 妊娠期胰腺炎的MRI诊断新技术应用进展
- 妊娠期肝内胆汁淤积症的监测与围产期管理
- JBT 9229-2024 剪叉式升降工作平台(正式版)
- 《发展汉语(第二版)初级口语(Ⅰ)》第10课教案
- 小学三年级心理健康课《做情绪的主人》完整课件
- 法律顾问服务投标方案(完整技术标)
- 肿瘤化疗药物常见的不良反应及护理措施课件
- 新一代天气雷达观测与灾害预报
- 污水处理设备安全技术规范 编制说明
- 学位外语(本23春)形成性考核5试题答案
- 安师大环境学习题集及答案
- 人文地理学课件
- 城市规划原理 课件 10 城乡区域规划
评论
0/150
提交评论