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

📄 fm.lst

📁 车载SCALER模块源程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
 175   1      if(AM_radio_freq >= 1538)
 176   1               buffer = 0x0b;
 177   1       Tun_Buff[0] |= buffer ;
 178   1        }
C51 COMPILER V7.06   FM                                                                    12/11/2007 11:24:26 PAGE 4   

 179          
 180          bit stable_check(void)
 181           {
 182   1          data unsigned int i ,j;
 183   1              j = 0;
 184   1              for( i=0;i<2000;i++)
 185   1                 {
 186   2                 if (StopIn() == 1)
 187   2                    j++;
 188   2                       // Delay(500);
 189   2                 }
 190   1              if (j>200)
 191   1                return (1);
 192   1              else return (0);
 193   1      
 194   1      
 195   1       }
 196          void  Radio_FreqToPC(void)
 197           {
 198   1        volatile unsigned long freqbuffer ;
 199   1        if(FM_AM_Mode == 1)   
 200   1          {
 201   2              freqbuffer = ( FM_radio_freq + 10700 ) /50 -32;
 202   2      //      Radio_PLL_FMISet();
 203   2              }
 204   1        else
 205   1          {
 206   2      
 207   2          freqbuffer = ( AM_radio_freq + 10700 ) -32;
 208   2              }
 209   1              Tun_Buff[1] = (unsigned char)(freqbuffer);
 210   1              Tun_Buff[2] = (unsigned char)(freqbuffer >> 8);
 211   1      
 212   1          WriteTunerRegister(TUNVOLT_AREA);
 213   1          WriteTunerRegister(PLL_AREA);
 214   1          Tun_Buff[5] = ( Tun_Buff[5]&0x7f );
 215   1          WriteTunerRegister(IF_SAMPLE_AREA);
 216   1      
 217   1       }
 218          
 219           void  Radio_AMToPC(void)
 220           {
 221   1          volatile unsigned int ambuffer ;
 222   1          ambuffer = ( AM_radio_freq + 10700 ) -32;
 223   1              
 224   1              Tun_Buff[1] = (unsigned char)(ambuffer);
 225   1              Tun_Buff[2] = (unsigned char)(ambuffer >> 8);
 226   1      
 227   1          //WriteTunerRegister(TUNVOLT_AREA);
 228   1          WriteTunerRegister(PLL_AREA);
 229   1         // Tun_Buff[5] = ( Tun_Buff[5]&0x7f );
 230   1         // WriteTunerRegister(IF_SAMPLE_AREA);
 231   1      
 232   1       }
 233          
 234              
 235          void Radio_main(void)
 236           {
 237   1         /***********************************
 238   1         if( (Radiopwron=1)&&(first_turn=1))
 239   1             {
 240   1               void TunerRegister_Init();
C51 COMPILER V7.06   FM                                                                    12/11/2007 11:24:26 PAGE 5   

 241   1                       first_turn=0;
 242   1                  }
 243   1         **********************************/
 244   1        
 245   1           data unsigned counter;
 246   1              if (FM_AM_Mode)
 247   1                {  
 248   2                   TunerRegister_Init();
 249   2                       for(counter=0;counter<=1000;counter++)
 250   2                 {
 251   3                    if(FM_radio_freq > 108000)   FM_radio_freq = 87500; //FM 87.5MHz-108MHz
 252   3                                if(FM_radio_freq < 87500)    FM_radio_freq = 108000; //FM 87.5MHz-108MHz
 253   3                        if (Seekup==1)
 254   3                               {
 255   4                        FM_radio_freq += 100;
 256   4                                   }
 257   3                            else
 258   3                               {
 259   4                                       FM_radio_freq -= 100;
 260   4                                   }
 261   3                               
 262   3                               Radio_PLL_FMISet();
 263   3                               Radio_FreqToPC();
 264   3                   check = stable_check();
 265   3                               if (check == 1)
 266   3                               break;
 267   3                  }
 268   2      
 269   2                }
 270   1               else
 271   1                {
 272   2          // TunerRegister_Init();
 273   2              ReadTunerEEPROM(10,49,&Tun_Buff[0]);
 274   2       /************************************   
 275   2                  Tun_Buff[0]   = 0xd0;
 276   2              Tun_Buff[5]  &= 0x48;
 277   2              Tun_Buff[5]  |= 0xaa;
 278   2              Tun_Buff[6]   = 0x81;
 279   2              //      Tun_Buff[7]  &= 0xf3;
 280   2              Tun_Buff[7]   = 0x21;
 281   2              Tun_Buff[14]  = 0xf5;
 282   2              Tun_Buff[23]  = 0x58;
 283   2       ************************************/
 284   2      
 285   2              Tun_Buff[0]   = 0xd0;
 286   2              Tun_Buff[5]   = 0x2a;
 287   2              Tun_Buff[6]   = 0x01;
 288   2              Tun_Buff[7]   = 0x21;
 289   2              Tun_Buff[14]  = 0xf5;
 290   2              Tun_Buff[18]  = 0xf8;
 291   2              Tun_Buff[23]  = 0x58;
 292   2      /**************************************
 293   2              Tun_Buff[5]   &= 0xc7;
 294   2              Tun_Buff[5]   |= 0x28;
 295   2              Tun_Buff[6]   &= 0xe0;
 296   2              Tun_Buff[6]   |= 0x01;
 297   2              Tun_Buff[7]   &= 0xf3;
 298   2              Tun_Buff[14]  &= 0x04;
 299   2                  Tun_Buff[14]  |= 0xf1;
 300   2      ******************************************/
 301   2      
 302   2              WriteTunerRegister(0,31);
C51 COMPILER V7.06   FM                                                                    12/11/2007 11:24:26 PAGE 6   

 303   2              WriteTunerRegister(32,39);
 304   2      
 305   2              
 306   2         //**********************************************************
 307   2         //*********************************************************
 308   2                      for(counter=0;counter<=200;counter++)
 309   2                         {
 310   3                           if((AM_radio_freq > 1629)||(AM_radio_freq < 540))
 311   3                                   AM_radio_freq = 540;                                                    
 312   3                           if(Seekup==1)
 313   3                                 {
 314   4                       AM_radio_freq += 9;
 315   4                                 }
 316   3                               else
 317   3                                   AM_radio_freq -= 9;
 318   3                           LED_GrnOn();
 319   3                           Delay(1000);
 320   3                               Radio_PLL_AMISet();
 321   3                               Radio_AMToPC();
 322   3      
 323   3                               Tun_Buff[7]   = 0x20;
 324   3              
 325   3                               Tun_Buff[23]   = 0x68;
 326   3                               WriteTunerRegister(7,7);
 327   3                              
 328   3                   WriteTunerRegister(23,23);
 329   3      
 330   3                               //Tun_Buff[5] = ( Tun_Buff[5]&0x7f );
 331   3                 //  WriteTunerRegister(IF_SAMPLE_AREA);
 332   3                   check = stable_check();
 333   3                               if (check == 1)
 334   3                               break;
 335   3      
 336   3                 }
 337   2            
 338   2                }
 339   1          
 340   1         }
 341             


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1377    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     40      16
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      8       8
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      4    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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