80C51 数码管动态显示0~7

发布时间: 2024-08-21
来源: 电子工程世界

所使用的开发板 普中科技HC6800-ES V2.0


PC:win7 64位


编译软件: keil uversion2


烧写工具: 普中科技开发的PZ-ISP V1.82


烧写方式:热烧写


#include 'reg52.h'


typedef unsigned char u8;

typedef unsigned int u16;


//P2引脚的2 3 4 片选数码管

sbit LSA=P2^2;

sbit LSB=P2^3;

sbit LSC=P2^4;


//变量保存在flash里面 共阴数码管表

u8 code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; 


void delay(u16 i)

{

while(i--);

}


void digDisplay()

{

u8 i;

for(i=0;i<8;i++)

{

switch(i)

{

case(0): LSC=0;LSB=0;LSA=0;

break;

case(1): LSC=0;LSB=0;LSA=1;

break;

case(2): LSC=0;LSB=1;LSA=0;

break;

case(3): LSC=0;LSB=1;LSA=1;

break;

case(4): LSC=1;LSB=0;LSA=0;

break;

case(5): LSC=1;LSB=0;LSA=1;

break;

case(6): LSC=1;LSB=1;LSA=0;

break;

case(7): LSC=1;LSB=1;LSA=1;

break;

}

P0=smgduan[i];

delay(100);

P0=0x00;

}

}


void main()

{

while(1)

{

digDisplay();

}

}


文章来源于: 电子工程世界 原文链接

本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。