⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 led.c

📁 51的万年历程序
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "reg51.h"
#include "intrins.h"
typedef unsigned char uint8;
typedef unsigned int uint16;
#define LED_Y P2
#define LCD_DATA 1
#define LCD_COMMAND 0
#define WORDNUU 11
sbit Ser_STB=P2^5;
sbit LED_EN=P2^4;
sbit LCD_RS=P1^5;
sbit LCD_RW=P1^6;
sbit LCD_EN=P1^7;
sbit RTC_SDA=P3^6;
sbit RTC_SCL=P3^5;
sbit RTC_RST=P3^4;
sbit KEY1=P1^0;
sbit KEY2=P1^1;
sbit KEY3=P1^2;
sbit KEY4=P1^3;
sbit DQ=P1^4;
uint8 TEMP_ERR;
#define  LCD_PORT P0
uint8 WORDNUM,WORDNUMBER;
uint8 Temp_Value;
uint8 LCD_NO;
uint16 i1,i2;
uint8 bdata AA;
sbit AA7 = AA^7;
#define READ_SECOND     0x81
#define WRITE_SECOND    0x80
#define READ_MINE       0x83
#define WRITE_MINE      0x82
#define READ_HOUR       0x85
#define WRITE_HOUR 		0x84
#define READ_DAY		0x87
#define WRITE_DAY		0x86
#define READ_MONTH		0x89
#define WRITE_MONTH		0x88
#define READ_WEEK		0x8b
#define WRITE_WEEK		0x8a
#define READ_YEAR       0x8d
#define WRITE_YEAR		0x8c
uint8 DATE[16];
uint8 TIME[16];

