数码管动态显示
Posted 皓霂dc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数码管动态显示相关的知识,希望对你有一定的参考价值。
文章目录
蓝桥杯开发板原理图
对硬件基础知识可参考前文:蓝桥杯单片机组硬件原理
一、实验原理
7段显示译码器是纯组合电路,一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限,但其控制简单,使有也方便。发光二极管的阳极连在一起的称为共阳极数码管,阴极连在一起的称为共阴极数码管,如上图所示。
设输入的4位码为A[3:0],不考虑表示小数点的发光管,输出控制7段共阳数码管的7位数据为LED7S[6:0],输出信号LED7S的7位分别接上图(b)中共阳数码管的7个段,控制端置0使数码管点亮,控制端置1使数码管不亮。
字型 | 输入A | g | f | e | d | c | b | a |
---|---|---|---|---|---|---|---|---|
0 | 0000 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0001 | 1 | 1 | 1 | 1 | 0 | 0 | 1 |
2 | 0010 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
3 | 0011 | 0 | 1 | 1 | 0 | 0 | 0 | 0 |
4 | 0100 | 0 | 0 | 1 | 1 | 0 | 0 | 1 |
5 | 0101 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
6 | 0110 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
7 | 0111 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
8 | 1000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
9 | 1001 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
A | 1010 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
B | 1011 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
C | 1100 | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
D | 1101 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
E | 1110 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
F | 1111 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
高位在左,低位在右,例如当LED7S输出“0010010”时,数码管的7个段g、f、e、d、c、b、a分别接0、0、1、0、0、1、0;接有低电平的段发亮,如下图2所示,于是数码管显示“5”.
1.共阳极数码管编码表:
unsigned char table[]=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;
2.共阴极数码管编码表:
unsigned char table[]=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;
二、蓝桥杯数码管
共阳接法-高电平是暗、低电平是亮hgfedcba-显示C则11000110*0xc6
代码如下(示例):
uchar code tab[]=0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0XBF,0XFF;
uchar code dot[]=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;
uchar shu[8] = 0,0,0,0,11,11,11,11;
uchar num;
void display(void)
P2 = (P2&0x1f|0xe0);P0 = 0xff;P2 &= 0x1f; //数码管消隐
P2 = (P2 & 0x1f|0xc0);
P0 = (1<<num);P2 &= 0x1f; //位选控制
P2 = (P2 & 0x1f|0xe0);
P0 = tab[shu[num]];P2 &= 0x1f; //段选输入
num++;if(num==8)num=0;
void timer0() interrupt 1
display();
注:后面加using 1会报错
总结
后续再对数码管基本原理进行补充,本文主要针对蓝桥杯重点知识论述,如有疑问可联系小编^ o_o ^
以上是关于数码管动态显示的主要内容,如果未能解决你的问题,请参考以下文章
已知共阳极8段LED数码管的显示数字的字形码如下(求详解!)