既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
void Data_Task()
{ if(T2H<0xd9)
{
if(count_time<150)
{
{count_time=0;
hour=Read_Ds1302_Byte(0x85);
min=Read_Ds1302_Byte(0x83);
sec=Read_Ds1302_Byte(0x81);
}
}
if(flag_save==1)
{flag_save=0;
value1=input_save/256;
value2=input_save%256;
Write_24c02(0x00,hour_save);
Write_24c02(0x01,min_save);
Write_24c02(0x02,value1);
Write_24c02(0x03,value2);
}
}
}
void Logic_Task()
{
if(flag_input==1)
{
flag_input=0;
input=input*10+input_value;
++count_input;
}
L[1]=(interface==0)?(1):(0);
L[2]=(interface==1)?(1):(0);
L[3]=(interface==2)?(1):(0);
L[4]=(flag_big)?(1):(0);
if(count_input==1&&flag_hour==0)
{hour_save=(hour/16*10)+(hour%16);
hour_show=hour;
min_show=min;
min_save=(min/16*10)+(min%16);
flag_hour=1;
}
}
void Display_Task()
{ if(interface==0)//ʱ¼ä
{
Seg_Bit[1]=hour/16;
Seg_Bit[2]=hour%16;
Seg_Bit[3]=11;
Seg_Bit[4]=min/16;
Seg_Bit[5]=min%16;
Seg_Bit[6]=11;
Seg_Bit[7]=sec/16;
Seg_Bit[8]=sec%16;
}
if(interface==1)//ʱ¼ä
{
Seg_Bit[1]=12;
Seg_Bit[2]=10;
Seg_Bit[3]=10;
Seg_Bit[4]=10;
Seg_Bit[5]=(input>999)?(input/1000%10):(10);
Seg_Bit[6]=(input>99)?(input/100%10):(10);
Seg_Bit[7]=(input>9)?(input/10%10):(10);
Seg_Bit[8]=(input>0)?(input%10):(10);
}
if(interface==2)//ʱ¼ä
{
Seg_Bit[1]=14;
Seg_Bit[2]=10;
Seg_Bit[3]=10;
Seg_Bit[4]=hour_show/16;
Seg_Bit[5]=hour_show%16;
Seg_Bit[6]=11;
Seg_Bit[7]=min_show/16;
Seg_Bit[8]=min_show%16;
}
}
uchar Read_Key() { static uchar count_press=0; static uchar flag_press=0; uchar value; uchar x=0,y=0;
P3=0x0f;P4=0x00;
if(P30==0) x=3;
if(P31==0) x=2;
if(P32==0) x=1;
if(P33==0) x=0;
P3=0xf0;P4=0xff;
if(P34==0) y=4;
if(P35==0) y=3;
if(P42==0) y=2;
if(P44==0) y=1;
if(y)
{
if((++count_press>=8)&&(flag_press==0))
{
count_press=0;
flag_press=1;
value=x+y*4;
}
}
else
{
count_press=0;
flag_press=0;
}
return value;
}
void Key_Task()
{
uchar key_value=0;
if(count_key>5)
{
count_key=0;
key_value=Read_Key();
}
if(key_value==4)
{
if(++interface==3)
{interface=0;
}
if(interface==2)//½øÈë¼Ç¼½çÃæ¿ªÊ¼´æÊý¾Ý
{
count_input=0;
flag_hour=0;
flag_save=1;
if(input>input_save)
{flag_big=1;
}
else{flag_big=0;}
input_save=input;
input=0;
}
}
if(key_value==5)/s5ÇåÁã
{if(interface==1)
{flag_hour=0;
input=0;
count_input=0;
}
}
if(interface==1 && count_input<4)
{
if(key_value==10)
{
flag_input=1;
input_value=1;
}
if(key_value==14)
{
flag_input=1;
input_value=2;
}
if(key_value==6)
{
flag_input=1;
input_value=0;
}
if(key_value==18)
{
flag_input=1;
input_value=3;
}
if(key_value==9)
{
flag_input=1;
input_value=4;
}
if(key_value==13)
{
flag_input=1;
input_value=5;
}
if(key_value==17)
{
flag_input=1;
input_value=6;
}
if(key_value==8)
{
flag_input=1;
input_value=7;
}
if(key_value==12)
{
flag_input=1;
input_value=8;
}
if(key_value==16)
{
flag_input=1;
input_value=9;
}
}
}
int main() { System_Init();
while(1)
{
Data_Task();
Logic_Task();
Display_Task();
Key_Task();
}
}
### 底层驱动
就放个需要自己写的部分


**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新**
**[如果你需要这些资料,可以戳这里获取](https://gitee.com/vip204888)**