📄 main.c
字号:
{
Timebuf[position-1]++;
b='0';
}
else
{
b++;
}
Timebuf[position]=b;
}
else
{
Timebuf[position-1]='0';
Timebuf[position]='0';
}
}
else if(position==5) //月
{
if((Timebuf[position-1]<49&&Timebuf[position]<=57)|(Timebuf[position-1]==49&&Timebuf[position]<50))
{
if(b>=57)
{
Timebuf[position-1]++;
b='0';
}
else
{
b++;
}
Timebuf[position]=b;
}
else
{
Timebuf[position-1]='0';
Timebuf[position]='1';
}
}
else //日
{
if((Timebuf[position-1]<51&&Timebuf[position]<=57)|(Timebuf[position-1]==51&&Timebuf[position]<49))
{
if(b>=57)
{
Timebuf[position-1]++;
b='0';
}
else
{
b++;
}
Timebuf[position]=b;
}
else
{
Timebuf[position-1]='0';
Timebuf[position]='1';
}
}
}
else if(CursorX==2) //修改小时,分,秒
{
if(position==2)
{
if((Timebuffer[position-1]==50&&Timebuffer[position]<52)|(Timebuffer[position-1]<50&&Timebuffer[position]<=57))
{
if(a>=57)
{
Timebuffer[position-1]++;
a='0';
}
else
{
a++;
}
Timebuffer[position]=a;
}
else
{
Timebuffer[position-1]='0';
Timebuffer[position]='0';
}
}
else
{
if((Timebuffer[position-1]<53&&Timebuffer[position]<=57)|(Timebuffer[position-1]==53&&Timebuffer[position]<57))
{
if(a>=57)
{
Timebuffer[position-1]++;
a='0';
}
else
{
a++;
}
Timebuffer[position]=a;
}
else
{
Timebuffer[position-1]='0';
Timebuffer[position]='0';
}
}
}
}
void positionfunc(void)
{
if(position>=9)
{
position=1;
}
else
{
position+=4;
}
//poCursor=PCursor[CursorX][CursorY];
if(CursorY>=6) //22
{
CursorY=2; //18
if(CursorX==1)
{
CursorX=2;
}
else if(CursorX==2)
{
CursorX=1;
}
}
else
{
CursorY+=2;
}
poCursor=PCursor[CursorX][CursorY];
LCD_ComdWrite(poCursor);
LCD_ComdWrite(0x0E);
}
void Key_Func(void)
{
unsigned char KeyId=0;
int i=0;
do
{
KeyId=KEY_Get(KEY1|KEY2);
if(KeyId==3)
{
i++;
clear_all();
Delay(200 * (TheSysClock / 4000));
}
if(i==1)
{
TimeDis(poCursor);
KeyId=KEY_Get(KEY1|KEY2);
switch(KeyId)
{
//case 0:clear_all();break;
case 1:if(t==2){gaitime(position);Delay(200 * (TheSysClock / 4000));}break;
case 2:t=KeyId;positionfunc();Delay(200 * (TheSysClock / 4000));break;
}
}
}
while(i==1);
}
void TimeDis(U8 pCursor)
{
line1="系统时间 ";
line2="20";
LCD_ComdWrite(0x80);
while( *line1!=0x00 )
{
LCD_DataWrite(*line1);
line1++;
}
LCD_ComdWrite(0x91);
while( *line2!=0x00 )
{
LCD_DataWrite(*line2);
line2++;
}
for (int j=0;j<=11;j++)
{
LCD_DataWrite(Timebuf[j]);
}
LCD_ComdWrite(0x8A);
for (int i=0;i<=9;i++)
{
LCD_DataWrite(Timebuffer[i]);
}
}
void DateDis(int t)
{
line1 = "房间: ";
line2 = "湿度: "; // 显示文字
line3 = "温度: ";
line4 = "CO2 浓度: ";
LCD_ComdWrite(0x80); // 显示第一行文字
while( *line1!=0x00 )
{
LCD_DataWrite(*line1);
line1++;
}
for (int i=t*16;i<=t*16+3;i++)
{
LCD_DataWrite(disbuffer[i]);
}
LCD_ComdWrite(0x90); // 显示第二行文字
while( *line2!=0x00 )
{
LCD_DataWrite(*line2);
line2++;
}
for (int i=t*16+4;i<=t*16+7;i++)
{
LCD_DataWrite(disbuffer[i]);
}
LCD_ComdWrite(0x88); // 显示第二行文字
while( *line3!=0x00 )
{
LCD_DataWrite(*line3);
line3++;
}
for (int i=t*16+8;i<=t*16+11;i++)
{
LCD_DataWrite(disbuffer[i]);
}
LCD_ComdWrite(0x98); // 显示第二行文字
while( *line4!=0x00 )
{
LCD_DataWrite(*line4);
line4++;
}
for (int i=t*16+12;i<=t*16+15;i++)
{
LCD_DataWrite(disbuffer[i]);
}
//Delay(500 *5* (TheSysClock / 4000));
}
// 主函数(程序入口)
void main(void)
{
jtagWait(); // 防止JTAG失效,重要!
sysInit(); // 系统初始化
LCDInit(); // LCD初始化
PictureDis(); //显示开始界面
Delay(500 * (TheSysClock / 4000)); // 延时约5s
//while(KEY_Get(KEY1|KEY2)==0){};
clear_all();
TimeDis(poCursor);
Delay(500 *(TheSysClock / 4000));
clear_all();
// Key_Func();
//wenshi();
unsigned long i=0;
while(1)
{
while(i++)
{
if(i>=0&&i<30)
{
DateDis(0);
}
else if(i>=30&&i<60)
{
DateDis(1);
}
else if(i>=60)
{
i=0;
}
Key_Func();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -