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

📄 my1.lst

📁 Keil中文版
💻 LST
📖 第 1 页 / 共 2 页
字号:
 221                                     manage_sub(user_plan);
 222                                  }
 223                                }//end if
 224                                else if (key_dec==0){
 225                                     delay1();
 226                                     if(key_dec==0){
 227                                          manage_warn();
 228                                     }
 229                                }//end else
 230                             }
 231                             break;
 232                  case  10: {  user_plan=10; //不能去掉,因为有可能到了某一状态不按键
 233                               manage_10();
 234                               flag_10=1;
 235                               if(key_inc==0){      //查询按键,
 236                                  delay1();
 237                                 if(key_inc==0&&flag_10==1) {
 238                                     user_plan=15;      //=15     
 239                                    ;// manage_15();
C51 COMPILER V7.00  MY1                                                                    09/28/2002 15:23:02 PAGE 5   

 240                                    ;// flag_15=1;
 241                                     flag_10=0;
 242                                     manage_sub(user_plan);
 243                                  }
 244                                }//end if
 245                                else if (key_dec==0){
 246                                     delay1();
 247                                     if(key_dec==0){
 248                                          user_plan=5;
 249                                          manage_sub(user_plan);
 250                                     }
 251                                }//end else
 252                             }
 253                             break;          
 254                                                                            
 255                  case  12: {  user_plan=10; //不能去掉,因为有可能到了某一状态不按键
 256                               manage_12();
 257                               flag_10=1;
 258                               if(key_inc==0){      //查询按键,
 259                                  delay1();
 260                                 if(key_inc==0&&flag_10==1) {
 261                                     user_plan=15;      //=15     
 262                                    ;// manage_15();
 263                                    ;// flag_15=1;
 264                                     flag_10=0;
 265                                     manage_sub(user_plan);
 266                                  }
 267                                }//end if
 268                                else if (key_dec==0){
 269                                     delay1();
 270                                     if(key_dec==0){
 271                                          user_plan=5;
 272                                          manage_sub(user_plan);
 273                                     }
 274                                }//end else
 275                             }
 276                             break; 
 277                  case  15: {  user_plan=15; //不能去掉,因为有可能到了某一状态不按键
 278                               manage_15();
 279                               flag_15=1;
 280                               if(key_inc==0){      //查询按键,
 281                                  delay1();
 282                                 if(key_inc==0&&flag_15==1) {
 283                                     user_plan=20;      //=20     
 284                                    ;// manage_15();
 285                                    ;// flag_15=1;
 286                                     flag_15=0;
 287                                     manage_sub(user_plan);
 288                                  }
 289                                }//end if
 290                                else if (key_dec==0){
 291                                     delay1();
 292                                     if(key_dec==0){
 293                                          user_plan=10;
 294                                          manage_sub(user_plan);
 295                                     }
 296                                }//end else
 297                             }
 298                             break;                                                                   
 299                  case  18: {  user_plan=15; //不能去掉,因为有可能到了某一状态不按键
 300                               manage_18();
 301                               flag_15=1;
C51 COMPILER V7.00  MY1                                                                    09/28/2002 15:23:02 PAGE 6   

 302                               if(key_inc==0){      //查询按键,
 303                                  delay1();
 304                                 if(key_inc==0&&flag_15==1) {
 305                                     user_plan=20;      //=20     
 306                                    ;// manage_15();
 307                                    ;// flag_15=1;
 308                                     flag_15=0;
 309                                     manage_sub(user_plan);
 310                                  }
 311                                }//end if
 312                                else if (key_dec==0){
 313                                     delay1();
 314                                     if(key_dec==0){
 315                                          user_plan=10;
 316                                          manage_sub(user_plan);
 317                                     }
 318                                }//end else
 319                             }
 320                             break; 
 321                  case  20: {  user_plan=20; //不能去掉,因为有可能到了某一状态不按键
 322                               manage_20();
 323                               flag_20=1;
 324                               if(key_inc==0){      //查询按键,
 325                                  delay1();
 326                                 if(key_inc==0&&flag_20==1) {
 327                                     manage_warn();
 328                                  }
 329                                }//end if
 330                                else if (key_dec==0){
 331                                     delay1();
 332                                     if(key_dec==0){
 333                                          user_plan=15;
 334                                          manage_sub(user_plan);
 335                                     }
 336                                }//end else
 337                             }
 338                             break; 
 339                  default: { if((user_plan>USER_hign)||(user_plan<USER_low))
 340                               manage_warn();
 341                            }
 342                            break;
 343                }//end switch
 344            }//end
 345                                                                                                                         
             -                         
 346          /******************************************************************
 347          //主程序
 348          //
 349          /**********************************************************************/
 350          void main(){
 351             
 352             P1=0x01;       //P1口初始化。定义为输出方式
 353             P3=0x0a;       //1,3为输入方式
 354             
 355             TMOD=0x22|TMOD;    //设T0为方式2,T1为方式2
 356              
 357               ;// TH0=0X38;
 358              ; // TL0=0x38;  //实现自动重装,
 359             
 360              ;// TR1=1;    
 361            
 362             ET0=1;   //允许定时器0中断
C51 COMPILER V7.00  MY1                                                                    09/28/2002 15:23:02 PAGE 7   

 363              ;//  ET1=1;   //允许定时器1中断
 364             EA=1;    //总允许  
 365              
 366               ;// init_t1();  //初始化并启动定时器1,用于定时5秒
 367            
 368               ;// time5=1;  //设置为1,否则第一次循环无法进行
 369           while(1){    
 370                 ;// while(time5==1){
 371                  
 372                 ;//  time5=0;     //清零,否则扰乱定时器标志
 373                  
 374                  elec_port=1;  //电容先放电
 375             
 376                  wait_1();
 377             
 378                  elec_port=0;  //放电完成后置低
 379            
 380            /*必须先进行测试得出初始温度,才能进行用户的自我设定,所以先启动定时器0,测试初始温度*/
 381             
 382                  init_t0();   //初始化并启动定时器T0,计算共用实时时间
 383                  
 384                  while(query_port!=1) {;}   // 
 385                 // while(query_port!=0) {;} //test
 386                  
 387             //此时进入中断服务程序,读出初始温度
 388             //进行相应处理
 389                  
 390                 // user_plan=temp_c;        //
 391                 
 392                  if(query_port==1){  
 393                         
 394                           TR0=0;   //终止定时器
 395                   
 396                       // i=38;   //test
 397                    //此时充电时间是假设       
 398                           if((i>=10)&&(i<15))       count_time=1; // 5 //充电时间应该是一个范围
 399                           if((i>=15)&&(i<20))       count_time=2; //8  
 400                           if((i>=20)&&(i<25))       count_time=3; //10
 401                           if((i>=25)&&(i<30))       count_time=4; //12
 402                           if((i>=30)&&(i<35))       count_time=5; //15
 403                           if((i>=35)&&(i<40))       count_time=6; //18
 404                           else if((i>=40)&&(i<50))  count_time=7; //20
 405                           
 406                                   // count_time=i;  //得出共用时间
 407                             switch(count_time)
 408                             {
 409                                  case 1:   temp_c=5;  //假设
 410                                              break;
 411                                  case 2:   temp_c=8;
 412                                              break;
 413                                  case 3:   temp_c=10;
 414                                              break;
 415                                  case 4:   temp_c=12;
 416                                              break; 
 417                                  case 5:   temp_c=15;
 418                                              break; 
 419                                   
 420                                  case 6:   temp_c=18;
 421                                              break; 
 422                                  case 7:   temp_c=20;
 423                                              break; 
 424                                  default:  ;
C51 COMPILER V7.00  MY1                                                                    09/28/2002 15:23:02 PAGE 8   

 425                                               break;
 426                              } //end switch
 427                            
 428                            if(temp_c>=USER_hign-2)  {fan_port=1;}    //高于设定温度开启风扇
 429                            else if(temp_c<=USER_low) {fan_port=0;}  //关闭风扇
 430                                  
 431              }//end               
 432                  manage_sub(temp_c);   //
 433                  
 434                  delay_5();               //延时大约4秒因为之前处理用去一些时间
 435                  
 436                  i=0;              //将记数清零,以免下次启动继续记数
 437                  P1=0x01;       //P1口初始化。定义为输出方式 p1.0  output
 438                  P3=0x0a;       //1,3为输入方式
 439              }
 440           
 441          }      
 442                           
 443                           
 444                             
 445                

C51 COMPILATION COMPLETE.  0 WARNING(S),  2 ERROR(S)

⌨️ 快捷键说明

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