如何制作数码管显示程序

数码管英文名“display”

硬件

数码管位选电路图:

74HC245

数码管片选电路图:  

74LS138

74LC245芯片介绍

74CS138芯片介绍

百度:译码器管脚

软件

管脚定义:

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

38译码器管脚

 74HC245

display.c代码

#include "display.h"

u16 display_date[6];
u16 code smgduan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(u16 i)	//延时函数
{
	while(i--);
}

void function_display(int b)  //数码管显示的提取数值
{
	display_date[1]=smgduan[b/10000];
	display_date[2]=smgduan[b%10000/1000];
	display_date[3]=smgduan[b%1000/100];
	display_date[4]=smgduan[b%100/10];
	display_date[5]=smgduan[b%10];
}

void display_1()			   //数码管显示
{
	u16 i;
	for(i=1;i<=5;i++)
	{
	switch(i)
	{
		case(1):
			LSA=1;LSB=1;LSC=1;break;
		case(2):
			LSA=0;LSB=1;LSC=1;break;
		case(3):
			LSA=1;LSB=0;LSC=1;break;
		case(4):
			LSA=0;LSB=0;LSC=1;break;
		case(5):
			LSA=1;LSB=1;LSC=0;break;
	}
		P0=display_date[i];
		delay(100);
		P0=0x00;
	}
}

void display(int date)		   //数码管显示集成函数
{
   function_display(date);
   display_1();
}

特点

特点封装库函数,使用起来简单,方便

详情可到github:GitHub - handsome0119/display.GitHub.io

猜你喜欢

转载自blog.csdn.net/m0_51351657/article/details/120623327