码迷,mamicode.com
首页 > 其他好文 > 详细

数码管动态显示——锁存器

时间:2019-10-05 00:54:43      阅读:393      评论:0      收藏:0      [点我收藏+]

标签:reg   img   高电平   电路设计   运行   数码   ima   sig   idt   

1、电路设计:

技术图片

 

 LE接P3.0来实现段选或位选,OE接地,当LE为高电平的时候,锁存器为通路。

2、程序设计:

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

3、运行结果:

技术图片

 

 以前需要两个端口来实现的显示功能,现在只需要一个P0口就可以实现数码管的显示,大大减少了端口的占用,电路的设计更加合理。

数码管动态显示——锁存器

标签:reg   img   高电平   电路设计   运行   数码   ima   sig   idt   

原文地址:https://www.cnblogs.com/zhai1997/p/11623650.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!