第7章LED数码显示器和键盘接口电路_第1页
第7章LED数码显示器和键盘接口电路_第2页
第7章LED数码显示器和键盘接口电路_第3页
第7章LED数码显示器和键盘接口电路_第4页
第7章LED数码显示器和键盘接口电路_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LED数码显示器和键盘接口电路

键盘和显示器是单片机应用系统中常用的输入输出装置。LED数码显示器是常用的显示器之一,下面介绍用单片机并行口设计LED数码显示电路和键盘电路的方法。11.LED显示器及其原理

LED有着显示亮度高,响应速度快的特点,最常用的是七段式LED显示器,又称数码管。七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组合成字符。常见LED的管脚排列见图(a)。其中COM为公共点,根据内部发光二极管的接线形式,可分成共阴极型图(b)和共阳极型图(c)。

7.1用并行口设计LED显示电路2abcdefgdp(a)(b)(c)cdedp12345678910abfgcomcomabcefabcdefgdpcomcomdg

7.1用并行口设计LED显示电路3001111113fhxgfedcbaabcdefgdpcdedp12345678910abfgcomcomabcefcomgLED数码管的g~a七个发光二极管因加正电压而发亮,因加零电压而不能发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码(段码),如显示”0”,字形码为3fh.d

7.1用并行口设计LED显示电路4abcdefgdp12345678910abfgcomcomabcefgxgfedcba0000011006h显示”1”,字形码为06h.d

7.1用并行口设计LED显示电路5显示”2”,字形码为5bh.dpcomabcdefgdpcde12345678910comcomabcefgxgfedcba010110115bhd

7.1用并行口设计LED显示电路6显示字符段符号十六进制代码dpgfedcba共阴共阳0123456789ABCDEFHP0000000000000000010011111011110111111000111011111011111010001010111111111011011011011110001101111111110100001111100111100100011011011111101011113FH06H5BH4FH66H6DH7DH07H7FH6FH77H7CH39H5EH79H71H76HF3HC0F9A4B0999282F880908883C6A1868EFFBF

7.1用并行口设计LED显示电路72.LED数码管的接口

数码管的接口有静态接口和动态接口。静态接口为固定显示方式,无闪烁,其电路可采用一个并行口接一个数码管,数码管的公共端按共阴或共阳分别接地或Vcc。这种接法占用接口多,如果PO口和P2口要用作数据线和地址线,仅用单片机的并行口就只能接二个数码管。也可以用串行接口的方法接多个数码管,使之静态显示。

动态接口采用各数码管循环轮流显示的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出(字形选择),另一接口完成各数码管的轮流点亮(数位选择)。

7.1用并行口设计LED显示电路8

例:如图是接有五个共阴极数码管的动态显示接口电路,用74LS373接成直通的方式作驱动电路,阴极用非门74LS04反相门驱动,字形选择由P1口提供,位选择P3口控制。当P3.0~P3.4轮流输出1时,五个数码管轮流显示。P1.7接开关,当开关打向位置“1”时,显示“12345”字样,当开关打向“2”时,显示“HELLO”字样。

7.1用并行口设计LED显示电路9

7.1用并行口设计LED显示电路10用汇编语言编程

ORG0000HMOVP3,#0;清显示TEST:SETBP1.7JBP1.7,DIR1;检测开关

MOVDPTR,#TAB1;开关置于1,‘12345’字形地址

SJMPDIRDIR1:MOVDPTR,#TAB2;开关置于2,“HELLO”字形地址DIR:MOVR0,#0;R0存字形表偏移量

MOVR1,#01;R1置数码表位选代码NEXT:MOVA,R0MOVCA,@A+DPTR;查字形码表1

MOVP1,A;送P1口输出

MOVA,R1

MOVP3,A;输出位选码

7.1用并行口设计LED显示电路11

ACALLDAY;延时

INCR0;指向下一位字形

RLA;指向下一位

MOVR1,A CJNER1,#20H,NEXT;五个数码管显示完?SJMPTEST DAY:MOVR6,#20;延时20ms子程序 DL2:MOVR7,#7DH DL1:NOP DJNZR7,DL1

DJNZR6,DL2

RETTAB1:db06H,5BH,4FH,66H,6DH;“1~5”的字形码TAB2:db76H,79H,38H,38H,3FH;“HELLO”的字形码

END

7.1用并行口设计LED显示电路12键盘是计算机系统中不可缺少的输入设备,当按键少时可接成线性键盘,当按键较多时,这样的接法占用口线较多。将按键接成矩阵的形式,可以节省口线,例如两个接口可按8*8的形式接64个按键。每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。每个按键的状态同样需变成数字量“0”和“1”,开关的一端通过电阻接Vcc(列)、而接地是通过程序输出数字“0”实现的。

7.2用并行口设计LED键盘电路13键盘处理程序的任务是:确定有无键按下;判哪一个键按下;键的功能是什么;还要消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接地(称行扫描),另一个并行口输入按键状态(称回馈信号,键盘的列值),由行扫描值和回馈信号共同形成键编码而识别按键、通过软件查表,查出该键的功能。也可由硬件编码器完成键的编码

7.2用并行口设计LED键盘电路14下图中,用8XX51的并行口P1接4×4矩阵键盘,以P1.0~P1.3作输出线,以P1.4~P1.7作输入线,键盘扫描程序的流程如图5.10所示。

7.2用并行口设计LED键盘电路15Y返回键编码读P1.3~P1.4值置行扫描初值扫描位从P1.0口输出P1口的高四位和低四位相或得键编码扫到最后一行?NN(有键)N开始P1.0~P1.3输出0延时去抖动P1.4~P1.7全为1?P1.4~P1.7全为1?YY(无键按下)该行有键按下?形成下一行扫描码N

7.2用并行口设计LED键盘电路16程序清单如下:ORG0000HTEST:MOVP1,#0F0H;P1.0~P1.3输出0,P1.4~P1.7输出1

MOVA,P1;读键盘,检测有无键按下ANLA,#0F0H;屏蔽P1.0~P1.3,检测P1.4~P1.7是否全为1

CJNEA,#0F0H,HAVE;P1.4~P1.7不全为1有键按下SJMPTEST;P1.4~P1.7全为1,无键按下,重检测键盘HAVE:MOVA,#0FE;有键按下,逐行扫描键盘,置扫描初值NEXT:MOVB,A;扫描码暂存于BMOVP1,A;输出扫描码

7.2用并行口设计LED键盘电路17

READ:MOVA,P1;读键盘ANLA,#0F0H;屏蔽P1.0~P1.3,检测P1.4~P1.是否全为1CJNEA,#0F0H,YES;P1.4~P1.7不全为1该行有键按下MOVA,B;被扫行无键按下,准备查下一行RLA;置下一行扫描码CJNEA,#0EFH,NEXT;未扫到到最后一行循环YES:ACALLDELAY;延时去抖动AREAD:MOVA,P1;再读键盘ANLA,#0F0H;屏蔽P1.0~P1.3,保留P1.4~1.7(列码)MOVR2,A;暂存列码MOVA,BANLA,#0FH;取行扫描码ORLA,R2;行码、列码合并为键编码YES1:MOVB,A;键编码存于BLJMPSAM;转键分析处理程序SAM:………RETDELAY:………..RETEND

7.2用并行口设计LED键盘电路18

例如图中的“a”键,当行扫描值sccode=FEH=11111110B,读入列值到P1口和F0H相与即保留高四位读入值,屏蔽了低四位,再和0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论