目录
核心代码
变量定义
处理年月日时间数据
界面显示
视频展示
核心代码
变量定义
struct rtc_time set_time;
//设置时间变量
uint32_t temp_num = 0;
uint8_t day_max=0 ;
int flag=0;
char string[50];
int flage=1 ;
extern __IO uint32_t TimeDisplay ;
extern __IO uint32_t TimeAlarm ;
uint32_t clock_timestamp;
uint32_t current_timestamp;
//定义年月
int year,mon,mday,hour,min,sec;
处理年月日时间数据
struct rtc_time set_time; //设置时间变量 uint32_t temp_num = 0; uint8_t day_max=0 ; int flag=0; char string[50]; int flage=1 ; extern __IO uint32_t TimeDisplay ; extern __IO uint32_t TimeAlarm ; uint32_t clock_timestamp; uint32_t current_timestamp; //定义年月 int year,mon,mday,hour,min,sec;
处理年月日时间数据
根据不同的按键进行一个传入的数据判断以及输入
//选择日期
static void Change(int i){
if(flage==1||flage==2){
sprintf((char*)string,"%d%d",year,i);
year=atoi(string);
if(year>999){
flage=3;
}
}else if(flage==3){
sprintf((char*)string,"%d%d",mon,i);
mon=atoi(string);
if(string[0]==string[1]){
sprintf((char*)string,"%d",i);
mon=atoi(string);
flage=4;
}else if(mon>9){
flage=4;
}
}
else if(flage==4){
sprintf((char*)string,"%d%d",mday,i);
mday=atoi(string);
if(string[0]==string[1]){
sprintf((char*)string,"%d",i);
mday=atoi(string);
flage=5;
}else if(mday>9){
flage=5;
}
}
else if(flage==5){
sprintf((char*)string,"%d%d",hour,i);
hour=atoi(string);
if(string[0]==string[1]){
sprintf((char*)string,"%d",i);
hour=atoi(string);
flage=6;
}else if(hour>9){
flage=6;
}
}
else if(flage==6){
sprintf((char*)string,"%d%d",min,i);
min=atoi(string);
if(string[0]==string[1]){
sprintf((char*)string,"%d",i);
min=atoi(string);
flage=7;
}else if(min>9){
flage=7;
}
}
else if(flage==7){
sprintf((char*)string,"%d%d",sec,i);
sec=atoi(string);
if(string[0]==string[1]){
sprintf((char*)string,"%d",i);
sec=atoi(string);
flage=8;
}else if(sec>9){
flage=8;
}
}
printf("%d %d %d %d %d %d n",year,mon,mday,hour,min,sec);
}
界面显示
视频展示
基于stm32的触摸屏设置万历年和闹钟
基于stm32的触摸屏设置万历年和闹钟