uint8 const code HZ[][32]=
{
	{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
	{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/

{0xFD,0xFF,0xFE,0xFF,0x80,0x01,0xBE,0xFB,0x7E,0xF7,0xFE,0xFF,0x80,0x03,0xFC,0x7F,0xFA,0x7F,0xFA,0xBF,0xF6,0xDF,0xEE,0xEF,0xDE,0xF1,0xBE,0xFB,0xFE,0xFF,0xFF,0xFF},/*"宋",0*/

{0xDF,0xFF,0xEE,0xEF,0xEE,0xEF,0x76,0xEF,0xB4,0x03,0xAE,0xEF,0xEE,0xEF,0xEE,0xEF,0xDE,0xEF,0xD0,0x01,0x1E,0xDF,0xDE,0xEF,0xDD,0xF7,0xDD,0xF3,0xDB,0xFB,0xD7,0xFB},/*"洪",1*/

{0xFB,0xBF,0xFB,0xBF,0xFB,0xBF,0xFB,0xBB,0xBB,0xB9,0xDB,0xB3,0xDB,0xB7,0xEB,0xAF,0xE3,0xAF,0xEB,0x9F,0xFB,0xBF,0xFB,0xBF,0xFB,0xBB,0x00,0x01,0xFF,0xFF,0xFF,0xFF},/*"业",2*/

{0xEF,0xFF,0xEE,0x07,0xEE,0xF7,0x02,0x07,0xEE,0xF7,0xEE,0x07,0xE7,0xFF,0xC8,0x03,0xAF,0xBF,0x6D,0xBF,0xED,0x83,0xED,0xBF,0xE9,0xBF,0xEA,0x3F,0xA7,0x81,0xDF,0xFF},/*"提",3*/

{0xFF,0xFF,0x01,0x03,0xD7,0x7B,0xD7,0x03,0x01,0x7B,0x55,0x03,0x55,0xDF,0x55,0x5F,0x51,0x03,0x3C,0xDF,0x01,0xDF,0x7D,0x03,0x7D,0xDF,0x01,0xDF,0x7E,0x01,0xFF,0xFF},/*"醒",4*/

{0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0x00,0x01,0xFE,0xFF,0xFD,0x7F,0xFD,0x7F,0xFD,0xBF,0xFB,0xBF,0xFB,0xDF,0xF7,0xEF,0xEF,0xE7,0xDF,0xF1,0xBF,0xFB},/*"大",5*/

{0xFD,0xFF,0xFE,0xFF,0xC0,0x01,0xBF,0xFB,0xA0,0x17,0xFE,0xFF,0xFD,0xFF,0xF0,0xDF,0x8D,0x4F,0xFB,0x3F,0xE6,0x3F,0x99,0x4F,0xE7,0x71,0x9F,0x7B,0xFA,0xFF,0xFD,0xFF},/*"家",6*/

{0xFF,0xFF,0x00,0x07,0xED,0xF7,0xED,0xB7,0xED,0xB7,0xED,0xB7,0x81,0xB7,0xED,0xB7,0xED,0xB7,0xED,0x57,0xE3,0x5F,0x1E,0xDD,0xFE,0xDD,0xFD,0xDD,0xFB,0xE1,0xF7,0xFF},/*"现",7*/

{0xFD,0xFF,0xFD,0xFF,0x80,0x01,0xFB,0xFF,0xFB,0xFF,0xF7,0xBF,0xE7,0xBF,0xE8,0x03,0xCF,0xBF,0xAF,0xBF,0x6F,0xBF,0xEF,0xBF,0xEF,0xBF,0xE8,0x01,0xEF,0xFF,0xFF,0xFF},/*"在",8*/

{0xFF,0xFF,0xF0,0x0F,0xF7,0xEF,0xF0,0x0F,0xF7,0xEF,0xF0,0x0F,0xFF,0xFF,0x00,0x01,0xFE,0xFF,0xF6,0xFF,0xF6,0x07,0xF6,0xFF,0xEA,0xFF,0xDC,0xFF,0xBF,0x01,0xFF,0xFF},/*"是",9*/
	{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
	{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
	0x55,0xaa,
};
uint8 const code NUM[][16]=
{
	{0xFF,0xFF,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0xBD,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,0xFF},/*"0",0*/
	{0xFF,0xFF,0xFF,0xEF,0x8F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0x83,0xFF,0xFF},/*"1",1*/
	{0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xBD,0xFB,0xFB,0xF7,0xEF,0xDF,0xBD,0x81,0xFF,0xFF},/*"2",2*/
	{0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xFB,0xE7,0xFB,0xFD,0xFD,0xBD,0xBB,0xC7,0xFF,0xFF},/*"3",3*/
	{0xFF,0xFF,0xFF,0xFB,0xF3,0xEB,0xDB,0xDB,0xBB,0xBB,0x81,0xFB,0xFB,0xE1,0xFF,0xFF},/*"4",4*/
	{0xFF,0xFF,0xFF,0x81,0xBF,0xBF,0xBF,0xA7,0x9B,0xFD,0xFD,0xBD,0xBB,0xC7,0xFF,0xFF},/*"5",5*/
	{0xFF,0xFF,0xFF,0xE3,0xDB,0xBF,0xBF,0xA7,0x9B,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,0xFF},/*"6",6*/
	{0xFF,0xFF,0xFF,0x81,0xBB,0xBB,0xF7,0xF7,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xFF,0xFF},/*"7",7*/
	{0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xBD,0xDB,0xE7,0xDB,0xBD,0xBD,0xBD,0xC3,0xFF,0xFF},/*"8",8*/
	{0xFF,0xFF,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0xD9,0xE5,0xFD,0xFD,0xDB,0xC7,0xFF,0xFF},/*"9",9*/
};
uint8 const code DATETMP[][32]=
{
	{0xF7,0xFF,0xF0,0x03,0xEF,0x7F,0xEF,0x7F,0xDF,0x7F,0xB0,0x07,0x77,0x7F,0xF7,0x7F,0xF7,0x7F,0xF7,0x7F,0x00,0x01,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F},/*"年",0*/
	{0xF8,0x0F,0xFB,0xEF,0xFB,0xEF,0xFB,0xEF,0xF8,0x0F,0xFB,0xEF,0xFB,0xEF,0xFB,0xEF,0xF8,0x0F,0xFB,0xEF,0xF7,0xEF,0xF7,0xEF,0xEF,0xEF,0xDF,0xAF,0xBF,0xDF,0xFF,0xFF},/*"月",1*/
	{0xFF,0xFF,0xE0,0x0F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE0,0x0F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE0,0x0F,0xEF,0xEF,0xFF,0xFF,0xFF,0xFF},/*"日",2*/
	{0xFE,0xFF,0xFE,0xFF,0xFE,0x07,0xFE,0xFF,0xFE,0xEF,0xE0,0x07,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE0,0x0F,0xEF,0xEF,0xFE,0xEF,0xD7,0x77,0xDB,0xBB,0xBB,0xBB,0xFF,0xFF},/*"点",3*/
	{0xF7,0x7F,0xF3,0x7F,0xF7,0xBF,0xEF,0xDF,0xEF,0xCF,0xDF,0xE7,0xBF,0xF1,0x60,0x1B,0xFB,0xDF,0xFB,0xDF,0xFB,0xDF,0xFB,0xDF,0xF7,0xDF,0xEF,0x5F,0xDF,0xBF,0xBF,0xFF},/*"分",4*/
	{0xFF,0xFF,0xE0,0x07,0xEF,0xF7,0xE0,0x07,0xEF,0xF7,0xE0,0x07,0xFE,0xFF,0xEE,0xFF,0xE0,0x03,0xDE,0xFF,0xDE,0xFF,0xB0,0x07,0xFE,0xFF,0xFE,0xFF,0x80,0x01,0xFF,0xFF},/*"星",5*/
	{0xDD,0xFF,0xDD,0x83,0x80,0xBB,0xDD,0xBB,0xC1,0xBB,0xDD,0x83,0xC1,0xBB,0xDD,0xBB,0xDD,0xBB,0x00,0x83,0xFF,0xBB,0xDB,0x7B,0xDD,0x7B,0xBC,0xEB,0x7E,0xF7,0xFF,0xFF},/*"期",6*/
	{0xE0,0x07,0xFE,0xFF,0x80,0x01,0xBE,0xFB,0xE2,0x8F,0xFE,0xFF,0xE2,0x8F,0xFD,0x7F,0xFB,0x9F,0xE5,0xE1,0x1E,0xF7,0xE0,0x1F,0xFF,0xBF,0xFD,0x7F,0xFE,0xFF,0xFE,0xFF},/*"零",7*/
	{0xFF,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0x07,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFB,0x80,0x01,0xFF,0xFF},/*"上",8*/
	{0xD8,0x03,0xDE,0xEF,0xDE,0x0F,0x06,0xEF,0xDE,0x0F,0xD6,0xE3,0xC8,0x0F,0x9F,0xEF,0x50,0x41,0xDB,0x5D,0xDC,0xEB,0xDE,0xF7,0xDD,0x67,0xDB,0x99,0x56,0x7B,0xBF,0xFF},/*"摄",9*/
	{0xFF,0xFF,0xFF,0x07,0xC0,0xFF,0xDE,0xFF,0xDE,0xFF,0xDE,0xFF,0xC0,0x03,0xDF,0x7F,0xDF,0x7F,0xDF,0x7F,0xDF,0xBF,0xDF,0xBF,0xDB,0xDB,0xD7,0xEB,0xCF,0xF3,0xDF,0xFB},/*"氏",10*/
	{0xFE,0xFF,0xFF,0x7F,0xC0,0x01,0xDD,0xDF,0xDD,0xDF,0xD0,0x03,0xDD,0xDF,0xDC,0x1F,0xDF,0xFF,0xD8,0x07,0xDD,0xEF,0xDE,0xDF,0xDF,0x3F,0xBE,0xCF,0xB9,0xF1,0x67,0xFB},/*"度",11*/
} ;
uint8 const code WEEK[][32]=
{
	{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0x80,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"一",0*/
	{0xFF,0xFF,0xFF,0xEF,0xC0,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0x80,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"二",1*/
	{0xFF,0xFF,0xFF,0xFF,0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0xFF,0xFF},/*"三",2*/
	{0xFF,0xFF,0x80,0x03,0xBB,0x7B,0xBB,0x7B,0xBB,0x7B,0xBB,0x7B,0xBB,0x7B,0xBB,0x7B,0xB7,0x7B,0xB7,0x83,0xAF,0xFB,0x9F,0xFB,0xBF,0xFB,0x80,0x03,0xBF,0xFB,0xFF,0xFF},/*"四",3*/
	{0xFF,0xFF,0x80,0x07,0xFD,0xFF,0xFD,0xFF,0xFD,0xFF,0xFD,0xFF,0xFD,0xDF,0xC0,0x0F,0xFB,0xDF,0xFB,0xDF,0xFB,0xDF,0xFB,0xDF,0xFB,0xDB,0x00,0x01,0xFF,0xFF,0xFF,0xFF},/*"五",4*/
	{0xFB,0xFF,0xFC,0xFF,0xFE,0x7F,0xFE,0xFF,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFB,0x7F,0xF9,0xBF,0xFB,0xDF,0xF7,0xEF,0xF7,0xE7,0xEF,0xF3,0xDF,0xF3,0xBF,0xF7,0xFF,0xFF},/*"六",5*/
	{0xFF,0xFF,0xE0,0x0F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE0,0x0F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE0,0x0F,0xEF,0xEF,0xFF,0xFF,0xFF,0xFF},/*"日",6*/
};
void TEMP_Delay(uint16 i)
{
	while(i--);
}
void TEMP_INITIALIZE()
{
	DQ=1;
	TEMP_Delay(8);
	DQ=0;
	TEMP_Delay(80);
	DQ=1;
	TEMP_Delay(14);
	TEMP_ERR=DQ;
	TEMP_Delay(20);
}

uint8 TEMP_Read_Char()
{
	uint8 i;
	uint8 dat;
	for(i=0;i<8;i++)
	{
		DQ=0;
		dat>>=1;
		DQ=1;
		if(DQ)
		dat|=0x80;
		TEMP_Delay(4);
	}
	return dat;
}

void TEMP_Write_Char(uint8 dat)
{
	uint8 i;
	for(i=0;i<8;i++)
	{
		DQ=0;
		DQ=dat&0x01;
		TEMP_Delay(5);
		DQ=1;
		dat>>=1;
	}
}

void TEMP_Read()
{
	uint8 a,b;
	TEMP_INITIALIZE();
	TEMP_Write_Char(0xcc);
	TEMP_Write_Char(0x44);
	TEMP_Delay(100);
	TEMP_INITIALIZE();
	TEMP_Write_Char(0xcc);
	TEMP_Write_Char(0xbe);
	TEMP_Delay(100);
	a=TEMP_Read_Char();
	b=TEMP_Read_Char();
	Temp_Value=b<<4;
	Temp_Value+=(a&0xf0)>>4;
}

void RTC_Write(uint8 dat)
{
	uint8 i;	  
	for(i=0;i<8;i++)
	{
		RTC_SDA=(bit)(dat&0x01);
		RTC_SCL=1;
		RTC_SCL=0;
		dat>>=1;
	}
}

uint8 RTC_Read()						
{
    uint8 i;
    for(i=0; i<8; i++)
    {
        AA >>=1;         			//相当于汇编中的 RRC 
        AA7 = RTC_SDA;
        RTC_SCL = 1;
        RTC_SCL = 0;
    } 
    return AA; 
}

void RTC_Write_Byte(uint8 addr,uint8 dat)
{
	RTC_RST=0;
	RTC_SCL=0;
	RTC_RST=1;
	RTC_Write(addr);
	RTC_Write(dat);
	RTC_SCL=1;
	RTC_RST=0;
}

uint8 RTC_Read_Byte(uint8 addr)
{
	uint8 dat;
	RTC_RST=0;
	RTC_SCL=0;
	RTC_RST=1;
	RTC_Write(addr|0x01);
	dat=RTC_Read();
	RTC_SCL=1;
	RTC_RST=0;
	return dat;
}


typedef struct __SYSTEMTIME__
{
	uint8  Second;
	uint8  Mine;
	uint8  Hour;
	uint8  Day;
	uint8  Month;
	uint8  Week;
	uint8  Year;
}SYSTEMTIME;
static SYSTEMTIME TIMETYPE;

void CurrentTime(SYSTEMTIME *dat)
{
	uint8 TimeValue;
	TimeValue=RTC_Read_Byte(READ_SECOND);
	dat->Second=(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_MINE);
	dat->Mine=  (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_HOUR);
	dat->Hour=  (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_DAY);
	dat->Day=	(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_MONTH);
	dat->Month= (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_WEEK);
	dat->Week=	(TimeValue&0x0f);
	TimeValue=RTC_Read_Byte(READ_YEAR);
	dat->Year=	(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
}
bit LCD_BUSY()
{
	bit result;
	LCD_RS=0;
	LCD_RW=1;
	LCD_EN=1;
	_nop_();
	_nop_();
	result=(bit)(LCD_PORT&0x80);
	LCD_EN=0;
	return result;
}
void LCD_Write(uint8 dat,uint8 type)
{
	uint8 i;
	while((LCD_BUSY()&&i<100)){i++;}
	if(i>99)LCD_NO=1;
	LCD_RS=type;
	LCD_RW=0;
	LCD_EN=0;
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	LCD_PORT=dat;
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	LCD_EN=1;
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	LCD_EN=0;
}
void LCD_INITIALIZE()
{
	LCD_Write(0x06,LCD_COMMAND);
	LCD_Write(0x38,LCD_COMMAND);
	LCD_Write(0x0c,LCD_COMMAND);
	LCD_Write(0x01,LCD_COMMAND);
}	
void LCD_Prints(uint8 *dat,uint8 add)
{
	LCD_Write(add|0x80,LCD_COMMAND);
	while(*dat!='\0')LCD_Write((*(dat++)),LCD_DATA);
}
void et0() interrupt 1 using 0
{
	static uint8 i;
	TH0=0xf3;
	TL0=0xf3;
	TR0=1;
	i++;
	if(i==22)
	{
		i=0;
		WORDNUMBER++;
	}
}
void KEY_Delay()
{
	uint8 i,j;
	for(i=0;i<200;i++)
	for(j=0;j<200;j++);
}
void SET_YEAR()
{
	uint8 YEAR[3];
	LCD_Prints("  YEAR SETTING  ",0);
	LCD_Prints("  YEAR:20       ",0x40);
	if((!KEY3)&&(TIMETYPE.Year<80)){KEY_Delay();i1=i2=0;TIMETYPE.Year++;}
	else if(TIMETYPE.Year>79)TIMETYPE.Year=0;
	if((!KEY4)&&(TIMETYPE.Year>0)){KEY_Delay();i1=i2=0;TIMETYPE.Year--;}
	YEAR[0]=(TIMETYPE.Year/10)+'0';
	YEAR[1]=(TIMETYPE.Year%10)+'0';
	YEAR[2]='\0';
	LCD_Prints(YEAR,0x49);
}			
void SET_MONTH()
{
	uint8 MONTH[3];
	LCD_Prints("  MONTH SETTING ",0);
	LCD_Prints("  MONTH:        ",0x40);
	if((!KEY3)&&(TIMETYPE.Month<13)){KEY_Delay();TIMETYPE.Month++;i1=i2=0;}
	else if(TIMETYPE.Month>12)TIMETYPE.Month=1;
	if((!KEY4)&&(TIMETYPE.Month>1)){KEY_Delay();TIMETYPE.Month--;i1=i2=0;}
	MONTH[0]=(TIMETYPE.Month/10)+'0';
	MONTH[1]=(TIMETYPE.Month%10)+'0';
	MONTH[2]='\0';
	LCD_Prints(MONTH,0x48);
}
void SET_DAY()
{
	uint8 DAY[3];
	LCD_Prints("  DAY SETTING   ",0);
	LCD_Prints("  DAY:          ",0x40);
	if((!KEY3)&&(TIMETYPE.Day<32)){KEY_Delay();TIMETYPE.Day++;i1=i2=0;}
	else if(TIMETYPE.Day>31)TIMETYPE.Day=1;
	if((!KEY4)&&(TIMETYPE.Day>1)){KEY_Delay();TIMETYPE.Day--;i1=i2=0;}
	DAY[0]=(TIMETYPE.Day/10)+'0';
	DAY[1]=(TIMETYPE.Day%10)+'0';
	DAY[2]='\0';
	LCD_Prints(DAY,0x46);
}
void SET_WEEK()

⌨️ 快捷键说明

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