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

📄 ds18b20+ds1320+lcd12864.c

📁 多功能太阳能热水器设计 硬件:AT89S52单片机
💻 C
📖 第 1 页 / 共 5 页
字号:
/****************************************************************************
*描述:多功能太阳能热水器设计                                               *
*硬件:AT89S52单片机,晶振为12MHz,KS0108驱动的128*64液晶                   *
*      SPI总线的DS1302时钟,1-WIRE温度传感器DS18B20。						*
*作者:李鲲鹏                                                               *                                                 
*文件:1602.c 															 	*             
*日期:2005-11-10                                                           *
*****************************************************************************
*描述:                                                                     *
****************************************************************************/

/****************************************************************************
头文件区
****************************************************************************/
#include<reg51.h>
#include<intrins.h>

/****************************************************************************
内存区定义
****************************************************************************/
sbit BF=P0^7; //12864
sbit DI=P2^0; 
sbit RW=P2^1;
sbit ENABLE=P2^2;
sbit CS1=P2^3;
sbit CS2=P2^4;
sbit TIMECLK=P1^0;	//DS1302
sbit TIMEDATA=P1^1; 
sbit TIMERST=P1^2;
sbit K1=P1^4; //三个按键
sbit K2=P1^5;
sbit K3=P1^6;
sbit LN1=P1^3; //水位控制端口
sbit LN2=P1^7;
sbit DQ=P3^3; //DS18b20*4
sbit DQ1=P3^0;
sbit DQ2=P3^1;
sbit DQ3=P3^2;
sbit HT=P3^4; //温度控制端口
sbit CR=P3^5;
sbit WT=P3^6;
sbit BUZZ=P3^7;//蜂鸣器

bit SCNF=1;	//秒闪烁标志位
bit tempflag;  //温度标志位

#define INIT_SECOND 0x00  //年月日星期时间初始值
#define INIT_MINUTE 0x00
#define INIT_HOUR 0x00
#define INIT_DAY 0x01
#define INIT_MONTH 0x01
#define INIT_WEEK 0x01
#define INIT_YEAR 0x00

unsigned char data SECOND; //年月日星期时间
unsigned char data MINUTE;
unsigned char data HOUR;
unsigned char data DAY;
unsigned char data MONTH;
unsigned char data WEEK;
unsigned char data YEAR;
unsigned char count=10; //计数器记数值
unsigned char RF1; //一路闹钟
unsigned char RF2; //二路闹钟
unsigned char MF=0;	//移位设置
unsigned char TMF=0;
unsigned char TPF=0;
unsigned char TRF=0;
unsigned char TN=0x60; //温度初始值
unsigned char n=0;  //音调
unsigned char year_lunar;
unsigned char month_lunar;
unsigned char day_lunar;

/****************************************************************************
函数声明
****************************************************************************/
void busyl(void);  //12864
void busyr(void);
void write_cmdl(unsigned char Commandaddr);
void write_datal(unsigned char Dataaddr);
void busyr(void);
void write_cmdr(unsigned char Commandaddr);
void write_datar(unsigned char Dataaddr);
void init_12864(void);
void clear(void);
void write_ascii(unsigned char x,unsigned char y,unsigned char time,bit fanhei);
void write_character(unsigned char x,unsigned char y,unsigned char *ptr,bit fanhei);
void write_week(unsigned char x,unsigned char y,unsigned char weektime,bit fanhei);
void write_ds1302(unsigned char Writeaddr,unsigned char Writedata);	//DS1302
unsigned char read_ds1302(unsigned char Readaddr);
void init_ds1302(void);
void readtime(void);
bit reset_ds18b20(void);  //DS18B20
unsigned char ds18b20(void);
void write_ds18b20(unsigned char value);
unsigned char read_temp(void);
void keyscanf(void);  //按键
void tempdisplay(void);
void ringdisplay(void);
void keyscanf1(void);
void timereset(void);
void ringreset(void);
void tempreset(void);
unsigned char turntobcd(unsigned char x,unsigned char y,unsigned char value,
                        signed char max,signed char min);
void sound(void);
void display1(void);
void display2(void);
void write_yearlunar(unsigned char x,unsigned char y,unsigned char lunar,bit tiandi);//公历
bit get_lunar_day(unsigned char month_p,unsigned int table_addr); 
void solartolunar(void);
void displaylunar(void);
void delayus(unsigned char i); //延时
void delayms(unsigned char j);
void delays(unsigned char k);
void initTimer0(void);
void Timer0(void);
void initTimer1(void);
void Timer1(void);

/****************************************************************************
表格
****************************************************************************/
unsigned char bcddis[6]; 
unsigned char code divdisplay[] =
{
    0x00,0x00,0x01,0x01,0x02,0x03,0x03,0x04,
	0x05,0x05,0x06,0x06,0x07,0x08,0x08,0x09
};

/****************************************************************************
ASCII字模的数据表
码表从0x20~0x7e                                                
字库: D:\学习软件\单片机小软件\字模提取\Asc8X16E.dat 纵向取模下高位
****************************************************************************/
unsigned char code nAsciiDot[] =              // ASCII
{
	0xF8,0xFC,0x04,0xC4,0x24,0xFC,0xF8,0x00,  // -0-
	0x07,0x0F,0x09,0x08,0x08,0x0F,0x07,0x00,

	0x00,0x10,0x18,0xFC,0xFC,0x00,0x00,0x00,  // -1-
	0x00,0x08,0x08,0x0F,0x0F,0x08,0x08,0x00,

	0x08,0x0C,0x84,0xC4,0x64,0x3C,0x18,0x00,  // -2-
	0x0E,0x0F,0x09,0x08,0x08,0x0C,0x0C,0x00,

	0x08,0x0C,0x44,0x44,0x44,0xFC,0xB8,0x00,  // -3-
	0x04,0x0C,0x08,0x08,0x08,0x0F,0x07,0x00,

	0xC0,0xE0,0xB0,0x98,0xFC,0xFC,0x80,0x00,  // -4-
	0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,

	0x7C,0x7C,0x44,0x44,0xC4,0xC4,0x84,0x00,  // -5-
	0x04,0x0C,0x08,0x08,0x08,0x0F,0x07,0x00,

	0xF0,0xF8,0x4C,0x44,0x44,0xC0,0x80,0x00,  // -6-
	0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00,

	0x0C,0x0C,0x04,0x84,0xC4,0x7C,0x3C,0x00,  // -7-
	0x00,0x00,0x0F,0x0F,0x00,0x00,0x00,0x00,

	0xB8,0xFC,0x44,0x44,0x44,0xFC,0xB8,0x00,  // -8-
	0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00,

	0x38,0x7C,0x44,0x44,0x44,0xFC,0xF8,0x00,  // -9-
	0x00,0x08,0x08,0x08,0x0C,0x07,0x03,0x00,

	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  // -.-
	0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x00,

	0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,  // -:-
	0x00,0x00,0x00,0x06,0x06,0x00,0x00,0x00,

	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  // - -
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

    0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,  // ---
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

/****************************************************************************
星期汉字字模表                                                          
星期汉字库: 宋体16.dot 纵向取模下高位,数据排列:从左到右从上到下         
****************************************************************************/
unsigned char code characterweek[] =                    // 数据表
{
      0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,// 一
      0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00,
      0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
      0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

      0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08,// 二
      0x08,0x08,0x08,0x0C,0x08,0x00,0x00,0x00,
      0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
      0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00,

      0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,// 三
      0x84,0x84,0x84,0xC4,0x86,0x04,0x00,0x00,
      0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
      0x20,0x20,0x20,0x20,0x20,0x30,0x20,0x00,

      0x00,0xFC,0x04,0x04,0x04,0xFC,0x04,0x04,// 四
      0x04,0xFC,0x04,0x04,0x04,0xFE,0x04,0x00,
      0x00,0x7F,0x20,0x28,0x24,0x23,0x20,0x20,
      0x20,0x21,0x22,0x22,0x22,0x7F,0x00,0x00,

      0x00,0x04,0x84,0x84,0x84,0x84,0xFC,0x84,// 五
      0x84,0x84,0x84,0xC4,0x86,0x84,0x00,0x00,
      0x40,0x40,0x40,0x40,0x78,0x47,0x40,0x40,
      0x40,0x40,0x40,0x7F,0x40,0x60,0x40,0x00,

      0x20,0x20,0x20,0x20,0x20,0x22,0x2C,0x38,// 六
      0x20,0x20,0x20,0x20,0x20,0x30,0x20,0x00,
      0x00,0x40,0x20,0x18,0x06,0x03,0x00,0x00,
      0x00,0x01,0x02,0x0C,0x38,0x70,0x00,0x00,

      0x00,0x00,0x00,0xFE,0x82,0x82,0x82,0x82,// 日
      0x82,0x82,0x82,0xFF,0x02,0x00,0x00,0x00,
      0x00,0x00,0x00,0x7F,0x20,0x20,0x20,0x20,
      0x20,0x20,0x20,0x7F,0x00,0x00,0x00,0x00,	
	  
	  0x00,0x00,0x00,0xFF,0x01,0x02,0x04,0x08,//闹钟图标
      0xF0,0x10,0x10,0x10,0xF0,0x00,0x00,0x00,
      0x00,0x00,0x00,0xFF,0x80,0x40,0x20,0x10,
      0x0F,0x08,0x08,0x08,0x0F,0x00,0x00,0x00,

	  0x00,0x00,0x00,0x18,0x18,0xF8,0xFE,0x0E,//加热图标
	  0x0E,0xFE,0xF8,0x18,0x18,0x00,0x00,0x00,
      0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0xC0,
	  0xC0,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00,

	  0x00,0x00,0x00,0xC8,0x64,0xFE,0x64,0x48,//进出水图标
	  0x44,0x68,0xFE,0x68,0xC4,0x00,0x00,0x00,
	  0x00,0x00,0x00,0x7F,0xF0,0xF3,0xF0,0xF0,
	  0xF0,0xF0,0xF3,0xF0,0x7F,0x00,0x00,0x00
};

// 汉字表:
// 一二三四五六日及几个图标

/****************************************************************************
汉字字模的数据结构定义
****************************************************************************/
typedef struct typFNT_GB16                 // 汉字字模数据结构
{
       signed char Index[2];               // 汉字内码索引
       char Msk[32];                       // 点阵码数据
};

/****************************************************************************
汉字字模表                                                          
汉字库: 宋体16.dot 纵向取模下高位,数据排列:从左到右从上到下         
****************************************************************************/
struct typFNT_GB16 code GB_16[] =          // 数据表
{
"年", 0x00,0x20,0x10,0xCC,0x47,0x44,0x44,0xFC,
      0x44,0x44,0x44,0x64,0x46,0x04,0x00,0x00,
      0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,
      0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,

"月", 0x00,0x00,0x00,0x00,0xFE,0x22,0x22,0x22,
      0x22,0x22,0x22,0xFF,0x02,0x00,0x00,0x00,
      0x00,0x80,0x40,0x30,0x0F,0x02,0x02,0x02,
      0x02,0x42,0x82,0x7F,0x00,0x00,0x00,0x00,

"日", 0x00,0x00,0x00,0xFE,0x82,0x82,0x82,0x82,
      0x82,0x82,0x82,0xFF,0x02,0x00,0x00,0x00,
      0x00,0x00,0x00,0x7F,0x20,0x20,0x20,0x20,
      0x20,0x20,0x20,0x7F,0x00,0x00,0x00,0x00,

"星", 0x00,0x00,0xBE,0x2A,0x2A,0x2A,0x2A,0xEA,
      0x2A,0x2A,0x2A,0x2A,0xBF,0x02,0x00,0x00,
      0x48,0x44,0x4B,0x49,0x49,0x49,0x49,0x7F,
      0x49,0x49,0x49,0x4D,0x49,0x61,0x40,0x00,

"期", 0x00,0x08,0xFF,0xA8,0xA8,0xA8,0xFF,0x08,
      0x00,0xFE,0x22,0x22,0x22,0xFF,0x02,0x00,
      0x84,0x44,0x37,0x04,0x04,0x14,0xA7,0x44,
      0x24,0x1F,0x02,0x42,0x82,0x7F,0x00,0x00,

"室", 0x10,0x0C,0x24,0x24,0xA4,0x64,0x25,0x26,
      0x24,0x24,0xA4,0x34,0x24,0x14,0x0C,0x00,
      0x00,0x40,0x40,0x49,0x49,0x49,0x49,0x7F,
      0x49,0x49,0x49,0x4B,0x60,0x40,0x00,0x00,

"温", 0x10,0x22,0x64,0x0C,0x80,0x00,0xFE,0x92,
      0x92,0x92,0x92,0x92,0xFF,0x02,0x00,0x00,
      0x04,0x04,0xFE,0x01,0x40,0x7E,0x42,0x42,
      0x7E,0x42,0x7E,0x42,0x42,0x7E,0x40,0x00,

"度", 0x00,0x00,0xFC,0x24,0x24,0x24,0xFC,0xA5,
      0xA6,0xA4,0xFC,0x24,0x34,0x26,0x04,0x00,
      0x40,0x20,0x9F,0x80,0x42,0x42,0x26,0x2A,
      0x12,0x2A,0x26,0x42,0x40,0xC0,0x40,0x00,

"热", 0x00,0x88,0x88,0x48,0xFF,0x48,0x28,0x08,
      0x48,0xFF,0x08,0x08,0xFC,0x08,0x00,0x00,
      0x80,0x60,0x04,0x08,0x27,0xC0,0x08,0x04,
      0x23,0xC0,0x01,0x00,0x27,0x48,0xC6,0x00,

"水", 0x00,0x20,0x20,0x20,0x20,0xE0,0x00,0xFF,
      0xC0,0x40,0x20,0x10,0x18,0x00,0x00,0x00,
      0x20,0x10,0x08,0x04,0x03,0x40,0x80,0x7F,
      0x00,0x01,0x02,0x04,0x08,0x18,0x08,0x00,

"箱", 0x40,0x48,0x44,0x43,0xF6,0x4A,0x43,0x0A,
      0xE4,0x23,0x26,0x2A,0x22,0xF3,0x22,0x00,
      0x20,0x10,0x0C,0x03,0xFF,0x02,0x04,0x00,
      0xFF,0x49,0x49,0x49,0x49,0xFF,0x00,0x00,

"管", 0x80,0x68,0x24,0xA3,0xA6,0xAA,0xA2,0xBA,
      0xA4,0xA3,0xA2,0xA6,0x2A,0xA2,0x60,0x00,
      0x00,0x00,0x00,0xFF,0x4A,0x4A,0x4A,0x4A,
      0x4A,0x4A,0x4A,0x7B,0x00,0x00,0x00,0x00,

"集", 0x20,0x10,0x08,0xFC,0x57,0x54,0x54,0xFD,
      0x56,0x54,0x54,0x56,0x04,0x00,0x00,0x00,
      0x04,0x44,0x44,0x27,0x15,0x0D,0x05,0xFF,
      0x05,0x0D,0x15,0x25,0x65,0x24,0x04,0x00,

"器", 0x80,0x80,0x9F,0x91,0x91,0x91,0x9F,0xE0,
      0x9F,0x91,0xB1,0xD1,0x9F,0xC0,0x80,0x00,
      0x08,0x08,0xFC,0x8C,0x8A,0x8A,0xF9,0x00,
      0xF9,0x8A,0x8A,0x8C,0xFC,0x08,0x08,0x00,

"闹", 0x00,0xF9,0x02,0x26,0x20,0x22,0x2A,0xF2,
      0x22,0x22,0xB2,0x22,0x02,0xFF,0x02,0x00,
      0x00,0xFF,0x00,0x00,0x1F,0x01,0x01,0x7F,
      0x01,0x11,0x1F,0x41,0x80,0x7F,0x00,0x00,

"钟", 0x80,0x40,0x70,0xCF,0x48,0x48,0x00,0xF0,
      0x10,0x10,0xFF,0x10,0x10,0xF8,0x10,0x00,
      0x02,0x02,0x02,0x7F,0x22,0x12,0x00,0x07,
      0x02,0x02,0xFF,0x02,0x02,0x07,0x00,0x00,

"设", 0x40,0x40,0x42,0xCC,0x00,0x40,0xA0,0x9F,
      0x81,0x81,0x81,0x9F,0xA0,0x20,0x20,0x00,
      0x00,0x00,0x00,0x7F,0xA0,0x90,0x40,0x43,
      0x2C,0x10,0x28,0x26,0x41,0xC0,0x40,0x00,

"置", 0x00,0x10,0x17,0xD5,0x55,0x57,0x55,0x7D,
      0x55,0x57,0x55,0xD5,0x17,0x10,0x00,0x00,
      0x40,0x40,0x40,0x7F,0x55,0x55,0x55,0x55,
      0x55,0x55,0x55,0x7F,0x40,0x60,0x40,0x00,

"返", 0x40,0x42,0x44,0xCC,0x00,0x00,0xFC,0x04,
      0xA4,0x24,0x24,0xA2,0x63,0x02,0x00,0x00,
      0x00,0x40,0x20,0x1F,0x20,0x58,0x87,0x90,
      0x88,0x85,0x82,0x85,0x88,0xD8,0x40,0x00,

"回", 0x00,0xFC,0x04,0x04,0x04,0xE4,0x24,0x24,
      0x24,0xF4,0x24,0x04,0x04,0xFE,0x04,0x00,
      0x00,0x7F,0x20,0x20,0x20,0x2F,0x24,0x24,
      0x24,0x2F,0x20,0x20,0x20,0x7F,0x00,0x00,

"时", 0x00,0xFC,0x84,0x84,0x84,0xFE,0x14,0x10,
      0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x00,
      0x00,0x3F,0x10,0x10,0x10,0x3F,0x00,0x00,
      0x00,0x23,0x40,0x80,0x7F,0x00,0x00,0x00,

"间", 0x00,0xF8,0x01,0x02,0xF6,0x10,0x12,0x12,
      0x12,0x12,0xFA,0x12,0x02,0xFF,0x02,0x00,
      0x00,0xFF,0x00,0x00,0x3F,0x11,0x11,0x11,
      0x11,0x11,0x3F,0x40,0x80,0x7F,0x00,0x00,

"路", 0x00,0xFE,0x42,0xC2,0x42,0x7F,0x12,0x08,
      0x8C,0x57,0x24,0x54,0x8C,0x84,0x80,0x00,
      0x40,0x7E,0x40,0x3F,0x22,0x22,0x01,0xFF,
      0x42,0x42,0x42,0x42,0x42,0xFF,0x02,0x00,

"开", 0x80,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,
      0x82,0x82,0xFE,0x82,0x83,0xC2,0x80,0x00,
      0x00,0x80,0x40,0x30,0x0F,0x00,0x00,0x00,
      0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,

"关", 0x00,0x10,0x10,0x11,0x12,0x1C,0x10,0xF0,
      0x10,0x18,0x14,0x13,0x1A,0x90,0x00,0x00,
      0x81,0x81,0x41,0x41,0x21,0x11,0x0D,0x03,
      0x0D,0x11,0x21,0x21,0x41,0xC1,0x41,0x00,

"定", 0x10,0x0C,0x04,0x24,0x24,0x24,0x25,0xE6,
      0x24,0x24,0x34,0x24,0x04,0x14,0x0C,0x00,
      0x80,0x40,0x20,0x1F,0x20,0x40,0x40,0x7F,
      0x42,0x42,0x43,0x42,0x40,0x60,0x20,0x00,

"到", 0x00,0x62,0x52,0x4A,0xC6,0x42,0x52,0x63,
      0xC2,0x00,0xF8,0x00,0x00,0xFF,0x00,0x00,
      0x40,0x42,0x42,0x42,0x7F,0x22,0x23,0x22,
      0x20,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00,

"℃", 0x00,0x06,0x09,0x09,0xE6,0xF0,0x18,0x08,
      0x08,0x08,0x18,0x30,0x78,0x00,0x00,0x00,
      0x00,0x00,0x00,0x00,0x07,0x0F,0x18,0x30,
      0x20,0x20,0x20,0x10,0x08,0x00,0x00,0x00	 
};

/****************************************************************************
音乐
****************************************************************************/
unsigned char code music_tab[] ={
       0x18, 0x30, 0x1C , 0x10, //格式为: 频率常数, 节拍常数, 频率常数, 节拍常数,
       0x20, 0x40, 0x1C , 0x10,
       0x18, 0x10, 0x20 , 0x10,
       0x1C, 0x10, 0x18 , 0x40,
       0x1C, 0x20, 0x20 , 0x20,
       0x1C, 0x20, 0x18 , 0x20,
       0x20, 0x80, 0xFF , 0x20,
       0x30, 0x1C, 0x10 , 0x18,
       0x20, 0x15, 0x20 , 0x1C,
       0x20, 0x20, 0x20 , 0x26,
       0x40, 0x20, 0x20 , 0x2B,
       0x20, 0x26, 0x20 , 0x20,
       0x20, 0x30, 0x80 , 0xFF,
       0x20, 0x20, 0x1C , 0x10,
       0x18, 0x10, 0x20 , 0x20,
       0x26, 0x20, 0x2B , 0x20,
       0x30, 0x20, 0x2B , 0x40,
       0x20, 0x20, 0x1C , 0x10,
       0x18, 0x10, 0x20 , 0x20,
       0x26, 0x20, 0x2B , 0x20,
       0x30, 0x20, 0x2B , 0x40,
       0x20, 0x30, 0x1C , 0x10,
       0x18, 0x20, 0x15 , 0x20,
       0x1C, 0x20, 0x20 , 0x20,
       0x26, 0x40, 0x20 , 0x20,
       0x2B, 0x20, 0x26 , 0x20,
       0x20, 0x20, 0x30 , 0x80,
       0x20, 0x30, 0x1C , 0x10,
       0x20, 0x10, 0x1C , 0x10,
       0x20, 0x20, 0x26 , 0x20,
       0x2B, 0x20, 0x30 , 0x20,
       0x2B, 0x40, 0x20 , 0x15,
       0x1F, 0x05, 0x20 , 0x10,
       0x1C, 0x10, 0x20 , 0x20,
       0x26, 0x20, 0x2B , 0x20,
       0x30, 0x20, 0x2B , 0x40,
       0x20, 0x30, 0x1C , 0x10,
       0x18, 0x20, 0x15 , 0x20,
       0x1C, 0x20, 0x20 , 0x20,
       0x26, 0x40, 0x20 , 0x20,
       0x2B, 0x20, 0x26 , 0x20,
       0x20, 0x20, 0x30 , 0x30,
       0x20, 0x30, 0x1C , 0x10,
       0x18, 0x40, 0x1C , 0x20,
       0x20, 0x20, 0x26 , 0x40,
       0x13, 0x60, 0x18 , 0x20,
       0x15, 0x40, 0x13 , 0x40,
       0x18, 0x80, 0x00
};

/*****************************************************************************
公历年对应的农历数据,每年三字节,
格式第一字节BIT7-4 位表示闰月月份,值为0 为无闰月,BIT3-0 对应农历第1-4 月的大小
第二字节BIT7-0 对应农历第5-12 月大小,第三字节BIT7 表示农历第13 个月大小
月份对应的位为1 表示本农历月大(30 天),为0 表示小(29 天)
第三字节BIT6-5 表示春节的公历月份,BIT4-0 表示春节的公历日期
*****************************************************************************/
unsigned char code year_code[]={
                    0x09,0x2e,0x50,    //1999
                    0x0C,0x96,0x45,    //2000 
                    0x4d,0x4A,0xB8,    //2001
                    0x0d,0x4A,0x4C,    //2002
                    0x0d,0xA5,0x41,    //2003
                    0x25,0xAA,0xB6,    //2004
                    0x05,0x6A,0x49,    //2005
                    0x7A,0xAd,0xBd,    //2006
                    0x02,0x5d,0x52,    //2007
                    0x09,0x2d,0x47,    //2008
                    0x5C,0x95,0xBA,    //2009
                    0x0A,0x95,0x4e,    //2010
                    0x0B,0x4A,0x43,    //2011
                    0x4B,0x55,0x37,    //2012
                    0x0A,0xd5,0x4A,    //2013
                    0x95,0x5A,0xBf,    //2014
                    0x04,0xBA,0x53,    //2015
                    0x0A,0x5B,0x48,    //2016
                    0x65,0x2B,0xBC,    //2017
                    0x05,0x2B,0x50,    //2018
                    0x0A,0x93,0x45,    //2019
                    0x47,0x4A,0xB9,    //2020
                    0x06,0xAA,0x4C,    //2021
                    0x0A,0xd5,0x41,    //2022
                    0x24,0xdA,0xB6,    //2023
                    0x04,0xB6,0x4A,    //2024
                    0x69,0x57,0x3d,    //2025
                    0x0A,0x4e,0x51,    //2026
                    0x0d,0x26,0x46,    //2027
                    0x5e,0x93,0x3A,    //2028
                    0x0d,0x53,0x4d,    //2029
                    0x05,0xAA,0x43,    //2030
                    0x36,0xB5,0x37,    //2031
                    0x09,0x6d,0x4B,    //2032
                    0xB4,0xAe,0xBf,    //2033
                    0x04,0xAd,0x53,    //2034
                    0x0A,0x4d,0x48,    //2035
                    0x6d,0x25,0xBC,    //2036
                    0x0d,0x25,0x4f,    //2037
                    0x0d,0x52,0x44,    //2038
                    0x5d,0xAA,0x38,    //2039
                    0x0B,0x5A,0x4C,    //2040
                    0x05,0x6d,0x41,    //2041
                    0x24,0xAd,0xB6,    //2042
                    0x04,0x9B,0x4A,    //2043
                    0x7A,0x4B,0xBe,    //2044
                    0x0A,0x4B,0x51,    //2045
                    0x0A,0xA5,0x46,    //2046
                    0x5B,0x52,0xBA,    //2047
                    0x06,0xd2,0x4e,    //2048
                    0x0A,0xdA,0x42,    //2049

⌨️ 快捷键说明

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