📄 leddigital.c
字号:
#include "at89x52.h"
#include "LedDigital.h"
//*******数码管位选编码*****************************
code const uchar DigitalIndex[8]=
{0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
//*******数码管显示数据编码*************************
code const uchar DigitalValue[16]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//***************************************************
//显示缓冲区
uchar DisplayBuffer[8];
//显示数据位选指针
uchar DisplayPoint=0x00;
/***************************************************************************
名称:void LedDigitalTransport(long DigitalNumber)
功能:将要显示的长整形数据送入数码管显示缓冲区
***************************************************************************/
void LedDigitalTransport(long DigitalNumber)
{
uchar tmp=0x00;
for(tmp=0x00;tmp<0x08;tmp++)
{
DisplayBuffer[tmp]=DigitalValue[(DigitalNumber>>4*tmp)&0x0f];
}
}
/***************************************************************************
名称:void LedDigitalDisplay(void)
功能:将显示缓冲区的内容显示在数码管上
***************************************************************************/
void LedDigitalDisplay(void)
{
DisplayPoint%=8;
P1=DigitalIndex[DisplayPoint];
P0=DisplayBuffer[DisplayPoint];
DisplayPoint++;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -