版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第10章 AT89S51单片机与输入/输出外设的接口,10.1 LED数码管的显示原理,LED(Light Emitting Diode)发光二极管缩写。LED数码管是由发光二极管构成的。常见的LED数码管为“8”字型的,共计8段。每一段对应一个发光二极管。有共阳极和共阴极两种。,10.1 LED数码管的显示原理,为了使数码管显示不同的符号或数字,要把某些段发光二极管点亮,就要为LED数码管提供段码(字型码)。 LED数码管共计8段。正好是一个字节。习惯上是以“a”段对应段码字节的最低位。各段与字节中各位对应关系如表10-1所示。,10.1 LED数码管的显示原理,按照表10-2种所示数据点亮
2、对应的字段,就能显示出相应的数字。这种表格也叫做七段数码管的“字码表”。,10.1 LED数码管的显示原理,除“8”字型的LED数码管外,市面上还有“1”型、“米”字型和“点阵”型LED显示器。,10.1.2 LED数码管工作原理,LED数码显示器件有两种常用的驱动方法:静态显示方式和动态显示方式。 1LED静态显示方式 无论多少位LED数码管,同时处于显示状态。,10.1.2 LED数码管工作原理,【程序举例与演示】,#include unsigned char DisTable16= 0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80
3、,0 x90,0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e; void main (void) unsigned char temp=0; while(1) P0=DisTabletemp; temp+; if(temp=15) temp=0; ,10.1.2 LED数码管工作原理,静态显示方式接口编程容易,但是占用口线较多。若用I/O口线接口,要占用4个8位I/O口。因此在显示位数较多的情况下,所需的电流比较大,对电源的要求也就随之增高,这时一般都采用动态显示方式。,10.1.2 LED数码管工作原理,2LED动态显示方式 无论在任何时刻只有一个LED数码管处于显示
4、状态,即单片机采用“扫描”方式控制各个数码管轮流显示。,10.1.2 LED数码管工作原理,在多位LED显示时,为简化硬件电路,通常将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,而各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的分时选通。 虽然这些字符是在不同时刻出现,而在同一时刻,只有一位显示,其他各位熄灭,由于余辉和人眼的“视觉暂留”作用,只要每位显示间隔足够短,则可以造成“多位同时亮”的假象,达到同时显示的效果。,10.1.2 LED数码管工作原理,10.1.2 LED数码管工作原理,【程序举例与演示】,#include sbit A1=P20; sbit A2
5、=P21; unsigned char DisTable16= 0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e; void main (void) unsigned char temp=0; A1=0; A2=0;,while(1) P0=DisTabletemp; A1=1;/数码管1点亮 temp+; A1=0;/数码管1熄灭 P0=DisTabletemp; A2=1;/数码管2点亮 temp+; A2=0;/数码管2熄灭 if(temp=2)
6、temp=0; ,10.1.2 LED数码管工作原理,动态显示的优点是硬件电路简单,显示器越多,优势越明显。缺点是显示亮度不如静态显示的亮度高。如果“扫描”速率较低,会出现闪烁现象。,10.2 键盘接口原理,10.2.1 键盘输入应解决的问题 1键盘的任务 (1) 判别是否有键按下?若有,进入下一步工作。 (2)识别哪一个键被按下,并求出相应的键值。 (3)根据键值,找到相应键值的处理程序入口。 2键盘输入的特点 常见键盘:触摸式键盘、薄膜键盘和按键式键盘,最常用的是按键式键盘。,10.2 键盘接口原理,10.2.1 键盘输入应解决的问题 3按键的识别 有系统有不止一个按键时,如何判断哪个按键
7、被按下了,以及用户是否放开了按键(只按了一下按键,还是按着不放手)。 4如何消除按键的抖动 按键去抖动的方法有两种: 软件延时法。 采用专用的键盘/显示器接口芯片,这类芯片中都有自动去抖动的硬件电路。,10.2 键盘接口原理,按键抖动,按键在松开时一瞬间的波形,由低电平跳变至高电平,将上升沿放大后发现“毛刺”信号 容易导致误触发和错误计数,10.2 键盘接口原理,去抖动算法 If(KEY=0)/检测到有按钮被按下 delay(10);/延时一段时间 if(KEY=0)/按钮是不是依然被按着 用户代码; ,10.2 键盘接口原理,键盘可分为两类:非编码键盘和编码键盘。 我们常用的直接把按钮和单片
8、机I/O连接在一起的键盘属于非编码键盘,利用专用控制芯片(后面要介绍到的CH514)的键盘属于编码键盘。 (1)独立式键盘 特点是:一键一线,各键相互独立,每个键各接一条I/O口线,通过检测I/O输入线的电平状态,可容易地判断哪个按键被按下,如图10-8所示。,10.2 键盘接口原理,工作过程分析:当没按键按下时,读取P1口,返回的都是0 xFF,当有一个,或者多个按钮按下后,P1口对应的位将变为低电平。 优点:电路简单,各条检测线独立,识别按下按键的软件编写简单。,图10-8 独立式键盘接口电路,10.2 键盘接口原理,【读取过程演示】,11111111,01111111,01101111,
9、1、在没有按钮按下时,由于上拉电阻的作用,P1=0 xFF。 2、当P1.0处按钮被按下后,对应位变成0,P1=0 xFE。 3、如果有多个按钮被同时按下,对应位变成0,P1=0 xF6。,10.2 键盘接口原理,(2)矩阵式键盘 矩阵式(也称行列式)键盘用于按键数目较多的场合,由行线和列线组成,按键位于行、列的交叉点上。如图10-9所示,一个4x4的行、列结构可以构成一个16个按键键盘。在按键数目较多的场合,要节省较多的I/O口线。,图10-9 矩阵式键盘接口,10.2 键盘接口原理,矩阵键盘的读取有两种常见的方法:扫描法和线反转法。两者的硬件电路有微小差别,请注意区别。, 扫描法读取步骤,
10、以图10-9为例。 第1步,识别键盘有无键按下。先把所有列线均置为0,然后检查各行线电平是否都为高,如果不全为高,说明有键按下,否则无键被按下。 第2步,识别出哪个按键被按下。采用逐列扫描法,在某一时刻只让1条列线处于低电平,其余所有列线处于高电平。,图10-9 矩阵式键盘接口,10.2 键盘接口原理,【读取过程演示】,1,1,1,1,0,1,1,1,第一步:设置P1为0 xEF,读P1口,判断低四位的状态 P1.0,P1.1,P1.2,P1.3均为1 没有按键按下,比如按下6号按钮,第二步:设置P1为0 xDF,第三步:设置P1为0 xBF,读P1口,判断低四位的状态 此时P1.1为0,判断
11、为第2行 第3列的按钮被按下,1,0,0,第四步:设置P1为0 x3F,0,0,10.2 键盘接口原理, 线反转法读取步骤,以图10-10为例,第一步,P1.0P1.3输出全为“0”,然后,读入P1.4P1.7线的状态,结果P1.4=0,而P1.5P1.7均为1,因此,第1行出现电平的变化,说明第1行有键按下; 第二步,让P1.4P1.7输出全为“0”,然后,读入P1.0P1.3位,结果P1.0=0,而P1.1P1.3均为1,因此第4列出现电平的变化,说明第4列有键按下。,图10-10 采用线反转法的矩阵式键盘,10.2 键盘接口原理,【读取过程演示】,第一步,设置P1=0 x0F,1 1 1
12、 1 0 0 0 0,按下按钮6后,P1变成0 x0D 说明第3列有按键按下,第二步,设置P1=0 xF0,由于按钮6一直被按着 所以P1变成0 xD0 说明第2行有按键被按下,综合判断是按钮6,1 0 1 1 0 0 0 0,0 0 0 0 1 1 1 1,0 0 0 0 1 0 1 1,10.2 键盘接口原理,10.2.3 键盘的工作方式 单片机在忙于其他各项工作任务时,如何兼顾键盘的输入,这取决于键盘的工作方式。工作方式选取原则是,既要保证及时响应按键操作,又不过多占用单片机工作时间。键盘工作方式有3种,即编程扫描、定时扫描和中断扫描。,10.2 键盘接口原理,1编程扫描方式 while
13、(1) KeyNumber=ReadKey();/在while循环中不停读取按键状态 2定时扫描方式 void timer0_int() interrupt 1 KeyNumber=ReadKey();/在定时器中断函数中读取按键状态 3中断扫描方式 void EXT0_int() interrupt 0 KeyNumber=ReadKey();/在外中断函数中读取按键状态 ,10.2 键盘接口原理,非编码矩阵式键盘所完成的工作分为3个层次。 (1)单片机如何来监视键盘的输入 体现在键盘的工作方式上就是:编程扫描;定时扫描;中断扫描。 (2)确定按下键的键号 体现在按键的识别方法上就是:扫描法
14、;线反转法。 (3)根据按下键的键号,实现按键的功能,即跳向对应的键处理程序。,10.3 键盘/显示器接口设计实例,常见的键盘显示实现方式: 1. 利用AT89S51串行口实现的键盘/显示器接口 2. 各种专用的键盘/显示器接口芯片 用专用芯片,可省去编写键盘/显示器动态扫描程序以及键盘去抖动程序编写的繁琐工作。目前各种专用接口芯片种类繁多,各有特点,总体趋势是并行接口芯片逐渐退出,串行接口芯片越来越多的得到应用。 早期的较为流行的键盘/显示器芯片8279,目前流行的键盘/显示器接口芯片均采用串行通信方式,占用口线少。常见的芯片有:周立功公司的ZLG7289A、ZLG7290B、MAX7219、南京沁恒公司的CH451、HD7279和BC7281等。,10.3 键盘/显示器接口设计实例,专用接口芯片CH451实现的键盘/显示器控制 1. 基本功能与引脚介绍 内部集成数码管显示驱动和键盘扫描控制的专用键盘/显示器接口芯片。内置RC振荡电路,可以直接动态驱动8位LED数码管(或者64只LED),可实现显示数字左移、右移、左循环、右循环、各位显示数字独立闪烁等功能。内置大电流驱动级,段电流不小于30mA,字电流不小于160mA,并有16级亮度控制功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 列车火灾应急处置措施培训
- 2026年中医耳鼻喉科虚火上炎型鼻衄健康宣教试题及答案
- 小儿重症肺炎的护理
- 2026年预算管理会计招聘笔试题库及完整答案
- 矿山安全操作规程培训
- 冲床保养与安全操作规程培训
- (2026年)康复医学科管理制度范本
- (2026年)学校防范电信诈骗工作总结范文
- 家庭财产赠与附加条件协议 附义务赠与书面范本
- 2025年河南省新乡市延津县四年级数学第二学期期末预测试题含解析
- 2024新版《药品管理法》培训课件
- 2024-2025学年小学信息技术(信息科技)三年级全一册义务教育版(2024)教学设计合集
- HG-T 2580-2022 橡胶或塑料涂覆织物拉伸强度和拉断伸长率的测定
- 鸳鸯蝴蝶派的文学传播
- 法考笔记-理论法笔记-马峰
- 第一单元 学会聆听音乐 课件-2023-2024学年高中音乐湘教版(2019)必修音乐鉴赏
- 新部编版语文四年级上册全册全套课件
- 李贤平-概率论基础-Chap1
- JJG 100-2003全站型电子速测仪
- 服饰配件设计1课件
- 兽用化学药品注册资料要求形式审查要点及常见问题课件
评论
0/150
提交评论