📄 time.h~
字号:
#ifndef _TIME_ZHENGZUOWEI_H_
#define _TIME_ZHENGZUOWEI_H_
/*****************************************************
数组DS1302Data[12]为万年历时钟日期数据存储变量
依次为农历年高位,农历年低位,农历月份,农历日期,国历年高位,国历年低位,国历月份,国历日期,星期,小时,分钟,秒
noiseData[8]为闹钟数据
*****************************************************/
unsigned char DS1302Data[12];
unsigned char noiseData[8];
unsigned char setTimeData[8];
/*****************************************************
数组findLunar[200]为国历转农历的数据
农历月份数据,每年4字节,从2001年开始,共50年
数据解析:
如果第一字节的bit7为1,则该年1月1日位于农历12月,否则位于11月
第一字节去除bit7为该年1月1日的农历日期
第二字节 第三字节
bit: 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
农历月份:16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
农历月份指的是从该年1月1日的农历月份算起的顺序号
农历月份对应的bit为1则该月为30日,否则为29日
第四字节为闰月月份
*****************************************************/
flash char findLunar[200] =
{
0x87,0x2a,0x56,0x04,
0x12,0x14,0xae,0x00,
0x1d,0x29,0x6d,0x00,
0x8a,0x2a,0xb5,0x02,
0x15,0x15,0xaa,0x00,
0x82,0x36,0xaa,0x07,
0x0d,0x2e,0x93,0x00,
0x17,0x2d,0x26,0x00,
0x86,0x35,0x27,0x05,
0x11,0x2a,0x57,0x00,
0x1b,0x14,0xb6,0x00,
0x88,0x15,0x5a,0x04,
0x14,0x2a,0xb5,0x00,
0x81,0x2b,0x55,0x09,
0x0b,0x17,0x4a,0x00,
0x16,0x36,0x95,0x00,
0x84,0x3a,0x95,0x06,
0x0f,0x35,0x2b,0x00,
0x1a,0x32,0x57,0x00,
0x87,0x2a,0x5d,0x04,
0x12,0x15,0x5a,0x00,
0x1d,0x2a,0xd5,0x00,
0x8a,0x2b,0x65,0x02,
0x14,0x1b,0x4a,0x00,
0x82,0x1d,0x52,0x06,
0x0d,0x1c,0x95,0x00,
0x18,0x19,0x2d,0x00,
0x85,0x19,0x2e,0x05,
0x11,0x32,0xad,0x00,
0x1c,0x15,0x6b,0x00,
0x88,0x15,0xac,0x03,
0x13,0x2d,0xa5,0x00,
0x81,0x2e,0xa5,0x0b,
0x0b,0x2d,0x4a,0x00,
0x16,0x2c,0x96,0x00,
0x84,0x34,0x97,0x06,
0x10,0x29,0x2f,0x00,
0x1a,0x12,0xae,0x00,
0x87,0x0a,0xb6,0x05,
0x11,0x16,0xb4,0x00,
0x1d,0x2d,0xa9,0x00,
0x8a,0x36,0xa5,0x02,
0x15,0x36,0x4b,0x00,
0x82,0x3a,0x4b,0x07,
0x0e,0x34,0x97,0x00,
0x19,0x29,0x57,0x00,
0x86,0x29,0x5b,0x05,
0x10,0x12,0xda,0x00,
0x1c,0x16,0xd5,0x00,
0x88,0x1b,0x54,0x03
};
/*****************************************************
二维字符数组week[7][17]用于存放星期一到星期天的英文数据
*****************************************************/
flash char week[7][17]=
{
"WEEK: MONDAY",
"WEEK: TUESDAY",
"WEEK: WEDNESDAY",
"WEEK: THURSDAY",
"WEEK: FRIDAY",
"WEEK: SATURDAY",
"WEEK: SUNDAY"
};
/*****************************************************
数组solarData[17]、lunarData[17]、timeData[17]用于初始化显示
*****************************************************/
flash char solarData[17] = "SOLAR:20 - - "; // 用于存放阳历的数据
flash char lunarData[17] = "LUNAR:20 - - "; // 用于存放阴历的数据
flash char timeData[17] = "TIME: : : "; // 用于存放时间的数据
/*****************************************************
display1用于存放时间和星期的缓冲区数据
display2用于存放国历的缓冲区数据
display3用于存放农历的缓冲区数据
*****************************************************/
unsigned char display1[8];
unsigned char display2[8];
unsigned char display3[8];
void Change(void);
void DisplayOne(void);
void DisplayTwo(void);
unsigned int FindDataOfYear(void);
void FindDataOfWeek(void);
void SolarToLunar(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -