*(ds_addr+0)=DTdata_tab[5]; //write modified data *(ds_addr+2)=DTdata_tab[4]; *(ds_addr+4)=DTdata_tab[3]; *(ds_addr+7)=DTdata_tab[2]; *(ds_addr+8)=DTdata_tab[1]; *(ds_addr+9)=DTdata_tab[0]; data_hl(); } } lcd_wcmd(0x0c); } } }
void datapro(void) //modify year、month、day、hour、minute、second data {
if(DTdata_tab[5]==0x60) //modify second data { DTdata_tab[5]=0x00; }
if(DTdata_tab[5]==0xf9) { DTdata_tab[5]=0x59; }
if(DTdata_tab[4]==0x60) //modify minute data { DTdata_tab[4]=0x00; }
if(DTdata_tab[4]==0xf9) { DTdata_tab[4]=0x59; }
if(DTdata_tab[3]==0x13) //modify hour data { DTdata_tab[3]=0x01; }
if(DTdata_tab[3]==0x00) { DTdata_tab[3]=0x12;
}
33
if(DTdata_tab[2]==0x32) //modify day data { DTdata_tab[2]=0x01; }
if(DTdata_tab[2]==0x00) { DTdata_tab[2]=0x31; }
if(DTdata_tab[1]==0x13) //modify month data { DTdata_tab[1]=0x01; }
if(DTdata_tab[1]==0x00) { DTdata_tab[1]=0x12; }
if(DTdata_tab[0]==0xa0) //modify year data { DTdata_tab[0]=0x00; }
if(DTdata_tab[0]==0xf9) { DTdata_tab[0]=0x99; } }
// End Of File KEY.H
#ifndef __key_h__ #define __key_h__
//----------------------------------------------------------------- // 数据类型宏定义
//----------------------------------------------------------------- #define uchar unsigned char #define uint unsigned int
// I/O口定义:控制/数据线接口 sbit keyset=P3^2; //按键设置 sbit keyadd=P3^1; //
34
sbit keysub=P3^0; //
// 外部变量声明
extern uchar code dis4[]; extern uchar code initdisp[]; extern uchar code DT_place[]; extern uchar code DT_lcdplace[]; extern uchar code DTdata_addr[]; extern uchar DTdata_tab[];
extern uchar xdata *ds_addr;
// 外部函数声明
extern void datapro(void); // LCD初始化
extern void key(void); // 检测LCD BF的状态
#endif
5.电源的配置
单片机整机供电电源在单片机应用中是非常重要的。因为单片机不仅要求电压、电流、能耗,还有上电复位的要求。所以电源不仅要提供稳定的电压、充足的电流,而且要求电源的电压建立时间快,功率消耗低。该电源电路就是这样的一个供电电源电路。
下图为5v电源供电电路原理图:
5.1稳压芯片78L05芯片
35
36