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

📄 cc1100_tx.lst

📁 无线通信IC CC1100通过51控制数据发送
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   CC1100_TX                    03/30/2006 10:59:06 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE CC1100_TX
OBJECT MODULE PLACED IN CC1100_TX.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE CC1100_TX.c DEBUG OBJECTEXTEND PAG
                    -EWIDTH(79) PAGELENGTH(66)

stmt level    source

   1          #include <reg52.h>
   2          #include <intrins.h>
   3          #include "CC1100.h"
   4          
   5          
   6          #define         INT8U                           unsigned char
   7          #define         INT16U                          unsigned int
   8          
   9          #define         time0h                  (65535-1000)/256
  10          #define         time0l                  (65535-1000)%256                        //定时1MS
  11          #define         WRITE_BURST             0x40                                            //连续写入
  12          #define         READ_SINGLE             0x80                                            //读
  13          #define         READ_BURST              0xC0                                            //连续读
  14          #define         BYTES_IN_RXFIFO     0x7F                                                //接收缓冲区的有效字节数
  15          #define         CRC_OK              0x80                                                //CRC校验通过位标志
  16          
  17          
  18          
  19          #define         INT8U           unsigned char 
  20          #define         INT16U          unsigned int
  21          
  22          #define         FOSC            11059200        
  23          #define         BAUD            9600
  24          #define         TIMER1          0XFD    //256-(110592/(12*32*96))
  25          #define         TIMER0H         (65535-3*FOSC/12/1000)/256
  26          #define         TIMER0L         (65535-3*FOSC/12/1000)%256                      //定时3MSVR
  27          
  28          //---------------------------------------------------------------
             --------------------------------------------
  29          //内部寄存器定义
  30          //---------------------------------------------------------------
             --------------------------------------------
  31          //sfr           P4                      =       0xc0;   
  32          //sfr   ADC_CONTR       =       0xC5;
  33          //sfr   AUXR            =       0x8E;
  34          //sfr   ADC_DATA        =       0xC6;
  35          //sfr   P1_ADC_EN       =       0x97;
  36          /*
  37          sbit    DAT1    =       P3^5;
  38          sbit    DAT2    =       P3^4;
  39          sbit    DAT3    =       P3^3;
  40          sbit    DAT4    =       P3^2;
  41          sbit    DAT5    =       P4^3;
  42          sbit    DAT6    =       P1^7;
  43          sbit    DAT7    =       P1^6;
  44          sbit    DAT8    =       P1^5;
  45          sbit    DAT9    =       P1^4;
  46          sbit    DAT10   =       P4^2;  
  47          */
  48          //定义CC1100模块接口
  49          /*
  50          #define GDO1    DAT1
  51          #define GDO2    DAT2
  52          #define CSN             DAT4
  53          #define MOSI    DAT5
  54          #define MISO    DAT6
C51 COMPILER V7.06   CC1100_TX                    03/30/2006 10:59:06 PAGE 2   

  55          #define SCK             DAT7
  56          
  57          sbit    LED1    =       P4^1;
  58          sbit    LED2    =       P4^0;
  59          */
  60          sbit    DAT1    =       P2^0;
  61          sbit    DAT2    =       P2^1;
  62          sbit    DAT3    =       P2^2;
  63          sbit    DAT4    =       P2^3;
  64          sbit    DAT5    =       P2^4;
  65          sbit    DAT6    =       P2^5;
  66          
  67          #define GDO1    DAT1
  68          #define GDO2    DAT2
  69          #define CSN             DAT3
  70          #define MOSI    DAT4
  71          #define MISO    DAT5
  72          #define SCK             DAT6
  73          
  74          sbit    LED1    =       P1^6;
  75          sbit    LED2    =       P1^7;
  76          
  77          /****************************************************************
             -************************
  78          //全局变量定义
  79          /****************************************************************
             -************************/
  80          INT16U TimeOutCount[2]={0,0};                                                   //超时计数器
  81          INT8U PaTabel[8] = {0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC
             -0};
  82          
  83          
  84          //***************************************************************
             -**************************
  85          //函数名:delay(unsigned int s)
  86          //输入:时间
  87          //输出:无
  88          //功能描述:普通廷时
  89          //***************************************************************
             -**************************            
  90          delay(unsigned int s)
  91          {
  92   1              unsigned int i;
  93   1              for(i=0; i<s; i++);
  94   1              for(i=0; i<s; i++);
  95   1      }
  96          
  97          
  98          void halWait(INT16U timeout) {
  99   1          do {
 100   2              _nop_();
 101   2                      _nop_();
 102   2                      _nop_();
 103   2                      _nop_();
 104   2                      _nop_();
 105   2                      _nop_();
 106   2                      _nop_();
 107   2                      _nop_();
 108   2                      _nop_();
 109   2                      _nop_();
 110   2                      _nop_();
 111   2                      _nop_();
 112   2                      _nop_();
 113   2                      _nop_();
C51 COMPILER V7.06   CC1100_TX                    03/30/2006 10:59:06 PAGE 3   

 114   2                      _nop_(); 
 115   2          } while (--timeout);
 116   1      }
 117          
 118          /****************************************************************
             -*************************
 119          //函数名:UartInit()
 120          //输入:无
 121          //输出:无
 122          //功能描述:串口初始化程序
 123          /****************************************************************
             -*************************/
 124          void UartInit(void)
 125          {
 126   1              SCON = 0x50;            //串口方式1,允许接收
 127   1              TMOD = 0x21;            //定时器1工作方式2,定时器0工作方式1
 128   1              TH1 = TIMER1;   
 129   1              TL1 = TIMER1;   
 130   1              TR1 = 1;                //启动定时器1
 131   1      }
 132          
 133          
 134          /****************************************************************
             -*************************
 135          //函数名:void TimerInit(void)
 136          //输入:无
 137          //输出:无
 138          //功能描述:定时器0初始化程序
 139          /****************************************************************
             -*************************/
 140          void TimerInit(void)
 141          {
 142   1              TH0 = TIMER0H;
 143   1              TL0 = TIMER0L;
 144   1              ET0 = 1;                        //定时器0中断允许
 145   1              TF0 = 0;
 146   1              TR0 = 1;                        //启动定时器0
 147   1              EA = 1;                         //开全局中断
 148   1      }
 149          
 150          void SpiInit(void)
 151          {
 152   1              CSN=0;
 153   1              SCK=0;
 154   1              CSN=1;
 155   1      }
 156          
 157          /****************************************************************
             -*************************
 158          //函数名:CpuInit()
 159          //输入:无
 160          //输出:无
 161          //功能描述:SPI初始化程序
 162          /****************************************************************
             -*************************/
 163          CpuInit(void)
 164          {
 165   1                      UartInit();
 166   1      //              TimerInit();
 167   1                      SpiInit();
 168   1                      delay(5000);
 169   1      }
 170                  
 171          /*
C51 COMPILER V7.06   CC1100_TX                    03/30/2006 10:59:06 PAGE 4   

 172          //***************************************************************
             -**************************
 173          //函数名:ResetTimer(INT8U n)
 174          //输入:要复位的计时器
 175          //输出:无
 176          //功能描述:复位计时器
 177          //***************************************************************
             -**************************
 178          void ResetTimer(INT8U n)
 179          {
 180                  ET0 = 0;                                    // Disable Timer0 in
             -terrupt
 181                  timer[n & 0x01] = 0;                        // Clear timer[n]
 182                  ET0 = 1;                                    // Enable Timer0 int
             -errupt
 183          }
 184          
 185          
 186          //***************************************************************
             -**************************
 187          //函数名:INT16U ReadTimer(INT8U n)
 188          //输入:要读的计时器
 189          //输出:读出值
 190          //功能描述:读计时器
 191          //***************************************************************
             -**************************
 192          INT16U ReadTimer(INT8U n)
 193          {
 194                  INT16U tmp;
 195                  ET0 = 0;                                    // Disable Timer0 in
             -terrupt
 196                  tmp = timer[n];                             // Clear timer[n]
 197                  ET0 = 1;                                    // Enable Timer0 int
             -errupt
 198                  return tmp;

⌨️ 快捷键说明

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