思路:电源接入 第一行显示时间、第二行显示日期,屏幕下面左边显示星期,右边显示温度,当k1按键第一次按下进入设置页面,在设置页面,k1按键为确定、k2按键为循环选择、k8按键为返回主页面,进入时间设置后 ,清屏显示静态时间,通过k2选择要修改的时、分、秒,修改后通过k8按键返回主页面结束,日期和星期修改同样。
效果展示
编译代码
用的是keil5、创建了四个文件夹分别用来存放主函数、公用函数、(温度、oled、时间)模块、显示函数 。
主页面显示内容
/*显示时间函数*/
void Display_Time(void)
{
OLED_ShowNum(4*8,1,gDS1302_TIME[2]/16,1,16);
OLED_ShowNum(5*8,1,gDS1302_TIME[2]&0x0f,1,16);
OLED_ShowChar(6*8,1,':',16);
OLED_ShowNum(7*8,1,gDS1302_TIME[1]/16,1,16);
OLED_ShowNum(8*8,1,gDS1302_TIME[1]&0x0f,1,16);
OLED_ShowChar(9*8,1,':',16);
OLED_ShowNum(10*8,1,gDS1302_TIME[0]/16,1,16);
OLED_ShowNum(11*8,1,gDS1302_TIME[0]&0x0f,1,16);
}
/*显示日期函数*/
void Display_Dat(void)
{
OLED_ShowNum(3*8,3,2,1,16);
OLED_ShowNum(4*8,3,0,1,16);
OLED_ShowNum(5*8,3,gDS1302_TIME[6]/16,1,16);
OLED_ShowNum(6*8,3,gDS1302_TIME[6]&0x0f,1,16);
OLED_ShowChar(7*8,3,'/',16);
OLED_ShowNum(8*8,3,gDS1302_TIME[4]/16,1,16);