数码管.c

来自「单片机C源程序+HEX文件。配合实验板。需要的话加Q:394011495.并注明」· C语言 代码 · 共 55 行

C
55
字号

//数码管八位从0亮到F,间隔约为1S。

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint i,j;
uchar k,duantable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0xff};
sbit rclk=P1^4;
sbit srclk=P1^7;
sbit ser=P1^5;
sbit beep=P3^4;
void delay(uint x)
{
	uint a,b;
	for(a=x;a>0;a--)
		for(b=113;b>0;b--);
}
main()
{
   while(1)
   {
	for(j=0;j<17;j++)
	{
		k=0x00;
		for(i=0;i<8;i++)
		{
			k=k<<1;
			srclk=0;
			ser=CY;
			srclk=1;
		}

		k=duantable[j];
		for(i=0;i<8;i++)
		{
			srclk=0;
			ser=k&0x80;
			k=k<<1;
			srclk=1;

		}
		rclk=0;
		rclk=1;
		beep=0;
		delay(50);
		beep=1;
		delay(1000);
	}
   }

	while(1);
		
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?