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

📄 bh1415f.lst

📁 数控调频发射器
💻 LST
字号:
C51 COMPILER V8.02   BH1415F                                                               03/03/2008 12:50:43 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE BH1415F
OBJECT MODULE PLACED IN BH1415F.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE BH1415F.c BROWSE DEBUG OBJECTEXTEND

line level    source

*** WARNING C500 IN LINE 1 OF BH1415F.C: LICENSE ERROR (R208: RENEW LICENSE ID CODE (LIC))

   1          #include<reg52.h>
   2          #include<intrins.h>
   3          //#define disdata P0吗    //段码输出口
   4          #define discan P2
   5          //#define condata P1;     //位码
   6          #define uint unsigned int
   7          #define uchar unsigned char
   8          //#define keyio P1
   9          sbit keyio=P3^7 ;
  10          uint data f_data={0x00},f_data1;         //频率数据,数据运算是暂存用
  11          sbit DA=P3^0;  //数据输入
  12          sbit CK=P3^1;   //时钟
  13          sbit CE=P3^2;   //片选
  14          //sbit DIN=P0^1;   //小数点控制
  15          //sbit monolamp=P1^0;  立体//立体声指示灯
  16          uint h;                         //      延时参数        
  17          uchar code du[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xff};
  18          uchar code we[4]={0xef,0xdf,0xbf,0x7f};
  19          uchar data display[4]={0x00,0x00,0x00,0x00};
  20          uchar bdata condata=0x08;               //1415控制字高五位,开机为立体声状态
  21          //sbit mono=condata^3;                                                                                    
             -                                                                                                             sbit mono=c
             -ondata^3;                        //单声道/立体声控制位
  22          uchar data concommand[2];
  23          uchar keytemp=0;
  24          void delay(uint t)
  25          {
  26   1              for(;t>0;t--);
  27   1      }
  28          scan()
  29          {
  30   1              uchar k;
  31   1              for(k=0;k<4;k++)
  32   1              {
  33   2              P0=du[display[k]];
  34   2               //if(k==1) {DIN=0;}
  35   2              discan=we[k];
  36   2              delay(50);
  37   2              P2=0xff;
  38   2              }
  39   1      }
  40          /******频率数据转换为显示用BCD码函数**********/
  41          turn_bcd()
  42          {
  43   1              display[3]=f_data/1000;if(display[3]==0){display[3]=10;}
  44   1              f_data1=f_data%1000;
  45   1              display[2]=f_data1/100;
  46   1              f_data1=f_data%100;
  47   1              display[1]=f_data1/10;                                                                                                  
             -                                                                                         
  48   1              display[0]=f_data1%10;
  49   1      }
  50          /*******控制字合成函数************/
  51          command()
