C51单片机学习---静态驱动数码管

静态驱动数码管

数码管结构

在这里插入图片描述
注意:dp(小黑点)要接在右下角

共阴极和共阳极

共阳:一个数码管阳极都接在一起,共一个VCC。阴极一个一个接线。(阳:0–亮)(COM=VCC)
共阴:一个数码管阴极都接在一起,共一个GND。阳极一个一个接线。(阳:1–亮)(COM=GND)
在这里插入图片描述

74HC573:增强电流
74LS38:3–8译码器

#define DIG_PORT PO //共阴---74HC573接PO端口
typedef unsigned char u8;//重命名类型,简化代码
sbit gA=P2^2;
sbit gB=P2^3;
sbit gC=P2^4;//定义全局变量

DIG-PORT=0x00//消隐

#include <reg52.h>
#include <intrins.h>
#define DIG_PORT  P0
sbit gA=P2^2;
sbit gB=P2^3;
sbit gC=P2^4;

unsigned char code gDuanMa[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
     0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void Delay(void);
void DigDisplay(void);
void delay800ms(void);
void main(void)
{
 while (1)
 {
  DigDisplay();
 }  
}
void DigDisplay(void)
{
unsigned char i=0;
gA=0;
gB=0;
gC=0;
for(i=0;o<16;i++)
{
DIG_PORT =gDuanMa[i];
delay800ms();
}
}
void delay800ms(void)   
{
    unsigned char a,b,c;
    for(c=95;c>0;c--)
        for(b=138;b>0;b--)
            for(a=29;a>0;a--);
    _nop_();  
    _nop_(); 
}
发布了42 篇原创文章 · 获赞 85 · 访问量 2308

猜你喜欢

转载自blog.csdn.net/weixin_44955712/article/details/103192568