zhai1997

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口实现循环段选,每一位数字实现轮流显示。

分类:

技术点:

相关文章:

  • 2021-12-30
  • 2022-12-23
  • 2021-06-24
  • 2021-10-28
  • 2021-08-10
  • 2021-11-18
  • 2021-10-10
  • 2021-05-27
猜你喜欢
  • 2021-11-05
  • 2021-11-05
  • 2021-07-04
  • 2021-09-27
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案