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

📄 srt8300.lst

📁 C51操作5767收音机芯片(内置杭州的几个台)
💻 LST
字号:
C51 COMPILER V7.09   SRT8300                                                               07/05/2007 19:59:44 PAGE 1   


C51 COMPILER V7.09, COMPILATION OF MODULE SRT8300
OBJECT MODULE PLACED IN SRT8300.obj
COMPILER INVOKED BY: D:\A\KEIL\C51\BIN\C51.EXE SRT8300\SRT8300.c BROWSE DEBUG OBJECTEXTEND PRINT(.\SRT8300.lst) OBJECT(S
                    -RT8300.obj)

line level    source

   1          #include "SRT8300.h"
   2          
   3          //enum {R89, R91_8, R93, R95, R99_6, R103_2, R104_5, R105_4, R107} Radio_fre;
   4          code unsigned char WriteReg_RadioFRE[] = {0x2a,0x55,0x5c, 
   5                                                                                          0x2b,0xab,0x4c, 
   6                                                                                          0x2c,0x3d,0x4c, 
   7                                                                                          0x2d,0x31,0x3c, 
   8                                                                                          0x2f,0x63,0x2c, 
   9                                                                                          0x31,0x1a,0x1c, 
  10                                                                                          0x31,0xb9,0x1c,  
  11                                                                                          0x32,0x27,0x1c, 
  12                                                                                          0x32,0xea,0x0c};
  13          
  14          
  15          
  16          unsigned char WriteReg[32]={SRT8300_REGDATA_1,SRT8300_REGDATA_2,SRT8300_REGDATA_3,SRT8300_REGDATA_4,
  17                                                                  SRT8300_REGDATA_5,SRT8300_REGDATA_6,SRT8300_REGDATA_7,SRT8300_REGDATA_8,
  18                                                                  SRT8300_REGDATA_9,SRT8300_REGDATA_10,SRT8300_REGDATA_11,SRT8300_REGDATA_12,
  19                                                                  SRT8300_REGDATA_13,SRT8300_REGDATA_14,SRT8300_REGDATA_15,SRT8300_REGDATA_16,
  20                                                                  SRT8300_REGDATA_17,SRT8300_REGDATA_18,SRT8300_REGDATA_19,SRT8300_REGDATA_20,
  21                                                                  SRT8300_REGDATA_21,SRT8300_REGDATA_22,SRT8300_REGDATA_23,SRT8300_REGDATA_24,
  22                                                                  SRT8300_REGDATA_25,SRT8300_REGDATA_26,SRT8300_REGDATA_27,SRT8300_REGDATA_28,
  23                                                                  };
  24          unsigned char ReadReg[10];
  25          
  26          
  27          ///////////////////////////////////////////////////////////////////
  28          /// <summary>
  29          /// 3wire模式写入数据
  30          /// </summary>
  31          void SendData3Wire()
  32          {       
  33   1              unsigned char i,j;
  34   1              unsigned char _mask;
  35   1              unsigned char _d;
  36   1              /// 设置为3wire通信模式
  37   1              BMOD = 1;
  38   1              /// 时钟置低
  39   1              if( SCLK )
  40   1                      SCLK = 0;
  41   1              /// 设置读写模式为低
  42   1              if( SEN )
  43   1                      SEN = 0;
  44   1      
  45   1              /// 使总线有效
  46   1              BEN = 1;
  47   1              /// 产生上升沿,设置为写模式
  48   1              /// 2006/11/14日修改为5767兼容模式
  49   1              SEN = 1;
  50   1              SEN = 0;
  51   1              SEN = 1;
  52   1      
  53   1              // 循环发送寄存器数据
  54   1              for(i=0;i<4;i++)//32;i++)
C51 COMPILER V7.09   SRT8300                                                               07/05/2007 19:59:44 PAGE 2   

  55   1              {
  56   2                      _mask = 0x80;   // 0x1 << 1;
  57   2                      // 循环发送每位数据
  58   2                      for(j=0;  j<8;  j++)
  59   2                      {
  60   3                              // 发送数据
  61   3                              _d = ((_mask & WriteReg[i]) == _mask);
  62   3                              if( SDIO != _d)
  63   3                                      SDIO = _d ;
  64   3                              // 产生时钟上升沿
  65   3                              SCLK = 1;
  66   3                              // 复位时钟
  67   3                              SCLK = 0;
  68   3      
  69   3                              _mask >>= 1;
  70   3                      }
  71   2              }
  72   1              SEN = 1;
  73   1              // 使总线无效
  74   1              BEN =  0;
  75   1              SDIO = 1;
  76   1      }
  77          
  78          
  79          ///////////////////////////////////////////////////////////////////
  80          /// <summary>
  81          /// 3Wire 模式读出数据
  82          /// </summary>
  83          void ReadData3Wire()
  84          {
  85   1              unsigned char i,j;
  86   1              unsigned char _rec;
  87   1              /// 设置为3wire通信模式
  88   1              BMOD = 1;
  89   1              /// 时钟置低
  90   1              if( SCLK )      
  91   1                      SCLK = 0;
  92   1              /// 设置为写数据模式
  93   1              if( !SEN ) 
  94   1                      SEN = 1;
  95   1              /// 输出数据线置高,以实现线与逻辑
  96   1              if( !SDIO )
  97   1                      SDIO = 1;
  98   1      
  99   1              /// 使总线有效
 100   1              BEN = 1;
 101   1              /// 产生下降沿设置为读模式
 102   1              SEN= 0;
 103   1              SEN = 1;
 104   1              SEN = 0;
 105   1      
 106   1              // 循环发送寄存器数据
 107   1              for(i=0; i<4; i++)
 108   1              {
 109   2                      _rec = 0;
 110   2                      // 循环接收每位数据
 111   2                      for(j=0;j<8;j++)
 112   2                      {
 113   3                              _rec <<= 1;
 114   3                              // 产生时钟上升沿
 115   3                              SCLK = 1;
 116   3                              // 读入状态字
C51 COMPILER V7.09   SRT8300                                                               07/05/2007 19:59:44 PAGE 3   

 117   3                              _rec |= SDIO? 1:0;
 118   3                              // 复位时钟
 119   3                              SCLK = 0;
 120   3      
 121   3                      }
 122   2                      ReadReg[i] = _rec;
 123   2              }
 124   1      
 125   1              SEN = 1;
 126   1              // 使总线无效
 127   1              BEN = 0;
 128   1              SDIO = 1;
 129   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    147    ----
   CONSTANT SIZE    =     27    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     42    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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