C51 COMPILER V8.02   BH1415F                                                               03/03/2008 12:50:43 PAGE 2   

  52          {
  53   1              concommand[1]=f_data/256;
  54   1                      concommand[0]=f_data%256;
  55   1                      concommand[1]=concommand[1]+condata;
  56   1      }
  57          /*******写入1个字节函数*************/
  58          write(uchar val)
  59          {       
  60   1              uchar i;
  61   1              CE=1;
  62   1              for(i=8;i>0;i--)
  63   1              {
  64   2                      DA=val&0x01;
  65   2                      _nop_(); _nop_();_nop_();_nop_();
  66   2                 CK=1;
  67   2                      _nop_(); _nop_();_nop_();_nop_();
  68   2                      CK=0;                                             
  69   2                      val=val/2;
  70   2                      
  71   2              }
  72   1              CE=0;
  73   1      }
  74          /*********控制字写入1415函数**************/
  75          w1415()
  76          {
  77   1              write(concommand[0]);
  78   1                      write(concommand[1]);
  79   1      }
  80          /**********频率刷新********/
  81          fup()
  82          {
  83   1              turn_bcd();
  84   1              command();
  85   1              w1415();
  86   1      }
  87          read_key()
  88          {       if(keyio==0)
  89   1              {
  90   2              delay(500                                                                                                
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                                                                                                                        
             -                );
  91   2              if(keyio==0)
  92   2              {
  93   3                      keytemp++;
  94   3                      if(keytemp==16)
  95   3                      keytemp=0;
  96   3                      }
  97   2              switch(keytemp)
  98   2                      {
  99   3                              case 15 :{f_data++;if(f_data>1099){f_data=1099;}fup();break;}
 100   3      
 101   3                              case 14 :{f_data--;if(f_data<800){f_data=800;}fup();break;}
 102   3      
 103   3                              //case 190 :{mono=~mono;if(mono){monolamp=0;} else monolamp=1;fup();break;}
 104   3      
C51 COMPILER V8.02   BH1415F                                                               03/03/2008 12:50:43 PAGE 3   

 105   3                              case 13 :{f_data=1090;fup();break;}
 106   3      
 107   3                              case 12 :{f_data=1070;fup();break;}
 108   3      
 109   3                              case 11 :{f_data=1050;fup();break;}
 110   3      
 111   3                              case 10 :{f_data=1030;fup();break;}
 112   3      
 113   3                              case 9 :{f_data=1000;fup();break;}
 114   3      
 115   3                              case 8 :{f_data=970;fup();break;}
 116   3      
 117   3                              case 7 :{f_data=950;fup();break;}
 118   3      
 119   3                              case 6 :{f_data=930;fup();break;}
 120   3      
 121   3                              case 5 :{f_data=900;fup();break;}
 122   3      
 123   3                              case 4 :{f_data=870;fup();break;}
 124   3      
 125   3                              case 3 :{f_data=850;fup();break;}
 126   3      
 127   3                              case 2 :{f_data=830;fup();break;}
 128   3      
 129   3                              case 1 :{f_data=800;fup();break;}
 130   3      
 131   3                              default :break ;
 132   3              }
 133   2              }
 134   1              
 135   1      
 136   1                      
 137   1              /*keyio=0xf0;
 138   1              keytemp=(~keyio)&0xf0;
 139   1              if(keytemp!=0)
 140   1              {
 141   1                      keytemp=keyio;
 142   1                      keyio=0x0f;
 143   1                      keytemp=keytemp|keyio;
 144   1                      while(((~keyio)&0x0f)!=0);
 145   1                      switch(keytemp)
 146   1                      {       
 147   1                              case 238 :{f_data++;if(f_data>1099){f_data=1099;}fup();break;}
 148   1      
 149   1                              case 222 :{f_data--;if(f_data<800){f_data=800;}fup();break;}
 150   1      
 151   1                              //case 190 :{mono=~mono;if(mono){monolamp=0;} else monolamp=1;fup();break;}
 152   1      
 153   1                              case 126 :{f_data=1090;fup();break;}
 154   1      
 155   1                              case 237 :{f_data=1070;fup();break;}
 156   1      
 157   1                              case 221 :{f_data=1050;fup();break;}
 158   1      
 159   1                              case 189 :{f_data=1030;fup();break;}
 160   1      
 161   1                              case 125 :{f_data=1000;fup();break;}
 162   1      
 163   1                              case 235 :{f_data=970;fup();break;}
 164   1      
 165   1                              case 219 :{f_data=950;fup();break;}
 166   1      
C51 COMPILER V8.02   BH1415F                                                               03/03/2008 12:50:43 PAGE 4   

 167   1                              case 187 :{f_data=930;fup();break;}
 168   1      
 169   1                              case 123 :{f_data=900;fup();break;}
 170   1      
 171   1                              case 231 :{f_data=870;fup();break;}
 172   1      
 173   1                              case 215 :{f_data=850;fup();break;}
 174   1      
 175   1                              case 183 :{f_data=830;fup();break;}
 176   1      
 177   1                              case 119 :{f_data=800;fup();break;}
 178   1      
 179   1                              default :break;
 180   1                      
 181   1                      }
 182   1              }
 183   1              keyio=0xff;*/
 184   1      }
 185           main()
 186          {
 187   1              P0=0xff;
 188   1              discan=0xff;
 189   1              keyio=0xff;
 190   1              DA=0;CK=0;CE=0;
 191   1              for(h=0;h<4;h++)
 192   1              {
 193   2                      display[h]=8;   
 194   2              }
 195   1              for(h=0;h<500;h++)
 196   1              {
 197   2                      scan();
 198   2              }
 199   1              f_data=1000;
 200   1      //      monolamp=0;
 201   1              fup();
 202   1              while(1)
 203   1              {
 204   2                      read_key();
 205   2                      scan();
 206   2              }
 207   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    541    ----
   CONSTANT SIZE    =     15    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     14    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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