应用系统配置及接口技术.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 应用系统配置及接口技术 9.1 人机通道配置与接口技术 ⑴ 硬件去抖动 1. 键盘结构 键盘可以分为独立连接式和行列式(矩阵式)两类,每一类按其译码方法又都可分为编码及非编码两种类型。这里只介绍非编码键盘。 1) 独立式非编码键盘接口及处理程序 独立式按键是指各按键相互独立地接通一条输入数据线,如图9-4所示。这是最简单的键盘结构,该电路为查询方式电路。 当任何一个键按下时,与之相连的输入数据线即被清0(低电平),而平时该线为1(高电平)。要判别是否有键按下,用单片机的位处理指令十分方便。 这种键盘结构的优点是电路简单;缺点是当键数较多时,要占用较多的I/O线。 2) 行列式键盘接口及工作原理 为了减少键盘与单片机接口时所占用I/O线的数目,在键数较多时,通常都将键盘排列成行列矩阵形式,如图9-6所示。 以图9-6所示的4×4键盘为例,说明行扫描法识别哪一个按键被按下的工作原理。 二、 LED显示器接口及显示程序 单片机应用系统中使用的显示器主要有: 发光二极管显示器,简称LED(Light Emitting Diode); 液晶显示器,简称LCD(Liquid Crystal Display); CRT显示器 1. LED显示器结构原理 单片机中通常使用7段LED有共阴极和共阳极两种,如图9-11所示。 发光二极管的阳极连在一起的(公共端K0)称为共阳极显示器 阴极连在一起的(公共端K0)称为共阴极显示器。 一位显示器由8个发光二极管组成,其中,7个发光二极管构成字型“8”的各个笔划(段)a~g,另一个小数点为dp发光二极管。 当在某段发光二极管上施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,须外加限流电阻。 以共阴极LED为例,如图9-11(a)所示,各LED公共阴极K0接地。若向各控制端a、b、…、g、dp顺次送号,则该显示器显示“7.”字型。 共阴极与共阳极7段LED显示数字0~F、“-”符号及“灭”的编码(a段为最低位,dp点为最高位)如表9-1所列。 2. LED显示器接口及显示方式 LED显示器有静态显示和动态显示两种方式。 1) LED静态显示方式 静态显示就是当显示器显示某个字符时,相应的段(发光二极管)恒定地导通或截止,直到显示另一个字符为止。 LED显示器工作于静态显示方式时,各位的共阴极(公共端K0)接地;若为共阳极(公共端K0),则接+5v电源。每位的段选线(a~dp)分别与一个8位锁存器的输出口相连,显示器中的各位相互独立,而且各位的显示字符一经确定,相应锁存的输出将维持不变。 因此,静态显示器的亮度较高。这种显示方式编程容易,管理也较简单,但占用I/O口线资源较多。在显示位数较多的情况下,一般都采用动态显示方式。 2) LED动态显示方式 在多位LED显示时,将所有位的段选线并联在一起,由一个8位I/O口控制。而共阴(或共阳)极公共端K分别由相应的I/O线控制,实现各位的分时选通。图9-12所示为6位共阴极LED动态显示接口电路。 3. LED显示器与89C51接口及显示子程序 图9-14图中,P0口输出段选码,P1口输出位选码,位选码占用输出口的线数决定于显示器位数,比如6位就要占6条。 75452(或7406)是反相驱动器(30 V高电压,OC门),这是因为89C51 P1口正逻辑输出的位控与共阴极LED要求的低电平点亮正好相反,即当P1口位控线输出高电平时,点亮一位LED。 7407是同相OC门,作段选码驱动器。 逐位轮流点亮各个LED,每一位保持1 ms,在10~20 ms之内再一次点亮,重复不止。这样,利用人的视觉暂留,好像6位LED同时点亮一样。 扫描显示子程序流程如图9-15所示。 DIS显示子程序清单如下: DIS: MOV R0,#7EH;显示缓冲区末地址→R0 MOV R2,#01H;位控字,先点亮最低位(右边) MOV A,R2 MOV DPTR,#TAB;字型表头地址→DPTR LP0: MOV P1,A MOV A,@R0;取显示数据 MOVC A,@A+DPTR;取出字形码 MOV P0,A;送出显示 ACALL D1MS;调延时子程序 DEC R0;数据缓冲区地址减1 MOV A,R2 JB ACC.5,LP1;扫描到最左面的显示器了吗? RL A;没有到,左移1位 MOV R2,A AJMP LP0 LP1: RET TAB: DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,40H,00H D1MS: M

文档评论(0)

锦绣中华 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档