数码管动态显示——74HC04

Posted zhai1997

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数码管动态显示——74HC04相关的知识,希望对你有一定的参考价值。

1、电路设计:

技术图片

 

 p0实现段选,p2实现位选,74hc04是反相器,有反向和放大的双重作用。

2、程序设计:

#include<reg52.h>
code unsigned char seven_seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};    
sbit P2_0 = P2^0;
sbit P2_1 = P2^1;
sbit P2_2 = P2^2;
sbit P2_3 = P2^3;
sbit P2_4 = P2^4;
sbit P2_5 = P2^5;
void delay(unsigned int x){
while(x--);
}
int main(){
    while(1){
        P2 = 0x01;P0 = seven_seg[0];delay(300);    
        P2 = 0x02;P0 = seven_seg[1];delay(300);
        P2 = 0x04;P0 = seven_seg[2];delay(300);
        P2 = 0x08;P0 = seven_seg[3];delay(300);    
        P2 = 0x10;P0 = seven_seg[4];delay(300);
        P2 = 0x20;P0 = seven_seg[5];delay(300);
        P2 = 0x40;P0 = seven_seg[6];delay(300);
        P2 = 0x80;P0 = seven_seg[7];delay(300);

    }
}

3、运行结果:

技术图片

 

 静态显示虽然具有亮度高(有持续电压)的优点,但是浪费引脚。动态显示虽然节省了引脚但是亮度较低,完成基本的显示功能还是没问题的。

本实验通过p2口实现循环段选,每一位数字实现轮流显示。

以上是关于数码管动态显示——74HC04的主要内容,如果未能解决你的问题,请参考以下文章

Arduino UNO + 74HC595联级+数码管实现00-99循环计数显示+ Proteus仿真

Arduino UNO + 74HC595联级+数码管实现0000-9999循环计数显示+ Proteus仿真

Arduino UNO + 74HC595联级+数码管实现000-999循环计数显示+ Proteus仿真

Arduino UNO + 74HC595+数码管实现0-9循环计数显示+ Proteus仿真

Arduino 74HC595驱动数码管0-9循环显示+Proteus仿真

利用74HC138译码器实现数码管显示