- /*---------------------------------------------------------------------------------------------------------*/
 
- /*                                                                                                         */
 
- /* Copyright(c) 2011 Nuvoton Technology Corp. All rights reserved.                                         */
 
- /*                                                                                                         */
 
- /*---------------------------------------------------------------------------------------------------------*/
 
- #include "includes.h"         //包含所需的头文件
 
- /*************************************************************************************
 
- ** Function name:       main
 
- ** Descriptions:                     
 
- ** input parameters:    无
 
- ** output parameters:   无
 
- ** Returned value:      无
 
- *************************************************************************************/
 
- FATFS fs;
 
- FIL file;
 
- FRESULT res;        
 
- uint8_t RW_Buf[6][40];
 
- S_DRVRTC_TIME_DATA_T   Curren_Time;
 
- int32_t AD_Value;
 
- UINT rr;
 
- int main (void)
 
- { 
 
-     uint8_t funselect= 1,i;
 
-     Set_System();                                                        //封装一些初始化模块 
 
-         if(DrvGPIO_GetBit(E_GPA, 13)== 0)                  //检测SD卡是否插入
 
-           printf("SD卡已插入\n"); 
 
-         else printf("SD卡未插入\n"); 
 
-            while(SD_Init()!=0)                                                //等待SD卡初始化完成
 
-         {
 
-          DrvSYS_Delay(600000); 
 
-          printf("等待SD卡初始化\n"); 
 
-         }
 
-     printf("初始化成功\n");          
 
-     res = f_mount(0, &fs);                                        //注册工作区
 
-     if(res == FR_OK)                                                 //如果注册工作区成功
 
-     {
 
-           res = f_open(&file, "li.txt", FA_OPEN_EXISTING | FA_READ); //打开文件
 
-       switch(res)
 
-       {
 
-        case FR_OK:                                                        //如果"li.txt"存在,关闭文件
 
-           printf("文件存在\n");
 
-           f_close(&file); 
 
-        break;
 
-        case FR_NO_FILESYSTEM:                                //如果文件系统不存在,格式化SD          
 
-               printf("文件系统不存在\n");
 
-               res = f_mkfs(0 , 0, _MAX_SS);
 
-               printf("%d",res);
 
-        case FR_NO_FILE:                                                //如果"LI.txt"不存在,创建该文件并写入初值
 
-           printf("文件不存在\n");
 
-           if(f_open(&file, "li.txt", FA_OPEN_ALWAYS | FA_WRITE) == FR_OK)
 
-           {
 
-                f_printf(&file, "%s\n", "李晓旭文本文档");
 
-                f_close(&file);
 
-           }
 
-        break;
 
-        default: break;
 
-        }  
 
-        f_mount(0, 0);                                                 //关闭工作区
 
-      }
 
-            
 
-      res = f_mount(0, &fs);
 
-      /*f_open(&file, "li.txt", FA_OPEN_ALWAYS | FA_WRITE);//打开文件li.txt  
 
-      f_lseek(&file, f_size(&file)); //将指针移到文件末尾
 
-      f_printf(&file, "%s\n", "李晓旭文本文档...");
 
-          f_close(&file);//关闭文件li.txt  */
 
 
 
-         /*if(f_open(&file, "book1.txt", FA_OPEN_ALWAYS | FA_WRITE) == FR_OK)
 
-          {
 
-             f_printf(&file, "%s","内容");
 
-          }
 
-          f_close(&file);*/
 
 
-      f_mount(0, 0);//关闭工作区         
 
 
 
 
-          while(1)
 
-          {
 
-        if(ShowPage == 0)
 
-        { 
 
-              switch(funselect)
 
-                  {
 
-                   case 1:WriteStringToLCM(1,0,"->");
 
-                       break;
 
-                   case 2:WriteStringToLCM(2,0,"->");
 
-                      break;
 
-                   case 3:WriteStringToLCM(3,0,"->");
 
-                      break;
 
-                   case 4:WriteStringToLCM(4,0,"->");
 
-                      break;
 
-                   default:break;
 
-                  } 
 
-                     WriteStringToLCM(1,1,"1.日历");
 
-              WriteStringToLCM(2,1,"2.小说");
 
-              WriteStringToLCM(3,1,"3.游戏");
 
-              WriteStringToLCM(4,1,"4.音乐");
 
 
-                  while(ShowPage == 0)
 
-                  {
 
-           KeyCode = GetKey();
 
-               switch(KeyCode)
 
-               {
 
-                case KEY1_DOWN_USER:        
 
-                {
 
-                      if(funselect<4) funselect++;
 
-                          else funselect= 1;
 
-                     WriteStringToLCM(1,0,"  ");//清选择表头
 
-                     WriteStringToLCM(2,0,"  ");
 
-                     WriteStringToLCM(3,0,"  ");
 
-                     WriteStringToLCM(4,0,"  ");
 
-                     switch(funselect)
 
-                     {
 
-                      case 1:WriteStringToLCM(1,0,"->");
 
-                      break;
 
-                      case 2:WriteStringToLCM(2,0,"->");
 
-                      break;
 
-                      case 3:WriteStringToLCM(3,0,"->");
 
-                      break;
 
-                      case 4:WriteStringToLCM(4,0,"->");
 
-                      break;
 
-                      default:break;
 
-                      }
 
-                }  
 
-                break;
 
-                case KEY2_DOWN_USER:        
 
-                {
 
-                 switch(funselect)
 
-                     {
 
-                       case 1:ShowPage = DatePage; break;
 
-                       case 2:ShowPage = BookPage;break;
 
-                       case 3:ShowPage = GamePage;break;
 
-                       case 4:ShowPage = MusicPage; break;
 
-                       default:break;
 
-                     }
 
-                } 
 
-                 break;
 
-                 default:break;
 
-                }
 
-                  }
 
-        } 
 
-        if(ShowPage == DatePage)
 
-        {
 
-          DrvRTC_Read(DRVRTC_CURRENT_TIME, &Curren_Time);         //读取当前时间
 
-          value = read_temp();//读取当前温度
 
-              value = value/10;
 
-               WriteCommandToLCM(0x01);        //清屏指令
 
-          delay_ms(10); 
 
-                 WriteStringToLCM(1,0,"星期    晴    C");
 
-              WriteStringToLCM(2,0,"    年  月  日");
 
-              WriteStringToLCM(3,0,"    时  分  秒");
 
-             //WriteStringToLCM(4,0,&RW_Buf[3][0]);
 
-              switch(Curren_Time.u32cDayOfWeek)
 
-              {
 
-                case 0:WriteStringToLCM(1,2,"日");break;
 
-                case 1:WriteStringToLCM(1,2,"一");break;
 
-                case 2:WriteStringToLCM(1,2,"二");break;
 
-                case 3:WriteStringToLCM(1,2,"三");break;
 
-                case 4:WriteStringToLCM(1,2,"四");break;
 
-                case 5:WriteStringToLCM(1,2,"五");break;
 
-                case 6:WriteStringToLCM(1,2,"六");break;
 
-                default:break;
 
-               }
 
-              while(ShowPage == DatePage)
 
-              {
 
-                DrvRTC_Read(DRVRTC_CURRENT_TIME, &Curren_Time);         //读取当前时间
 
-                value = read_temp();//读取当前温度
 
-                value = value/10;
 
-                if(value >100)
 
-                value = 99;
 
-                WriteValueToLCM(1,5,"%1f",value);
 
-                //WriteValueToLCM(4,0,"%2f",value);
 
-                WriteValueToLCM(2,0,"%2d",Curren_Time.u32Year);
 
-                WriteValueToLCM(2,3,"%2d",Curren_Time.u32cMonth);
 
-                WriteValueToLCM(2,5,"%2d",Curren_Time.u32cDay);
 
-                WriteValueToLCM(3,1,"%2d",Curren_Time.u32cHour);
 
-                WriteValueToLCM(3,3,"%2d",Curren_Time.u32cMinute);
 
-                WriteValueToLCM(3,5,"%2d",Curren_Time.u32cSecond); 
 
-                KeyCode = GetKey();
 
-                switch(KeyCode)
 
-                {
 
-                 case KEY1_DOWN_USER:        
 
-                 {             
 
-                           ShowPage = 0; 
 
-                           funselect = 1;
 
-                       WriteCommandToLCM(0x01);        //清屏指令
 
-               delay_ms(10);
 
-                         }  
 
-                 break;
 
-                 case KEY2_DOWN_USER:        
 
-                 {} 
 
-                 break;
 
-                default:break;
 
-               }
 
-             }/*while(ShowPage == DatePage)*/
 
-       }/*if(ShowPage == DatePage)*/
 
-       if(ShowPage == BookPage)
 
-        {
 
-              WriteCommandToLCM(0x01);        //清屏指令
 
-          delay_ms(10); 
 
-              WriteStringToLCM(1,2,"电子书");
 
-                  WriteStringToLCM(2,2,"人生.txt");
 
-                  WriteStringToLCM(3,3,"作者—路遥");
 
-                  f_mount(0, &fs);                                        //注册工作区//注册工作区
 
-                  f_open(&file, "book1.txt", FA_OPEN_EXISTING | FA_READ);//打开电子书记事本
 
-                  while(ShowPage == BookPage)
 
-                  {
 
-                    KeyCode = GetKey();
 
-                switch(KeyCode)
 
-                {
 
-                 case KEY1_DOWN_USER:        
 
-                 {  
 
-                           f_close(&file);//关闭电子书记事本  
 
-                           f_mount(0, 0);//关闭工作区                
 
-                           ShowPage = 0; 
 
-                           funselect = 2;
 
-                       WriteCommandToLCM(0x01);        //清屏指令
 
-               delay_ms(10);
 
-                         }  
 
-                 break;
 
-                 case KEY2_DOWN_USER:        
 
-                 {
 
-                           WriteCommandToLCM(0x01);        //清屏指令
 
-               delay_ms(10); 
 
-                           for(i=1;i<=4;i++)//
 
-                           {
 
-                            f_read(&file,&RW_Buf[i][0],16,&rr); 
 
-                            printf("%s\n",&RW_Buf[i][0]);
 
-                            WriteStringToLCM(i,0,&RW_Buf[i][0]);        
 
-                           }
 
-                           
 
-                         } 
 
-                 break;
 
-                default:break;
 
-               }
 
 
-                  } /*while(ShowPage == BookPage)*/
 
-            }/*if(ShowPage == BookPage)*/
 
-       if(ShowPage == GamePage)
 
-        {
 
-              WriteCommandToLCM(0x01);        //清屏指令
 
-          delay_ms(10); 
 
-              WriteStringToLCM(1,3,"游戏");
 
-                  WriteStringToLCM(2,0,"->1.贪吃蛇");
 
-                  WriteStringToLCM(3,1,"1.俄罗斯方块");
 
-                  while(ShowPage == GamePage)
 
-                  {
 
-                    KeyCode = GetKey();
 
-                switch(KeyCode)
 
-                {
 
-                 case KEY1_DOWN_USER:        
 
-                 {                  
 
-                           ShowPage = 0; 
 
-                           funselect = 3;
 
-                       WriteCommandToLCM(0x01);        //清屏指令
 
-               delay_ms(10);
 
-                         }  
 
-                 break;
 
-                 case KEY2_DOWN_USER:        
 
-                 {} 
 
-                 break;
 
-                default:break;
 
-               }
 
 
-                  } /*while(ShowPage == MusicPage)*/
 
-            }/*if(ShowPage == MusicPage)*/
 
-       if(ShowPage == MusicPage)
 
-        {
 
-              WriteCommandToLCM(0x01);        //清屏指令
 
-          delay_ms(10); 
 
-              WriteStringToLCM(1,3,"音乐");
 
-                  while(ShowPage == MusicPage)
 
-                  {
 
-                    KeyCode = GetKey();
 
-                switch(KeyCode)
 
-                {
 
-                 case KEY1_DOWN_USER:        
 
-                 {                  
 
-                           ShowPage = 0; 
 
-                           funselect = 4;
 
-                       WriteCommandToLCM(0x01);        //清屏指令
 
-               delay_ms(10);
 
-                         }  
 
-                 break;
 
-                 case KEY2_DOWN_USER:        
 
-                 {} 
 
-                 break;
 
-                default:break;
 
-               }
 
 
-                  } /*while(ShowPage == MusicPage)*/
 
-            }/*if(ShowPage == MusicPage)*/
 
 
-     }/*while*/
 
- }/*main*/