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

📄 cdle-j20_main.lst

📁 05年电赛小车悬挂程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 592   2                  EX0 = 1;
 593   2      
 594   2                  
 595   2                  //Fasheng();
 596   2                      }
 597   1              while(1);
 598   1      }
 599          
 600          /*
 601          
 602          void Fasheng()
 603          {
 604              if(Fasheng_Flag==10)   /////////Close Button
 605              {
 606                for(a=0; a<500; a++)
 607                 for(k=0; k<55; k++)
 608                 P3_6=0;
 609                 P3_6=1;
 610              } 
 611                  else
 612              for(k=0;k<Fasheng_Flag;k++)
 613              {
C51 COMPILER V7.02a   CDLE_J20_MAIN                                                        04/28/2007 10:09:25 PAGE 11  

 614                for(a=0; a<6000; a++)
 615                  P3_6=0;
 616                for(a=0;a<6000;a++)
 617                 P3_6=1;
 618              }                   
 619          //      Fasheng_Flag=0;
 620          }
 621          
 622          */
 623          
 624          
 625          
 626          
 627          
 628          void Timer0Int(void) interrupt 1 using 1
 629          {
 630   1        
 631   1           TH0=0xFD;
 632   1           TL0=0x1E; //设定时值为800us
 633   1      
 634   1               if(IRCON<3)
 635   1           {
 636   2             if(IRCON2<8) //每中断一次读一次遥控接收头的状态,每二次为遥控编码中的一个位
 637   2             {
 638   3               IRCON2++;
 639   3               IRCode[IRCON]=IRCode[IRCON]<<1; //每读一次放入变量中的二进制的一个位,每次左移一位
 640   3               IRCode[IRCON]=IRCode[IRCON]|P3_2; //每八次填满一个字节,一个字节存放遥控编码4个位
 641   3             }
 642   2             else
 643   2             {
 644   3               IRCON++; //填满一个字节,指向下一个变量
 645   3               IRCON2=0; //计数清零
 646   3             }
 647   2           }
 648   1          else        ///////////////还在接受!!!!!!!
 649   1          {
 650   2      
 651   2           ////暂时不允许int0中断
 652   2      
 653   2            if((IRCode[1]!=0xFF)&&(IRCode[2]!=0xFF))
 654   2           {
 655   3              if(IRCode[1]==0x55)
 656   3              {
 657   4                TR0=0;
 658   4                switch(IRCode[2])
 659   4                {
 660   5                  case 0xAB: //1-8键控制
 661   5                  //P0_0 = ~P0_0;
 662   5                  Fasheng_Flag=1;
 663   5                  
 664   5                  break;
 665   5                  case 0xAC:
 666   5                  //P0_1 = ~P0_1;
 667   5                  Fasheng_Flag=2;
 668   5                  
 669   5                  break;
 670   5                  case 0xAD: 
 671   5                  //P0_2 = ~P0_2;
 672   5                  Fasheng_Flag=3;
 673   5                  break;
 674   5                  case 0xB2: 
 675   5                  //P0_3 = ~P0_3;
C51 COMPILER V7.02a   CDLE_J20_MAIN                                                        04/28/2007 10:09:25 PAGE 12  

 676   5                  Fasheng_Flag=4;
 677   5                  break;
 678   5                  case 0xB3: 
 679   5                  //P0_4 = ~P0_4;
 680   5                  Fasheng_Flag=5;
 681   5                  break;
 682   5                  case 0xB4: 
 683   5                  //P0_5 = ~P0_5;
 684   5                  Fasheng_Flag=6;
 685   5                  break;
 686   5                  case 0xB5: 
 687   5                  //P0_6 = ~P0_6;
 688   5                  Fasheng_Flag=7;
 689   5                  break;
 690   5                  case 0xCA: 
 691   5                  //P0_7 = ~P0_7;
 692   5                  Fasheng_Flag=8;
 693   5                   break;
 694   5                              
 695   5                              case 0xCB:
 696   5                  Fasheng_Flag=9;
 697   5                  break;
 698   5      
 699   5                              case 0xAA:
 700   5                  Fasheng_Flag=0;
 701   5                  break;
 702   5      
 703   5                              case 0x2A:
 704   5                  Fasheng_Flag=11;    //////music+++++++++++++++++
 705   5                  
 706   5                  break;
 707   5                  
 708   5                              case 0x2B:
 709   5                  Fasheng_Flag=12;    //////music------------------
 710   5                  
 711   5                  break;
 712   5                  
 713   5      
 714   5                              case 0x52:
 715   5                  Fasheng_Flag=13;    //////对比+++++++
 716   5                  
 717   5                  break;
 718   5                  
 719   5                              case 0x53:
 720   5                  Fasheng_Flag=14;    //////对比--------
 721   5                  
 722   5                  break;
 723   5      
 724   5                              case 0x32:
 725   5                  Fasheng_Flag=15;    //////色彩+++++++
 726   5                  
 727   5                  break;
 728   5      
 729   5                              case 0x33:
 730   5                  Fasheng_Flag=16;    //////色彩-------
 731   5                  
 732   5                  break;
 733   5      
 734   5                              case 0x2C:
 735   5                  Fasheng_Flag=17;    //////亮度+++++
 736   5                  
 737   5                  break;
C51 COMPILER V7.02a   CDLE_J20_MAIN                                                        04/28/2007 10:09:25 PAGE 13  

 738   5      
 739   5                              case 0x2D:
 740   5                  Fasheng_Flag=18;    //////亮度-------
 741   5                  
 742   5                  break;
 743   5      
 744   5                  case 0xD2: //按关闭电源键,关闭所有继电器
 745   5                  //P0 = 0xFF;
 746   5      
 747   5                  Fasheng_Flag=10;
 748   5                  
 749   5                  break;
 750   5               }
 751   4                 if(Fasheng_Flag<10)
 752   4                         {
 753   5                   if(KEY==1)
 754   5                  {
 755   6                     if(!keytimes)  ///////////0 对应第一次输入
 756   6                     {X0temp=Fasheng_Flag*10;q=Fasheng_Flag;}
 757   6                     else
 758   6                     {X0temp+=Fasheng_Flag;b=Fasheng_Flag;}
 759   6                     keytimes=!keytimes;
 760   6                  }
 761   5                 
 762   5                  else if(KEY==2)
 763   5                  {
 764   6                     if(!keytimes)  ///////////0 对应第一次输入
 765   6                     {Y0temp=Fasheng_Flag*10;s=Fasheng_Flag;}
 766   6                     else
 767   6                     {Y0temp+=Fasheng_Flag;g=Fasheng_Flag;}
 768   6                     keytimes=!keytimes;
 769   6                  }
 770   5                }
 771   4                 }
 772   3               }
 773   2         }
 774   1              
 775   1      
 776   1        
 777   1        
 778   1      }
 779          
 780          void Int0INT(void) interrupt 0 using 2
 781          {
 782   1      
 783   1         EX0 = 0; //外部中断0关闭
 784   1         
 785   1        // P2_5=~P2_5;
 786   1         Button=1;
 787   1      
 788   1         TL0=0x1E; //设定时值为800us
 789   1         TH0=0xFD;
 790   1       
 791   1         for(IRCON=0; IRCON<3; IRCON++)
 792   1         IRCode[IRCON] = 0;
 793   1         IRCON = 0;
 794   1         IRCON2 = 0; //计数清零
 795   1      
 796   1        
 797   1         
 798   1         TR0 = 1;     /////////////记数
 799   1      }
C51 COMPILER V7.02a   CDLE_J20_MAIN                                                        04/28/2007 10:09:25 PAGE 14  

 800          
 801          void Timer1INT(void) interrupt 3 using 3        //T1
 802          {  
 803   1      
 804   1         
 805   1          TL1 = 0x77;         /////// 定时5ms
 806   1          TH1 = 0xEC;
 807   1          if(KEY)
 808   1          Shangshuo++;
 809   1          else
 810   1              {
 811   2               Shangshuo=0;
 812   2              }
 813   1      
 814   1              if(Shangshuo>100)
 815   1          Shangshuo=0;
 816   1      
 817   1      
 818   1          j++;
 819   1              if(j>4)
 820   1              j=1; 
 821   1              switch(j)
 822   1              {
 823   2                
 824   2                 case 1:
 825   2                 if((KEY==2&&Shangshuo<50)||KEY==0||KEY==1)
 826   2             {
 827   3              P3_7=1;
 828   3                               // 0000 1110
 829   3              P3_5=1;
 830   3              P3_6=1;
 831   3                      P3_4=0;
 832   3                  P0=Disp[g];
 833   3                 }
 834   2                 break;
 835   2             case 2:
 836   2                 if((KEY==2&&Shangshuo<50)||KEY==0||KEY==1)
 837   2                 {
 838   3                  P3_4=1;          //0000 1101
 839   3              
 840   3              P3_6=1;
 841   3              P3_7=1;
 842   3                      P3_5=0;
 843   3                  P0=Disp[s];
 844   3                      }
 845   2                 break;
 846   2                
 847   2                 
 848   2              case 3:
 849   2                      if((KEY==1&&Shangshuo<50)||KEY==0||KEY==2)
 850   2                  {
 851   3                       P3_5=1;        ///0000 1011
 852   3               
 853   3               P3_7=1;
 854   3               P3_4=1;
 855   3                       P3_6=0;
 856   3                       P0=Disp[b];
 857   3                      }
 858   2                  break;
 859   2              case 4:
 860   2              if((KEY==1&&Shangshuo<50)||KEY==0||KEY==2)
 861   2                  {
C51 COMPILER V7.02a   CDLE_J20_MAIN                                                        04/28/2007 10:09:25 PAGE 15  

 862   3                    P3_6=1;           // 0000 0111
 863   3                
 864   3                P3_4=1;
 865   3                P3_5=1;
 866   3                        P3_7=0;
 867   3                    P0=Disp[q];
 868   3                      }
 869   2                  break;
 870   2            }
 871   1              
 872   1          ////////
 873   1      
 874   1      }
 875          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   5852    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     29    ----
   IDATA SIZE       =     59    ----
   BIT SIZE         =      2    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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