0
点赞
收藏
分享

微信扫一扫

C51之数码管

_鱼与渔_ 2022-03-15 阅读 163

在这里插入图片描述

//静态数码管
#include "reg51.h"

typedef unsigned char u8;
typedef unsigned int u16;

sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;

u8 code smgduan[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71, 0x00};  
//将共阴数码管表储存储在一个数组里面


void main()
{
	LSA=0;
	LSB=0;
	LSC=0;
	P0=smgduan[0];
}	 
//动态数码管
#include "reg51.h"


typedef unsigned char u8;
typedef unsigned int u16;

sbit LSA=P2^2; 
sbit LSB=P2^3;
sbit LSC=P2^4;

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

void delay(u16 i)
{
	while(i--);
}

void Dongtai()
{
	u8 i;
	for(i=0;i<8;i++)
	{
		switch(i)
		{
			case(0):
				LSA=1;LSB=1;LSC=1;break;
			case(1):
				LSA=0;LSB=1;LSC=1;break;
			case(2):
				LSA=1;LSB=0;LSC=1;break;
			case(3):
				LSA=0;LSB=0;LSC=1;break;
			case(4):
				LSA=1;LSB=1;LSC=0;break;
			case(5):
				LSA=0;LSB=1;LSC=0;break;
			case(6):
				LSA=1;LSB=0;LSC=0;break;
			case(7):
				LSA=0;LSB=0;LSC=0;break;

		}
		P0=smgduan[i];
		delay(100);
		P0=0x00;
	}
}

void main()
{

	while(1)
	{
		Dongtai();
	}
}	 
举报

相关推荐

0 条评论