




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、19.2 9.2 键盘输入基础知识键盘输入基础知识2常用芯片 74ls373 三态同相八d锁存器,输出口具有锁存作用 74ls273 带公共时钟复位八d触发器,锁存器 74ls377 单边输出公共使能八d锁存器 74ls173 三态输出四位d型寄存器74ls374三态反相八d锁存器74ls244 八同相三态缓冲器/线驱动器,缓冲器 输入口具有缓冲作用 74ls245八同相三态总线收发器,缓冲器 74ls138 3-8线译码器74ls139 双2-4线译码器 74ls164 八位串行入/并行输出移位寄存器 3硬件和软件二部分)硬件和软件二部分) 键盘结构及与主机的连接方式。键盘结构及与主机的连接
2、方式。 键盘管理程序。键盘管理程序。9.2 9.2 键盘输入基础知识键盘输入基础知识 是单片机应用系统中实现人机对话的一种基本形是单片机应用系统中实现人机对话的一种基本形式,两种接口设计的好坏,直接影响到人机接口的式,两种接口设计的好坏,直接影响到人机接口的。45 把检测线分成二组,一组为行线,另一组为列线,按键放把检测线分成二组,一组为行线,另一组为列线,按键放在行线和列线的在行线和列线的交叉点交叉点上。或称为:输入口和输出口。上。或称为:输入口和输出口。 键盘规模可扩大。键盘规模可扩大。 键盘分析程序较复杂。键盘分析程序较复杂。p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.
3、76 由于键盘的由于键盘的,键盘在按下和松开的过程中会存在,键盘在按下和松开的过程中会存在抖动过程,具体如图所示:抖动过程,具体如图所示: 键抖动可能导致计算机将按键操作识别为键抖动可能导致计算机将按键操作识别为。为。为了消除干扰,必须采取措施了消除干扰,必须采取措施。7经过一个经过一个电路后,对脉冲进行电路后,对脉冲进行整形整形。得到标准脉冲。得到标准脉冲。当判定按键按下时,用软件当判定按键按下时,用软件,等待键稳后重,等待键稳后重新再判一次,以新再判一次,以躲过触点抖动期躲过触点抖动期。8key:jnb p1.0,key1key:jnb p1.0,key1 jnb p1.1,key2 jn
4、b p1.1,key2 jnb p1.2,key3 jnb p1.2,key3 jnb p1.3,key4 jnb p1.3,key4 ajmp key ajmp keykey1:key1:key2:key2: key4:key4:9例例9-29-2: wb0: wb0: mov a,p1mov a,p1 fanh: nop fanh: nop key1: key1: key4: key4: &10 所有输出口所有输出口(p1.4-p1.7)输出输出0,读取输入口,读取输入口(p1.0-p1.3)状状态;态; 判是否有键按下判是否有键按下(没有键按下,没有键按下,读入值为读入值为0fh
5、 )。 若确定有键按下,则开始逐若确定有键按下,则开始逐列送列送0,进行列扫描。最后记,进行列扫描。最后记录录 为保证消抖,考虑消抖措施。为保证消抖,考虑消抖措施。 具体见下页。具体见下页。p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7输出口输入口列11p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7所有输出口输出所有输出口输出0,读取输入口;,读取输入口;如果输入口全为如果输入口全为1,重新执行第,重新执行第1步,步,否则向下;否则向下;输出口(列)逐个送输出口(列)逐个送0,读取输入口;,读取输入口;若全为若全为1,则下一个输出口送,则下一个输出口送0,否
6、则,否则能够确定列和行;能够确定列和行;记录当前列值记录当前列值 ,记录行值,记录行值列输出口输入口12key: mov p1,#0fh nop mov a,p1 cjne a,#0fh,ls1 ajmp keyls1: mov p1,#0efh nop mov a,p1 cjne a,#0efh,hs1ls2: mov p1,#0df nop mov a,p1 cjne a,#0dfh,hs2ls3: mov p1,#0bfh nop mov a,p1 cjne a,#0bfh,hs3ls4: mov p1,#7fh nop mov a,p1 ajmp hs4p1.0p1.1p1.2p1.3
7、p1.4p1.5p1.6p1.7hs1: mov n,#01h lcall hqhz ajmp okhs2: mov n,#02h lcall hqhz ajmp okhs3: mov n,#03h lcall hqhz ajmp okhs4: mov n,#04h lcall hqhz ajmp okhqhz: mov m,#00hnext1: rrc a inc m jc next1 ret 。 以某一个按键按下为例,进行计算输出口输入口13 先让先让p1p1高四位输出高四位输出“0”0” ,从,从p1p1的的低四位读键盘低四位读键盘状态,如状态,如e e键被按下,键被按下,从从p1p1的
8、低四位输入为的低四位输入为11110 01 1,“0”0”对对应按键代表的应按键代表的列列。线路反转线路反转,p1p1的的低四位输出低四位输出“0”0”电电平,从平,从p1p1高四位读键盘高四位读键盘状态,从状态,从p1p1高四位输入高四位输入0 0111111,“0”0”对应按键代对应按键代表的表的行位置行位置。数据合成特征码数据合成特征码0111 11010111 1101(7dh7dh),完全确定按键位置。完全确定按键位置。 通过通过查键码转换表查键码转换表找到对应的找到对应的键值键值( (顺序码顺序码) )。 1415从从tzm表中搜寻所有特征码,和(表中搜寻所有特征码,和(52h)比
9、较,)比较,找到是哪个按键按下,结果存在找到是哪个按键按下,结果存在r6里。里。16led-发光二极管。发光二极管。 led的正向压降:的正向压降: 1.2v 2.6v,工作电流工作电流: 5ma 20ma。适合于脉冲工作状态,电路须串联适当的限流电阻。适合于脉冲工作状态,电路须串联适当的限流电阻。led显示器的类型:显示器的类型: 单个、七段、米字型和点阵式。单个、七段、米字型和点阵式。9.5.2 9.5.2 单个单个ledled显示器显示器常用于仪器的状态显示。常用于仪器的状态显示。17 将数个将数个led组成一个阵列组成一个阵列,并封装于一个标准的并封装于一个标准的外壳中,七段外壳中,七
10、段led显示器有显示器有两种结构。两种结构。 可用于显示可用于显示09数字和多种字母数字和多种字母。18共阴极共阳极 (a)(b)19。20 省略了硬件,其要显示的省略了硬件,其要显示的bcd码通过软件的方码通过软件的方法,将其转换为相应的段码。法,将其转换为相应的段码。先将要显示的数字和字母的段码计算出来;先将要显示的数字和字母的段码计算出来;将段码按顺序做成段码表,存入程序存储器中;将段码按顺序做成段码表,存入程序存储器中;把要显示的把要显示的bcd码作为偏移量,通过查表的方式来码作为偏移量,通过查表的方式来查段码;查段码; 取出段码,送至显示数码管进行显示。取出段码,送至显示数码管进行显
11、示。213fhc0h77h88h06hf9h7ch83h5bha4h39hc6h4fhb0h5eha1h66h99h79h86h6dh92h71h8eh7dh82h76h89h07hf8h73h8ch7fh80h3ehc1h6fh90h00hffhd7 d6 d5 d4 d3 d2 d1 d0dp g f e d c b a22 以点阵格式进行显示以点阵格式进行显示, ,显示的字符较逼真,但接口电路和控显示的字符较逼真,但接口电路和控制程序较复杂。制程序较复杂。23按显示方式分:按显示方式分:之分。之分。每一位显示输出后能够保持显示不变每一位显示输出后能够保持显示不变,直至重新送入新的,直至重
12、新送入新的数据。数据。当显示位数较多时,占用的当显示位数较多时,占用的i/o口较多。口较多。对各显示器进行对各显示器进行,显示器,显示器件件工作,每次只允许一个器件显示。工作,每次只允许一个器件显示。使用硬件少,占用使用硬件少,占用i/o口少。口少。占用机时长,只要不执行显示程序,就立刻停止显示。占用机时长,只要不执行显示程序,就立刻停止显示。244位位led的静态显示接口电路的静态显示接口电路252627自己定义一个缓存区,存放要显示的数字,如 50h,51h,52hled上显示的数字是什么?上显示的数字是什么?289.5.6 8155h9.5.6 8155h芯片介绍芯片介绍1.8155h1
13、.8155h的逻辑结构的逻辑结构如图如图9-119-11所示。所示。补充: mcs-51mcs-51单片机与单片机与8155h8155h的接口的接口29可编程i/o口的扩展12345678910111213141516171819204039383736353433323130292827262524232221pc3pc4timer inresetpc5timer outcerdwralead0ad1ad2ad3ad4ad5ad6ad7vssvccpc2pc1pc0pb7pb6pb5pb4pb3pb2pb1pb0pa7pa6pa5pa4pa3pa2pa1pa08 81 15 55 5256
14、b静态ram14位定时计数器abcad07cerdwrresetaletime intime outvcc(+5v)vss(gnd)pc05pb07pa07io/ mio/ m图 8155的结构和引脚302. 8155h2. 8155h的引脚功能的引脚功能(1 1)ad7ad7ad0ad0(8 8条)条)(2 2)i/oi/o总线总线(2222条)条)(3 3)控制总线()控制总线(8 8条)条) resetreset:复位输入线复位输入线 cece* *和和io/mio/m* * rd rd* *和和wrwr* * ale ale:地址锁存允许地址锁存允许 timerintimerin和和t
15、imerouttimerout* *:(4 4)电源线()电源线(2 2条)条) vccvcc:+5v+5v电源电源 vssvss:地地31cece* *io/mio/m* *a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0所选的端口所选的端口0 01 10 00 00 0命令命令/ /状态寄存器状态寄存器0 01 10 00 01 1a a口口0 01 10 01 10 0b b口口0 01 10 01 11 1c c口口0 01 11 10 00 0计数器低计数器低8 8位位0 01 11 10 01 1计数器高计数器高6 6位位0 00 0ramram单元单元3.cpu3
16、.cpu对对8155h i/o8155h i/o端口的控制端口的控制(1) 8155h(1) 8155h各端口地址分配各端口地址分配32(2 2)8155h8155h的命令字的命令字33(3 3)8155h8155h的状态字的状态字34 8155h 8155h的工作方式的工作方式1.1.存储器方式存储器方式 对片内对片内ramram单元进行读写,若单元进行读写,若io/mio/m* *=0=0和和cece* *=0=0,则,则通过通过ad7ad7ad0ad0上的地址对上的地址对ramram存储器任一单元读写。存储器任一单元读写。2.i/o2.i/o方式方式 8155h 8155h的的i/oi/
17、o方式分为方式分为基本基本i/oi/o和和选通选通i/oi/o两种工作两种工作方式,如表方式,如表9-39-3所示。可对片内任一寄存器读写,所示。可对片内任一寄存器读写,端口地址由端口地址由a2a2、a1a1、a0a0三位决定(见表三位决定(见表9-29-2)。)。35c c口口通用通用i/oi/o方式方式选通选通i/oi/o方式方式alt1alt1alt2alt2alt3alt3alt4alt4pc0pc0输入输入输出输出aintraintr(a a口口中断)中断)aintraintr(a a口中断)口中断)pc1pc1输入输入输出输出abfabf(a a口缓口缓冲器满)冲器满)abfabf
18、(a a口缓冲器满)口缓冲器满)pc2pc2输入输入输出输出astbastb* * (a a口选通)口选通)astbastb* * (a a口选通)口选通)pc3pc3输入输入输出输出输出输出bintrbintr(b b口中断)口中断)pc4pc4输入输入输出输出输出输出bbfbbf(b b口缓冲器满)口缓冲器满)pc5pc5输入输入输出输出输出输出bstbbstb* * (b b口选通)口选通)表表9-3 c9-3 c口在两种口在两种i/oi/o工作方式下各位定义工作方式下各位定义 36(1 1)基本)基本i/oi/o方式方式(2 2)选通)选通i/oi/o方式方式 ( (见右图)见右图)
19、a.a.选通选通i/oi/o输入输入b.b.选通选通i/oi/o输出输出373. 3. 内部定时器内部定时器/ /计数器及使用计数器及使用 14 14位的减位的减1 1定时器定时器/ /计数器计数器,计数长度计数长度和和计数方式计数方式由写入计数寄存器的控制字来确定。由写入计数寄存器的控制字来确定。计数器的两个寄存器的格式如图计数器的两个寄存器的格式如图9-169-16。38t13t13 t0:t0:计数器长度计数器长度m2m2、m1:m1:设置定时器的设置定时器的4 4种工作方式种工作方式4 4种工作方式及相应输出波形种工作方式及相应输出波形如图如图9-179-17。39mcs-51mcs-
20、51与与8155h8155h接口及软件编程接口及软件编程1.mcs-511.mcs-51与与8155h8155h的硬件接口电路的硬件接口电路402. 8155h2. 8155h的编程举例的编程举例( (1) 1) 初始化程序设计初始化程序设计例例9-69-6:若若a a口定义为基本输入方式,口定义为基本输入方式,b b口定义为基本输出方口定义为基本输出方 式,对输入脉冲进行式,对输入脉冲进行2424分频,初始化程序如下:分频,初始化程序如下:start:mov dptr, start:mov dptr, 7f04h 7f04h ;指针指向定时器低;指针指向定时器低8 8位位mov a,mov
21、a,18h18h ;计数初值;计数初值2424送送a,a, movx dptr,a movx dptr,a ;计数初值低;计数初值低8 8位装入定时器位装入定时器inc dptr inc dptr ;指针指向定时器高;指针指向定时器高8 8位位mov a,mov a,40h 40h ;设定时器连续方波输出;设定时器连续方波输出movx dptr,a movx dptr,a ;计数初值高;计数初值高6 6位装入定时器位装入定时器mov dptr,mov dptr,7f00h 7f00h ;指向命令;指向命令/ /状态口状态口mov a,#0c2hmov a,#0c2h ;设定命令控制字;设定命令控制字movx dptr,a movx dptr,a ;a a口输入,口输入,b b口输出口输出, ,开定时器开定时器4142u8155端口地址:端口地址:u6位要显示的数据存放于内部位要显示的数据存放于内部ram 单元中;单元中;u初始化初始化为为 ,a口为口为,b口为口为 (p202)u段码表存于段码表存于ddseg中。中。u初始化初始
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年山东土地乡村振兴集团有限公司招聘模拟试卷附答案详解(黄金题型)
- 2025山东教师笔试试题及答案
- 2025事业单位公文试题及答案
- 2025国考公基试题及答案
- 2025澧县医院面试题及答案
- 2025贵州乌当区新阳社区管理服务中心编外人员招聘考试模拟试题及答案解析
- 2025教师岗位培训试题及答案
- 2025文职政治试题题库及答案
- 2025广东中山市东凤镇佛奥幼儿园教职工招聘1人考试参考题库及答案解析
- 成都市商务局所属事业单位 2025年下半年公开考试招聘工作人员(6人)考试模拟试题及答案解析
- 2025至2030镍氢电池隔膜行业市场发展现状及竞争格局与投资价值报告
- 造林质量管理办法
- 高中考试中的数学解题技巧
- 学校保洁服务投标方案(技术标)
- 《商务大数据分析导论》全套教学课件
- 《淞沪会战》课件
- 国庆节课件下载
- 幼儿园中班彩虹泡泡龙课件
- 大量输血课件教学课件
- 妈妈课堂系列医生讲课文档
- 全国小学生英语竞赛(NECPS)四年级组测试题
评论
0/150
提交评论