版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、湖南理工学院信息与通信工程学院电子信息教研室制作单片机原理及接口技术单片机原理及接口技术主编:张毅刚主编:张毅刚 主讲:主讲: 张毅刚张毅刚湖南理工学院信息与通信工程学院电子信息教研室制作第第10 10章章 AT89C51与输入外设和输出外设与输入外设和输出外设的接口设计的接口设计 大多数单片机应用系统,都要配置输入外设和输出外设。常见的输入外设有键盘、BCD码拨盘等;常见的输出外设有LED显示器、LCD显示器、打印机等。 本章介绍AT89C51单片机与各种输入外设和输出外设的接口电路设计以及软件编程。湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示
2、原理 LED(Light Emitting Diode):发光二极管的缩写。 常用的LED显示器为8段(或7段,8段比7段多了一个小数点“dp”段),每一段对应一个发光二极管。 LED显示器有共阳和共阴两种,如图所示。对于共阴极,a、b、c、d、e、f、g、dp为高电平时点亮;对于共阳极,为低电平时点亮。10.1.1 LED显示器的结构显示器的结构101要接地要接电源湖南理工学院信息与通信工程学院电子信息教研室制作 为使LED显示不同的符号或数字,要为LED提供段码(字型码)。分析共阴极LED显示器段码,当引脚为高电平时,LED发光。显示 dp g f e d c b a 段码0 0 1 1
3、1 1 1 13FH0 0 0 0 0 1 1 006H0 1 0 1 1 0 1 15BHabcdefg012 数字电路中有七段显示译码器,就是将输入端十进制数代码进行译码,输出abcdefg点亮LED显示器的各段,显示对应的数码。10.1 LED显示器的显示原理显示器的显示原理 10.1.1 LED显示器的结构显示器的结构dp g f e d c b a湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 10.1.1 LED显示器的结构显示器的结构显示字符显示字符共阴极段码共阴极段码共阳极段码共阳极段码显示字符显示字符共阴极段码共阴极段码共阳极
4、段码共阳极段码03FHC0Hc39HC6H106HF9Hd5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HT31HCEH707HF8Hy6EH91H87FH80HH76H89H96FH90HL38HC7HA77FH88H“灭灭”00HFFHb7CH83H表10-2 LED段码(8段)湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 图10-2是4位 LED显示器的结构原理图。10.1.2 LED显示器工作原理显示器工作原理N个LED显示块有N位位选线和8N根
5、段码线。 段码线段码线控制显示的字型,位选线位选线控制该显示位的亮或暗。LED显示器具有静态显示静态显示和动态显示动态显示两种显示方式。位选线要接地或电源才能显示。湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 1. LED静态显示方式静态显示方式 各个数码管的公共端连在一起公共端连在一起(共阴极接地、共阳极接+5V)。 各个数码管的段码线(段码线(adp)分别控制)分别控制。 如图单片机通过82C55与3个共阴极数码管静态显示电路。10.1.2 LED显示器工作原理显示器工作原理06H3FH7FH端口地址控制口:7FFFHPA口: 7CFFH
6、PB口: 7DFFHPC口: 7EFFH湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 查表程序,根据显示数据查找对应段码查表程序,根据显示数据查找对应段码MOVDPTR,#SEGTAB;段码存放首址MOVA,R0;读显示数据MOVC A,A+DPTR;找到对应段码 SEGTAB:DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 07H, 7FH, 10.1.2 LED显示器工作原理显示器工作原理30H08H31H 00H32H 00H33H 02H2000H 3FH 0的显示码2001H 06H 1的显示码2002H 5BH
7、2的显示码2003H 4FH 3的显示码2004H 40H 4的显示码2005H 66H 5的显示码2006H 6DH 6的显示码2007H 07H 7的显示码2008H 7FH 8的显示码DPTR 2000HA 08H7FH湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 静态显示程序静态显示程序汇编语言汇编语言DISP:MOVR0,#30H;显示数据存放单元指针MOVR7,#3;3位显示MOVDPTR,#7FFFH;82C55控制口MOVA,#80HMOVX DPTR,A;82C55的2组均为方式0输出MOVB,#7CH; 82C55A口高地
8、址DISP1:MOVDPTR,#SEGTAB;段码存放首址MOVA,R0;读显示数据MOVC A,A+DPTR;找到对应段码MOVDPH,BMOVDPL,#0FFHMOVX DPTR,A;输出段码INCR0;为下一显示准备INCB;为下一显示准备DJNZR7,DISP1SEGTAB:DB3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 10.1.2 LED显示器工作原理显示器工作原理湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 静态显示程序静态显示程序C语言语言#include#include#define uc
9、har unsigned char#define cmd8255 XBYTE0 x7fff/ 82C55的控制端口地址0 x7fff #define PA8255 XBYTE0 x7cff/ 82C55的PA口地址0 x7ffc #define PB8255 XBYTE0 x7dff/ 82C55的PB口地址0 x7ffd#define PC8255 XBYTE0 x7eff/ 82C55的PC口地址0 x7ffeuchar code table16=0 x3f, 0 x06, 0 x5b, 0 x4f, 0 x66, 0 x6d, 0 x7d, 0 x07, 0 x7f, 0 x6f, 0
10、x77, 0 x7c, 0 x39, 0 x5e, 0 x79, 0 x71 ; /共阴极数码管段码表10.1.2 LED显示器工作原理显示器工作原理湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 静态显示程序静态显示程序C语言语言void display(b1,b2,b3)/ 显示函数uchar b1,b2,b3 PA8255=tableb1; / 段码从PA口输出 PB8255=tableb2;/ 段码从PB口输出 PC8255=tableb3; / 段码从PC口输出void main( ) cmd8255=0 x80;/ 控制字使82C5
11、5的2组均为方式0输出 ; display(a1,a2,a3);/ 调显示函数,显示a1,a2,a3 ;10.1.2 LED显示器工作原理显示器工作原理湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 2. LED动态显示方式动态显示方式 所有段码线相应段并在一起,由一个8位I/O口控制,形成段码线多路复用,各位公共端分别由相应I/O线控制,形成各位分时选通。 如图所示,4位8段LED动态显示电路。其中段码线占用一个8位I/O口,而位选线占用一个4位I/O口。10.1.2 LED显示器工作原理显示器工作原理 某一时刻,只有一位LED被选通显示,其
12、余位则是熄灭的。 由于LED的余辉和人眼的“视觉暂留”作用,只要每位显示间隔足够短,造成“多位同时亮”的假象。人眼看到的是4位稳定同时显示的字符。湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 10.1.1 LED显示器的结构显示器的结构P0.0P0.6P1.0P1.3动态显示动态显示2008输出“8”的段码FFH;输出位显示码FEH; 选通第1位。输出“0”的段码3FH;输出位显示码FDH; 选通第2位。输出“0”的段码3FH;输出位显示码FBH; 选通第3位。输出“2”的段码5BH;输出位显示码F7H; 选通第4位。FFH003FH005B
13、H人眼看到的是4位稳定同时显示的字符。共阴极湖南理工学院信息与通信工程学院电子信息教研室制作10.1 LED显示器的显示原理显示器的显示原理 动态显示程序动态显示程序DISP:MOVR0,#30H;显示数据存放单元指针MOVR7,#4;4位显示MOVDPTR,#SEGTAB;段码存放首址MOVB,#0FEH;先显示最低位DISP1:MOVA,R0;读显示数据MOVC A,A+DPTR;找到对应段码MOVP1,#0FFH;都不亮MOVP0,A;P0口输出段码MOVP1,B;点亮对应位LEDLCALL DELEY;延时INCR0;为下一显示准备MOVA,BRLAMOVB,ADJNZR7,DISP1
14、SJMPDISPSEGTAB:DB3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H 10.1.2 LED显示器工作原理显示器工作原理 如果由单片机控制动态显示,占用时间较多,所以常由显示显示芯片芯片控制动态显示。湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理1. 键盘输入的特点键盘输入的特点键盘:一组按键开关的集合。行线电压信号通过键盘开关机械触点的断开、闭合而变化,其输出波形如图10-6。10.2.1 键盘输入应解决的问题键盘输入应解决的问题2. 按键的确认按键的确认检测行线电平 高电平:断开;低电平低电平:闭合。3.如何消除按
15、键的抖动如何消除按键的抖动常用软件来消除按键抖动。基本思想:基本思想:检测到键对应的行线为低,软件延时10ms后,行线如仍为低,则确认该行有键按下。检测到键对应的行线变高,软件延时10ms后,行线仍为高,则确认按键已松开。湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理1.独立式键盘接口独立式键盘接口 各键相互独立,每个按键各接一根输入线,通过检测输入线的电平状态可很容易判断那个键被按下。 此种接口适于键数较少或操作速度较高的场合。10.2.2 键盘接口的工作原理键盘接口的工作原理&湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理
16、键盘接口原理82C55扩展I/O口的独立式按键接口电路。10.2.2 键盘接口的工作原理键盘接口的工作原理PA口A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0PA0PA1PA2PA3PA4PA5PA6PA77FFCH湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理2. 行列式行列式(矩阵式矩阵式)键盘接口键盘接口由行线和列线组成,按键位于行、列的交叉点上。如图10-9所示。用于按键数目较多的场合,行列式键盘与独立式键盘相比,要节省很多的I
17、/O口线。10.2.2 键盘接口的工作原理键盘接口的工作原理如图8根I/O线,独立式键盘只能8个键,行列式键盘可以16个键。(1). 行列式键盘工作原理行列式键盘工作原理无键按下,该行线为高电平,当有键按下时,行线电平由列线的电平来决定。由于行、列线为多键共用,各按键彼此将相互发生影响,必须将行、列线信号配合起来并作适当的处理,才能确定闭合键的位置。湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理(2). 按键的识别方法按键的识别方法. 扫描法扫描法以图10-9 中3号键被按下为例,来说明此键时如何被识别出来的。10.2.2 键盘接口的工作原理键盘接口的工作原
18、理识别键盘哪键被按下,分两步进行:第1步:识别键盘有无键按下;识别键盘有无键按下;所有列线置0,检查各行线电平是否=0,=0,说明该行有键按下,0,则说明无该行键按下。3号键按下,行1=0。确定按下键在行行1。第2步:如有键被按下,识别出具体的按键。如有键被按下,识别出具体的按键。采用扫描法,即先把某一列置低电平,其余各列为高电平,检查有键按下的行线电平,如果为低,可确定此行列交叉点处的按键被按下。 3号键被按下,只有列4=0时,行1=0。确定按下键在列列4。0 0 0 000湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理. 线反转法线反转法 只需两步便能获
19、得此按键所在行列值,线反转法原理如图。第1步:列线输出,行线输入列线输出,行线输入列线输出为全低电平,则检测=0的行线,为按键所在行。第2步:行线输出,列线输入行线输出,列线输入行线输出为全低电平,则检测=0的列线,为按键所在列。结合上述两步,可确定按键所在行和列。10.2.2 键盘接口的工作原理键盘接口的工作原理1步:输出P1 =F0H,输入P1 =E0H;确定按下键在行1;2步:输出P1 =0FH,输入P1=0EH;确定按下键在列4;000011110111000001111111湖南理工学院信息与通信工程学院电子信息教研室制作10.2 键盘接口原理键盘接口原理 单片机应用系统中,单片机在
20、忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式。键盘的工作方式的选取应根据实际应用系统中单片机的忙、闲情况而定。原则:原则:即要保证及时响应按键操作,又不要过多占用单片机工作时间。 通常,键盘工作方式有3种,即编程扫描、定时扫描和中断扫描。1. 编程扫描方式编程扫描方式 只有当单片机空闲时,才调用键盘扫描子程序扫描键盘。2. 定时扫描方式定时扫描方式 利用单片机内的定时器,产生10ms的定时中断,对键盘进行扫描。3. 中断扫描方式中断扫描方式 只有在键盘有键按下时,才执行键盘扫描程序,如无键按下,单片机将不理睬键盘。10.2.3 键盘的工作方式键盘的工作方式湖南理工学院信息与通信
21、工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例 在单片机应用系统设计中,一般把键盘和显示器放在一起考虑。 当单片机串口未作它用时,可用串口来外扩键盘/显示器。应用串口方式0的输出方式,外扩移位寄存器74LS164,构成键盘/显示器接口,硬件接口电路如图10-11。 图10-11所示的8个74LS164:74LS164(0)74LS164(7)作为8位LED的段码输出口实现静态显示,每一个74LS164驱动一个LED显示器,74LS164输出“0”时,允许通过8mA电流,故不必加驱动电路。 与动态显示相比,静态静态显示方式亮度大,显示不闪烁;且单片机不需要频繁
22、地为显示服务,提高了工作效率,软件设计比较简单。10.3.1 利用串行口实现利用串行口实现 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例P3.3 = 0时,与门输入为0,禁止同步移位脉冲向74LS164(07)输出。输出数据不驱动显示。10.3.1 利用串行口实现利用串行口实现 显示控制键盘扫描00湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例显示电路分析:P3.3=1,驱动显示,TXD的送到74164的8脚CP端。向串口写入1个字节后,经移位送到74LS164(0)。幻灯片
23、100向串口写入8个字节后,经移位送到8个74LS164。驱动对应LED显示。10.3.1 利用串行口实现利用串行口实现 最先写入的字节100011001湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例显示子程序设计思路显示子程序设计思路10.3.1 利用串行口实现利用串行口实现 78H 02H79H 00H7AH 01H7BH 01H7CH 00H7DH 05H 7EH 03H7FH 00H显示数据显示电路示意图R0初始时,R0=7FH,取出00H,找到0的显示码C0H输出;(R0)1R0,取出03H,找到3的显示码B0H输出;最终显示
24、:20110530在送数过程中,显示混乱,但时间很短。码表 01 2 3 4SEGTAB:DB 0C0H,0F9H,0A4H,0B0H,99HC0HB0HR0A4HC0HF9HF9HC0H92HB0HC0H湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例显示子程序:显示子程序:DIR: SETBP3.3; P3.3=1, 允许TXD引脚脉冲输出驱动显示 MOVR7,08H; 送出的段码个数, R7为段码个数计数器 MOVR0,7FH; 7FH78H为显示数据缓冲区MOVDPTR,#SEGTABDL0: MOV A,R0; 取出要显示的数送
25、AMOVC A,ADPTR; 查段码表SEGTAG, 取出段码 MOV SBUF ,A; 将段码送SBUF,输出段码, DL1: JNB TI,DL1; 查询TI, 1个字节的段码输出完否? CLR TI; 1个字节的段码输出完, 清TI标志 DEC R0; 指向下一个显示数据单元 DJNZ R7,DL0; 8个段码是否送完, 未完继续送段码 CLR P3.3; 8个段码输出完毕, 关闭显示器输出 RET ; 返回SEGTAB:DB 0C0H,0F9H,0A4H,0B0H,99H ; 共阳极段码表, 0,1,2,3,4 10.3.1 利用串行口实现利用串行口实现 湖南理工学院信息与通信工程学院
26、电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例键盘电路分析:P3.3=0,扫描键盘时不影响显示。确定按键状态:P3.4、P3.5作为两行键的行状态输入线。 向串口写入1个全0字节后,检测P3.4、P3.5,若有一个为“0”,表示有键按下。确定是哪个键按下:分别输出各列为“0”,找出按下的键。10.3.1 利用串行口实现利用串行口实现 1 1 1 1 1 1 1 0 FEH1 1 1 1 1 1 0 1 FDH注意:键值1行:0、1、2、3、4、5、6、72行:8、9、10、11、12、0123456715 14 13 1211 10 9 8湖南理工学院信息与通信工程
27、学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例键盘扫描子程序键盘扫描子程序:KEYI: MOV A,00H; 判断有无键按下,所有列线为0的编码送A MOV SBUF,A; (8)号74LS164输出为00H, 使所有列线为0KL0: JNB TI,KL0; 串行输出完否? CLR TI; 串行输出完毕, 清TIKL1: JNB P3.4,PK1 ; 第一行有闭合键吗?如有, 跳PK1进行处理 JB P3.5,KL1 ; 第二行键中有闭合键吗?无闭合键跳KL1PK1: ACALL DL10; 调用延时10ms子程序DL10, 软件消除抖动 JNB P3.4,PK
28、2; 判断是否由抖动引起? JB P3.5,KL1PK2: MOV R7,08H; 不是抖动引起的 MOV R6,0FEH ; 判别是哪一个键按下, FEH为最右一列为低 MOV R3,00H; R3为列号寄存器 10.3.1 利用串行口实现利用串行口实现 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例 MOV A,R6KL5: MOV SBUF,A; 列扫描码从串行口输出KL2: JNB TI,KL2; 等待串行口发送完 CLR TI; 串行口发送完毕, 清TI标志 JNB P3.4,PKONE; 读第一行线状态, 一行有按键, 跳P
29、KONE JB P3.5,NEXT; 读第二行线状态, 是第二行某键否? MOV R4,08H; 第二行键有键被按下, 行首键号08H送R4 AJMP PK3PKONE:MOV R4,00H; 第一行键中有键按下, 行首键号00H送R4PK3: MOV SBUF,00H; 等待键释放, 发送00H使所有列线为低KL3: JNB TI,KL3 CLR TI; 发送完毕, 清标志KL4: JNB P3.4,KL4; 判行线状态 JNB P3.5,KL410.3.1 利用串行口实现利用串行口实现 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 键盘键盘/显示器接口设计实例显示器接口设计实例
30、MOV A,R4; 两行线均为高, 说明键已释放 ADD A,R3; 计算得键码A RETNEXT: MOV A,R6 ; 列扫描码左移一位, 判下一列键是否按下 RL A MOV R6,A; 记住列扫描码于R6中 INC R3; 列号增1 DJNZ R7,KL5; 列计数器R7减1, 8列键都检查完否? AJMP KEYI ; 8列键扫描完毕, 开始下一个键盘扫描周期DL10:MOV R7,0AH; 延时10ms子程序DL:MOV R6,0FFHDL6:DJNZ R6,DL6 DJNZ R7,DL RET10.3.1 利用串行口实现利用串行口实现 湖南理工学院信息与通信工程学院电子信息教研室
31、制作10.3 设计实例设计实例 目前已有各种专用的可编程的键盘/显示器接口芯片可供用户选择,同样也有各种显示器接口芯片可供用户选择。 采用专用键盘/显示器接口芯片,用户可省去编写键盘/显示器动态扫描程序的烦琐工作,软件中只需对接口芯片中的各个控制寄存器进行正确的设置。 使用各种专用芯片的关键是弄懂芯片的使用方法。10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例 1各种键盘各种键盘/显示器专用芯片简介显示器专用芯片简介 目前专用的键盘/显示器接口芯片种类繁多,各具不同特点,总体趋势是并行
32、接口芯片逐渐退出历史舞台,串行接口芯片串行接口芯片越来越多的得到应用。 以前键盘与显示器设计的经典方案,是采用Intel公司于20世纪80年代推出的8279芯片。8279采用并行方式与单片机通信,占用多达13条的口线,对单片机系统造成了极大的浪费,故8279在今天已经渐渐淡出市场。 HD7279芯片功能强,具有一定的抗干扰能力,与单片机间采用串行通信,占用口线少,外围电路简单,具有较高的性能价格比。因此在键盘/显示器接口的设计中得到了较为广泛的应用。10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计
33、实例设计实例2专用键盘专用键盘/显示器芯片显示器芯片HD7279A简介简介 HD7279A能同时驱动8个共阴极LED数码管 ( 或64个独立的LED ) 和64 ( 8 8 ) 键的键盘矩阵,采用动态循环显示方式。芯片具有如下特点:. 与单片机间采用串行接口方式,仅占用4条口线,接口简单;. 内部含有译码器,可直接接收BCD码或十六进制码,同时具有两种译码方式,并可以控制每位LED显示器中任意一段是否发光;. 内部含有驱动器,可以直接驱动25.4mm及以下LED显示器;. 具有多种控制命令,实现多种功能,如消隐、闪烁等;. 含片选信号输入端,易实现多片HD7279共用;. 具有自动消除键抖动并
34、识别按键键值的功能。10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例(1). )引脚说明与电气特性)引脚说明与电气特性HD7279A芯片引脚如图所示。10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 位驱动输出端DIG0DIG7分别连接8只数码管的共阴极;段驱动输出端SASG、 DP分别连接至数码管的ag段和小数点dp的阳极。 DIG0DIG7和DP及SASG还分别是64键的键盘的列线和行线的端口,完成对键盘的译码和键值识别。88阵列中的每个键值可用读
35、键盘命令读出,键值范围是00H3FH。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 DIG7 DIG6 DIG5 DIG4 DIG3 DIG2 DIG1 DIG0DP及及SASGDIG0DIG7和和DP及及SASG与与LED显示器连接显示器连接L8 L7 L6 L5 L4 L3 L2 L1湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例引脚说明引脚说明引脚名称说明6CS片选信号,=0有效7CLK同步时钟输入端,有效8DATA串行数据写入/读出端9KEY按键信
36、号输出端1016SGSA LED的 ga段驱动输出17DP小数点驱动输出端1825DIG0DIG7 LED位驱动输出端26CLKO振荡输出端27RC RC振荡器连接端28RESET复位端, =0有效10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 湖南理工学院信息与通信工程学院电子信息教研室制作CS:片选信号,0有效。单片机访问HD7279A芯片(写入命令、显示数据、位地址、段地址或读出键值)时,应将 CS 置为低电平。DATA:串行数据端,当单片机向HD7279A芯片发送数据时,DATA为输入端;当单片机从HD7279A芯片读入键值时,DATA为输出端。10
37、.3 设计实例设计实例HD7279A与单片机连接仅需4条口线:CS,DATA,CLK和KEY。10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 CLK:数据串行传送的同步时钟输入端,时钟的上升沿上升沿将数据写入HD7279A中或从HD7279A中读出数据。KEY:按键信号输出端,在无键按下时为高电平,在有键按下时变为低电平,并且一直保持到该按下键至释放为止。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 (2). 控制命令介绍控制命令介绍控制命令由6条
38、纯命令、7条带数据命令和1条读键盘命令组成。. 纯命令纯命令(6条条)。所有纯命令都是1字节命令,说明如下。 命令命令 命令代码命令代码操作说明操作说明右移 A0H 所有LED右移1位,最左无显示,不改变属性左移 A1H 所有LED左移1位,最右无显示,不改变属性循环右移 A2H与右移类似,最右1位移至最左1位循环左移 A3H与左移类似,最左1位移至最右1位复位 A4H消除所有显示,消除消隐、闪烁等属性测试 BFH点亮全部LED,并处于闪烁状态,可用于自检消隐与闪烁湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现
39、键盘/显示器接口显示器接口 . 带数据命令带数据命令(7条条)。均由双字节组成,第1字节为命令标志码(有的还有位地址),第2字节为显示内容。a. 按方式按方式0译码显示命令译码显示命令此命令又称按方式0译码下载命令。 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 a2 a1 a0 dp d3 d2 d1 d0 命令中的a2、a1、a0表示LED数码管的位地址,即显示数据是送给哪一位LED的, a2a1a0 =000,表示显示数据是送给DIG0控制的位 ( 最低位 L1), a2a1a0 =i,送给DIGi
40、控制的位,见表10-6。 命令中的d3、d2、d1、d0为显示数据, HD7279A收到数据后,按表10-7所示的规则译码和显示。dp为小数点显示控制位,dp = 1时,小数点显示,dp = 0时,小数点不显示。命令中的为无影响位。 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 表10-7 方式0译码显示表d3d0LED d3d0LED十六进制数显示十六进制数显示 0H 0 8H 8 1H 1 9H 9 2H 2 AH 3H 3 BH E 4H 4 CH H 5H 5 DH L 6H
41、 6 EH P 7H 7 FH无显示无显示湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 按方式按方式0译码显示命令,译码显示命令,例如显示如图,写入方式0译码显示命令,第1字节80H,第二字节08H, D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 a2 a1 a0 dp d3 d2 d1 d0 1 0 0 0 0 0 0 0 0 1 0 0 0则DIG0控制的LED显示内容为8,小数点dp熄灭;GIG7 GIG6
42、GIG5 GIG4 GIG3 GIG2 GIG1 GIG0湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 b. 按方式按方式1译码显示命令译码显示命令又称方式1译码下载命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 1 0 0 1 a2 a1 a0 dp d3 d2 d1 d0 该命令和按方式0译码显示的含义基本相同,不同的是译码方式1时LED显示的内容与十六进制相对应,如表10-8所示。湖南理工学院信息与通
43、信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 按方式按方式1译码显示命令,译码显示命令,例如显示如图,写入方式1译码显示命令,第1字节C9H,第二字节0FH, D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 1 0 0 1 a2 a1 a0 dp d3 d2 d1 d0 1 1 0 0 1 0 0 1 0 1 1 1 1则DIG1控制的LED显示内容为F,小数点dp熄灭;GIG7 GIG6 GIG5 GIG4 GIG3 GIG2 GIG1 GIG0湖南
44、理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 c. 不译码显示命令不译码显示命令又称不译码下载命令。 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 1 0 a2 a1 a0 dp A B C D E F G 第2字节仍为LED显示内容,其中dp和AG分别代表LED的小数点和对应的段,当取值为1时,该段点亮;取值为0时,该段熄灭。湖南理工学院信息与通信工程学院电子信息教研室制作abcdefg10.3 设计实例
45、设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 不译码显示命令不译码显示命令,例如显示如图, 写入不译码译码显示命令,第1字节95H,第二字节3EH, D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 1 0 a2 a1 a0 dp A B C D E F G 1 0 0 1 0 1 0 1 0 0 1 1 1 1 1 0 则DIG5控制的LED显示内容为字符U,小数点dp熄灭;GIG7 GIG6 GIG5 GIG4 GIG3 GIG2 GIG1 GIG0湖南理工学院信息与通信工程学院电子信息
46、教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 d闪烁控制命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 1 0 0 0 d8 d7 d6 d5 d4 d3 d2 d1 该命令规定了每个LED数码管的闪烁属性,d8d1分别对应DIG7DIG0控制的数码管L8L1 ,第2字节的某位值为1时,对应的数码管不闪烁,值为0时,对应的数码管闪烁。 例如写入闪烁控制命令,第1字节88H,第二字节97H D7 D6 D5 D4 D3 D2 D1 D
47、0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 1 0 0 0 d8 d7 d6 d5 d4 d3 d2 d1 1 0 0 0 1 0 0 0 1 0 0 1 0 1 1 1 则数码管L7、L6、L4闪烁。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 例如显示如图, 写入闪烁控制命令,第1字节88H,第二字节97H D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 1 0 0 0 1 0 0 1 0 1
48、 1 1 则数码管L7、L6、L4闪烁。GIG7 GIG6 GIG5 GIG4 GIG3 GIG2 GIG1 GIG0湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 e消隐控制命令消隐控制命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 1 1 0 0 0 d8 d7 d6 d5 d4 d3 d2 d1 该命令规定了每个数码管的消隐属性。d8d1分别对应DIG7DIG0控制的数码管L8L1,其值为1时,
49、LED显示;值为0时, LED消隐。应注意至少要有一个LED数码管保持显示,如果全部消隐,则该命令无效。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 消隐控制命令,消隐控制命令,例如显示如图, 例如写入消隐控制命令,第1字节98H,第二字节81H 1 0 0 1 1 0 0 0 d8 d7 d6 d5 d4 d3 d2 d1 1 0 0 1 1 0 0 0 1 0 0 0 0 0 0 1 则数码管L7、L6、L5 、L4、L3 、L2消隐。GIG7 GIG6 GIG5 GIG4 GI
50、G3 GIG2 GIG1 GIG0湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 f段点亮命令段点亮命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 1 1 0 0 0 0 0 d5 d4 d3 d2 d1 d0 该命令的作用是点亮某个LED数码管中的某一段或独立的独立的64个个LED发光二极管中的某一个发光二极管中的某一个。主要针对独立的独立的64个个LED,d5d0取值为00H3FH,对应64个个LED,规
51、定00H07H对应L1的ga和dp, 08H0FH对应L2的ga和dp,。未指定点亮的LED保持原状不变。 例如写入段点亮命令,第1字节E0H,第二字节00H 1 1 1 0 0 0 0 0 d5 d4 d3 d2 d1 d0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 则点亮L1位LEDg段;若第二字节为10H,则点亮L3位LEDg段。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3
52、.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 g段关闭命令段关闭命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 1 0 0 0 0 0 0 d5 d4 d3 d2 d1 d0 该命令的作用是熄灭某个LED数码管中的某一段或独立的独立的64个个LED发光二极管中的某一个发光二极管中的某一个。d5d0取值为00H3FH,对应64个个LED,规定与段点亮命令相同。未指定关闭的LED保持原状不变。 例如写入段关闭命令,第1字节C0H,第二字节00H 1 1 0 0 0 0 0 0 d5 d4 d
53、3 d2 d1 d0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 则熄灭L1位LEDg段;若第二字节为10H,则熄灭L3位LEDg段。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 . 读取键盘命令读取键盘命令 第一字节 第二字节 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 1 0 1 0 1 d7 d6 d5 d4 d3 d2 d1 d0 读取键盘命令从HD7279A读出当前的按键值。命令的第一字节为
54、15H,是单片机写到HD7279A的是读键命令,而第二字节d7d0为从HD7279A中读出的按键值,其范围为00H3FH,表示64个按键值。 当有按键按下,KEY引脚从“1”变为“0”,并持续到按键释放为止期间,若HD7279A收到读键盘命令15H,则输出当前的按键值。应注意:HD7279A只能给出其中一个按下键的代码,不适合需要两个或两个以上键同时按下的场合。如果确实需要双键组合使用,可在单片机某位I/O引脚接一键,与HD7279A所连键盘共同组成双键功能。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/
55、显示器接口显示器接口 时序时序。HD7279A采用串行方式与单片机通信,串行数据从DATA引脚送入或输出,并与CLK端同步。当 CS 变为低电平后,DATA引脚上的数据在CLK脉冲上升沿上升沿作用下写入或读出HD7279A的数据缓冲器。(3). 命令时序命令时序a. 纯命令时序纯命令时序 单片机发出8个CLK脉冲,向HD7279A发出8位命令,DATA引脚最后为高阻态,如图所示。片选有效后,发出第1个的间隔表10-13给出了T1T8的数据50us8us8us湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显
56、示器接口显示器接口 b. 带数据命令时序带数据命令时序 单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;后8个向HD7279A传送8位显示数据,DATA引脚最后为高阻态,如图所示 8位指令与8位数据的间隔25us湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 c. 读键盘命令时序读键盘命令时序 单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;发送完之后DATA引脚为高阻态;后8个CLK由HD7279A向单片机返回8位按键值,DATA引脚为输出状态。最后一
57、个CLK脉冲下降沿将DATA引脚恢复为高阻态,如图10-15所示。 T625us8us8us5us最大值湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 3AT89C51与与HD7279A接口设计接口设计(1). 硬件接口电路硬件接口电路 AT89C51单片机与HD7279A的接口电路如图。 采用普通I/O口结合软件模拟串行接口时序的方法,完成串行接口功能。片选时钟数据按键信号湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD72
58、79A实现键盘实现键盘/显示器接口显示器接口 AT89C51与与HD7279A间数据交换间数据交换必须片选片选有效,才能数据交换。数据写入HD7279:要写入的1位数据从P1.2输出P1.1产生,该位写入7279KEY输出0,表示有键按下从HD7279读出键值:发出读键值命令之后P1.1产生,读1位延时8us左右,数据从DATA输出从P1.2读入AT89C51:MOVC,P1.2010P1.3=0,表示有键按下湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 图10-16是AT89C51
59、单片机与HD7279A的接口电路,外接振荡元件为典型值,89C51的晶振频率为12MHz。上电后,HD7279A大约经过1518ms的时间才进入工作状态,软件中延时25ms。 如图电路,单片机通过接至P1.3的KEY引线电平,查询判断是否有键按下。 如果使用中断方式时,该引脚应该接至单片机的外部中断输入端,同时应将中断触发控制位设置成下降沿有效触发方式;若设置成电平触发方式,则在按键时间较长时可引发多次中断申请问题。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显示器接口显示器接口 HD7279A控制显示
60、器时,应连接共阴极显示器。对于不使用的按键和显示器,可以不连接。省去的显示器或对显示器设置的消隐、闪烁属性,均不影响键盘的使用。 HD7279A采用动态循环扫描方式,如果采用的普通LED显示器亮度不够,则可采用高亮度或超高亮度的型号。需要说明的是,动态循环扫描是由由HD7279A自动控制自动控制,并不需要程序中进行处理。 除非不使用显示器,否则串联在DP及SASG引线上的200电阻不可省去。如果不使用键盘,图10-20中与键盘连接的10k电阻和100k电阻便可省去。湖南理工学院信息与通信工程学院电子信息教研室制作10.3 设计实例设计实例10.3.2 专用芯片专用芯片HD7279A实现键盘实现键盘/显
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 臭氧大自血疗法在重症监护中的应用
- 黑龙江省哈尔滨市香坊区2026年初三下学期第一次联考数学试题含解析
- 江西南昌市心远中学度重点中学2026年初三1月期末考前模拟数学试题文试题含解析
- 外科休克的病因与发病机制
- 肝衰竭患者的营养支持方案
- 胆管癌术后康复评估
- 脑卒中急救中的伦理问题
- 老年骨质疏松的护理策略
- 审计局红黑榜制度
- 商场招商绩效考核制度
- 2026年教育局思想政治工作科工作计划
- 2025年安徽卫生健康职业学院单招职业适应性测试试题及答案解析
- 医保村卫生室管理制度
- 陕西从优 秀村干部中考录乡镇公务员考试真题
- 2025年军事设施建设与管理规范
- 儿科学营养性vitD缺乏
- 《石油化工项目可行性研究投资估算编制办法》
- 2022上海金融信息产业发展报告
- 医院行风建设应知应会考核试题及答案
- 脱硝催化剂安装施工方案1026
- GB 24790-2009电力变压器能效限定值及能效等级
评论
0/150
提交评论