打印
[STM32F1]

STM32-4位数码管动态显示0~9999

[复制链接]
2288|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本章是基于STM32F1xx来写的四位数码管动态显示,通过定时器实现每秒加一。

LED数码管有两大类,一类是共阴极接法,另一类是共阳极接法,共阴极就是7段的显示字码共用一个电源的负极,是高电平点亮,共阳极就是7段的显示字码共用一个电源的正极,是低电平点亮。只要控制其中各段LED的亮灭即可显示相应的数字、字母或符号。
共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已,共阴为所有的LED负极接在一起,共阳为为所有的LED正极接在一起。

————————————————


5111564ea1d3b87502.png (167.62 KB )

5111564ea1d3b87502.png

使用特权

评论回复
沙发
米多0036|  楼主 | 2023-8-26 23:42 | 只看该作者
共阳极数码管编码表(0~F):
unsigned char code smg[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
共阴极数码管编码表(0~F):
unsigned char code smg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

使用特权

评论回复
板凳
米多0036|  楼主 | 2023-8-26 23:42 | 只看该作者
共阳极数码管编码表(0~F):
unsigned char code smg[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
共阴极数码管编码表(0~F):
unsigned char code smg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

使用特权

评论回复
地板
米多0036|  楼主 | 2023-8-26 23:42 | 只看该作者
Pproteus8进行

使用特权

评论回复
5
米多0036|  楼主 | 2023-8-26 23:43 | 只看该作者
数码管选段
uint8_t WEI_tab[]={0x0e,0x0d,0x0b,0x07};//1110,1101,1011,0111

使用特权

评论回复
6
米多0036|  楼主 | 2023-8-26 23:43 | 只看该作者
延迟函数
void delay(unsigned int ms)
{
   unsigned int i,j;
   for(i=ms;i>0;i--)
    for(j=150;j>0;j--);
}

使用特权

评论回复
7
米多0036|  楼主 | 2023-8-26 23:43 | 只看该作者
数码管显示代码
void display()
{
    unsigned int shi,ge,bai,qian;
        ge=Num%1000%100%10;;
        shi=Num%1000%100/10;
        bai=Num%1000/100;;
        qian=Num/1000;
                 GPIOC->ODR=(GPIOC->ODR & 0xfffff000) | SEG_tab_CC[ge] | WEI_tab[3]<<8;
            delay(20);
                  GPIOC->ODR=(GPIOC->ODR & 0xfffff000) | SEG_tab_CC[shi] | WEI_tab[2]<<8;
            delay(20);
                 GPIOC->ODR=(GPIOC->ODR & 0xfffff000) | SEG_tab_CC[bai] | WEI_tab[1]<<8;
            delay(20);
                GPIOC->ODR=(GPIOC->ODR & 0xfffff000) | SEG_tab_CC[qian] | WEI_tab[0]<<8;
                 delay(20);
}

使用特权

评论回复
8
ousj| | 2023-8-27 11:01 | 只看该作者
控制其中各段LED的亮灭即可显示相应的数字、字母或符号。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

98

主题

1336

帖子

0

粉丝