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

📄 text1.lst

📁 set(key6) left(key5) right(key4) up(key3) down(key2) OK(key1) 功能一:时钟 时钟计时; 按下set(一次)键即可调时间
💻 LST
📖 第 1 页 / 共 2 页
字号:
 176   1      }  // 编辑期间的显示
C51 COMPILER V7.50   TEXT1                                                                 09/09/2008 14:54:33 PAGE 4   

 177          
 178          
 179          
 180          
 181          
 182          void Copy1()                           //将设定好的时间赋给当前时间
 183          {
 184   1           sec =EditSec;
 185   1           min =EditMin;
 186   1           hour =EditHour;
 187   1      }  // 编辑值刷新当前时间
 188          
 189          void Copy2()                          //将设定好的闹铃时间保存
 190          {
 191   1           SetedAlarmSec=AlarmSec;
 192   1           SetedAlarmMin=AlarmMin;
 193   1           SetedAlarmHour=AlarmHour;
 194   1      
 195   1      } 
 196          
 197          
 198          
 199          
 200          
 201          
 202          
 203          void KeyPro(void)                                                                                         
             -      //按键功能模块
 204          {
 205   1      
 206   1          LastKey = CurKey;
 207   1          CurKey = KeyVal;
 208   1          KeyPressed = CurKey^LastKey;
 209   1      
 210   1          if(KeyPressed==0) return; //检测键的变化
 211   1          if(CurKey==0) return;         //  键释放忽略
 212   1      
 213   1      
 214   1      switch(SetState)               //判断所要执行的功能
 215   1      {
 216   2      case 0:     EditSec = sec;
 217   2                  EditMin = min;
 218   2                  EditHour = hour;
 219   2          if(KeyPressed==SET)           //准备进入设定时间功能
 220   2          SetState++;
 221   2          break;
 222   2      
 223   2      case 1:  {                                                                                                
             -  //设定时间功能
 224   3           switch(KeySts)
 225   3                 {
 226   4      
 227   4             case 0:   // hourHi edit status;小时高位设置
 228   4      
 229   4       
 230   4                  switch(KeyPressed)
 231   4                 {
 232   5      
 233   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 234   5                    
 235   5                  case RIGHT: KeySts++;       break;
 236   5                              case LEFT:  KeySts+=5;   break;
C51 COMPILER V7.50   TEXT1                                                                 09/09/2008 14:54:33 PAGE 5   

 237   5                                              
 238   5                  case UP:    if(EditHour<13) EditHour += 10; 
 239   5                                     else EditHour = 23;
 240   5                                     break;
 241   5                  case DOWN:  if(EditHour>10) EditHour -= 10;     
 242   5                                    else EditHour = 0;
 243   5                                    break;
 244   5                  case OK:    Copy1();    
 245   5                                   SetState=0;  KeySts=0;                
 246   5                                    break;             
 247   5                  }
 248   4                  break;
 249   4      
 250   4              case 1:     // hourLo edit status;小时低位设置
 251   4                  switch(KeyPressed)
 252   4                  {
 253   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 254   5                  case RIGHT: KeySts++;
 255   5                                      break;
 256   5                  case LEFT:  KeySts--;
 257   5                                      break;
 258   5                  case UP:    if(EditHour<23) EditHour++;    
 259   5                                      break;
 260   5                  case DOWN:  if(EditHour>0) EditHour--;
 261   5                                         break;
 262   5                  case OK:       Copy1();    
 263   5                              SetState=0;       KeySts=0;                
 264   5                                        break;             
 265   5                  }
 266   4                              
 267   4                  break;
 268   4      
 269   4      
 270   4              case 2:     // minHi edit status;分时高位设置
 271   4                  switch(KeyPressed)
 272   4                  {
 273   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 274   5                  case RIGHT: KeySts++;
 275   5                              break;
 276   5                  case LEFT:  KeySts--;
 277   5                              break;
 278   5                  case UP:    if(EditMin<49) EditMin+=10;
 279   5                              else EditMin = 59; 
 280   5                              break;
 281   5                  case DOWN:  if(EditMin>10) EditMin-=10;
 282   5                              else EditMin = 0;
 283   5                              break;
 284   5                  case OK:    Copy1();    
 285   5                           SetState=0;   KeySts=0;                
 286   5                              break;             
 287   5                  }
 288   4                  break;
 289   4      
 290   4      
 291   4                 case 3:     // minLo edit status;分时低位设置
 292   4                  switch(KeyPressed)
 293   4                  {
 294   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 295   5                  case RIGHT: KeySts++;
 296   5                              break;
 297   5                  case LEFT:  KeySts--;
 298   5                              break;
C51 COMPILER V7.50   TEXT1                                                                 09/09/2008 14:54:33 PAGE 6   

 299   5                  case UP:    if(EditMin<59) EditMin++;
 300   5                              break;
 301   5                  case DOWN:  if(EditMin>0) EditMin--;
 302   5                              break;
 303   5                  case OK:    Copy1();    
 304   5                             SetState=0; KeySts=0;                
 305   5                              break;             
 306   5                  }
 307   4                  break;
 308   4      
 309   4      
 310   4                 case 4:     // secHi edit status;秒时高位设置
 311   4                  switch(KeyPressed)
 312   4                  {
 313   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 314   5                  case RIGHT: KeySts++;
 315   5                              break;
 316   5                  case LEFT:  KeySts--;
 317   5                              break;
 318   5                  case UP:    if(EditSec<49) EditSec+=10;
 319   5                                          
 320   5                              else EditSec = 59; 
 321   5                              break;
 322   5                  case DOWN:  if(EditSec>10) EditSec-=10;
 323   5                                          
 324   5                              else EditSec = 0;
 325   5                              break;
 326   5                  case OK:    Copy1();    
 327   5                             SetState=0; KeySts=0;                
 328   5                              break;             
 329   5                  }
 330   4                  break;
 331   4              
 332   4      
 333   4      
 334   4                 case 5:    // secLo edit status;秒时低位设置
 335   4                  switch(KeyPressed)
 336   4                  { 
 337   5                  case DoubleSET :SetState++;KeySts=0;  Copy1();break;//准备进入设定闹钟功能
 338   5                              case RIGHT: KeySts-=5;
 339   5                                  break;
 340   5                  case LEFT:  KeySts--;
 341   5                                      break;
 342   5                  case UP:    if(EditSec<59) EditSec++;
 343   5                              
 344   5                                      break;
 345   5                  case DOWN:  if(EditSec>0) EditSec--;
 346   5                              
 347   5                                      break;
 348   5                  case OK:    Copy1();    
 349   5                              SetState=0;     KeySts=0;                
 350   5                                      break;             
 351   5                  }
 352   4                   break;
 353   4               }          
 354   3               }
 355   2                       break;
 356   2      
 357   2      
 358   2      case 2: {                                                                                          //进入

⌨️ 快捷键说明

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