⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 projfunc.c

📁 c8051f020+CH375读写U盘文件的程序
💻 C
字号:
#include<c8051f020.h>
#include"rwflash.h"
#include"lcd.h"
#include"iic.h"
#include"key_lcd.h"
#include"pcf8563.h"
#include"projfunc.h"

void DisTime()
{
 unsigned char TimeString[]={"0-00-00 00:00:00"};
 //TimeString[0]=tbel[year/10];
 TimeString[0]=tbel[year%10];TimeString[2]=tbel[month/10];TimeString[3]=tbel[month%10];
 TimeString[5]=tbel[day/10];TimeString[6]=tbel[day%10];TimeString[8]=tbel[hour/10];TimeString[9]=tbel[hour%10];
 TimeString[11]=tbel[minute/10];TimeString[12]=tbel[minute%10];TimeString[14]=tbel[second/10];TimeString[15]=tbel[second%10];
 LCD_Printf(1, 1,TimeString);
 Delay1ms(1);
}

void KeyOprt()
{
 unsigned char Key,i=0;
 if(KeyValue==OK)
  {
   LCD_Printf(1, 2,"设定时间");
   LCD_Printf(2, 2,"回显温度");
   LCD_Printf(3, 2,"温度设置");
   LCD_Printf(1,1,">>");
   while(1)
     {
      Key=Wait_Infrared();
      switch(Key)
       {
	    case UP:     i--;break;
	    case DOWN:   i++;break; 
	    case OK:     Opr_Menu(i);
		             LCD_Printf(1, 2,"设定时间");
                     LCD_Printf(2, 2,"回显温度");
                     LCD_Printf(3, 2,"温度设置");
                    // LCD_Printf(1,1,">>");
		             i=0;break;
	    case CANCEL: return;
	    case 0x0b:   return;      
	   }
	  switch(i%4)
       {
      case -1:    i=0;break;
//	  case 4:	  return 0x00;
	  case 0:     LCD_Printf(1,1,">>");
	              LCD_Printf(2,1,"  ");
				  LCD_Printf(3,1,"  ");
				  LCD_Printf(4,1,"  ");
				  break; 
	  case 1:     LCD_Printf(2,1,">>");
	              LCD_Printf(1,1,"  ");
				  LCD_Printf(3,1,"  ");
				  LCD_Printf(4,1,"  ");
				  break; 
	  case 2:     LCD_Printf(3,1,">>");
	              LCD_Printf(2,1,"  ");
				  LCD_Printf(1,1,"  ");
				  LCD_Printf(4,1,"  ");
				  break; 
	  case 3:     LCD_Printf(4,1,">>");
	              LCD_Printf(2,1,"  ");
				  LCD_Printf(3,1,"  ");
				  LCD_Printf(1,1,"  ");
				  break; 
       }
     }
   }
}

void Opr_menu(unsigned char i)
{
 if(i==0)
  {
   SetClock();
  }
}

void SetClock()
{
 unsigned char Key;
 read_clock();
 DisTime();
 LCD_Printf(2,1,"^");
 while(1)
     {
      Key=Wait_Infrared();
      switch(Key)
       {
	    case LEFT:    i--;break;
	    case RIGHT:   i++;break; 
	    case OK:     set_clock();
		             return;
	    case CANCEL: return;
	    case 0x0b:   return;
		case UP:     ChangeTimeUp(i%6);DisTime();break;
		case DOWN:   ChangeTimeDown(i%6);DisTime();break; 
	   }
	  switch(i%6)
       {
      case -1:    i=0;break;
//	  case 4:	  return 0x00;
	  case 0:     LCD_Printf(2,1,"^               ");
				  break; 
	  case 1:     LCD_Printf(2,1,"  ^^            ");
				  break; 
	  case 2:     LCD_Printf(2,1,"     ^^         ");
				  break; 
	  case 3:     LCD_Printf(2,1,"        ^^      ");
				  break; 
	  case 4:     LCD_Printf(2,1,"           ^^   ");
				  break;
	  case 5:     LCD_Printf(2,1,"              ^^");
				  break;  
       }
     }
}

void ChangeTimeDown(unsigned char i)
{
 switch(i)
  {
      case 0:     year++;
	              if(year>9) year=9;
				  break; 
	  case 1:     month++;
	              if(month>12) month=12;
				  break; 
	  case 2:     day++;
				  if(day>31) day=31;
				  break; 
	  case 3:     hour++;
	              if(hour>23) hour=23;
				  break; 
	  case 4:     minute++;
				  if(minute>59) minute=59;
				  break;
	  case 5:     second++;
	              if(second>59) second=59
				  break; 
  }

}

void ChangeTimeUp(unsigned char i)
{
 switch(i)
  {
      case 0:     year--;
	              if(year<0) year=0;
				  break; 
	  case 1:     month--;
	              if(month<0) month=0;
				  break; 
	  case 2:     day--;
				  if(day<0) day=0;
				  break; 
	  case 3:     hour--;
	              if(hour<0) hour=0;
				  break; 
	  case 4:     minute--;
				  if(minute<0) minute=0;
				  break;
	  case 5:     second--;
	              if(second<0) second=0
				  break;  
  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -