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

📄 receive.lst

📁 cc1100和STC单片机的无限接收器
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V7.06   RECEIVE                                                               04/12/2009 09:31:53 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE RECEIVE
OBJECT MODULE PLACED IN receive.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE receive.c LARGE BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include "reg52.h"
   2          #include "intrins.h"
   3          #include "CC1100.h"
   4          //6264的读写2008-9-21 16:11:00
   5          //-----------------------定义寻址的基址--------------------------------------------------------
   6          //#define base_Adr  0x060000   
   7          //-----------------------定义地址指针,指向基址--------------------------------------------------------
   8          //unsigned char xdata *ORAM_base_Adr = base_Adr;
   9          //------------------------------------------------------------------------------------------------------
  10          // 函数名称 ORAM_write 
  11          // 入口函数 SJAREG_ADR,setting
  12          // 出口函数 无
  13          // 函数功能 写外部数据存储区
  14          //------------------------------------------------------------------------------------------------------
  15          //void ORAM_write(unsigned char ORAM_ADR, unsigned char setting)
  16          //           {
  17          //                    *( ORAM_base_Adr+ ORAM_ADR)=setting;
  18          //            }
  19          //------------------------------------------------------------------------------------------------------
  20          // 函数名称 ORAM _read
  21          // 入口函数 ORAM _ADR
  22          // 出口函数 ORAM _data
  23          // 函数功能 读外部数据存储区
  24          //------------------------------------------------------------------------------------------------------
  25          //unsigned char ORAM_read(unsigned char ORAM_ADR)
  26          //{
  27          //unsigned char ORAM_data;
  28          //ORAM_data=*( ORAM_base_Adr+ ORAM_ADR);
  29          //return(ORAM_data);
  30          //}
  31          
  32          
  33          #define         INT8U                           unsigned char
  34          #define         INT16U                          unsigned int
  35          
  36          
  37          #define         WRITE_BURST             0x40                                            //连续写入
  38          #define         READ_SINGLE             0x80                                            //读
  39          #define         READ_BURST              0xC0                                            //连续读
  40          #define         BYTES_IN_RXFIFO     0x7F                                                //接收缓冲区的有效字节数
  41          #define         CRC_OK              0x80                                                //CRC校验通过位标志
  42          
  43          
  44          
  45          #define         INT8U           unsigned char 
  46          #define         INT16U          unsigned int
  47          
  48          INT8U  arrRx[67]=0;
  49          INT8U i;
  50          INT8U leng;
  51          
  52          
  53          sbit    GDO0   =P3^2;
  54          sbit    GDO2   =P3^3;
  55          sbit    CSN        =P1^4;
C51 COMPILER V7.06   RECEIVE                                                               04/12/2009 09:31:53 PAGE 2   

  56          sbit    MOSI   =P1^5;
  57          sbit    MISO   =P1^6;
  58          sbit    SCLK   =P1^7;
  59          //sbit    spz    =P2^4;
  60          sbit    LED1   =P2^1;
  61          sbit    LED2   =P2^1;
  62          sbit    key    =P2^0;
  63          
  64          
  65          
  66          
  67          
  68          /****************************************************************************************
  69          //全局变量定义
  70          /****************************************************************************************/
  71          //INT16U TimeOutCount[2]={0,0};                                                 //超时计数器
  72          INT8U code PaTabel[8] = {0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0 ,0xC0};//输出为+10dm时的功率
  73          
  74          //*****************************************************************************************
  75          //函数名:delay(unsigned int s)
  76          //输入:时间
  77          //输出:无
  78          //功能描述:普通廷时
  79          //*****************************************************************************************             
  80          void delay(unsigned int s)
  81          {
  82   1              unsigned int i;
  83   1              for(i=0; i<s; i++);
  84   1              for(i=0; i<s; i++);
  85   1      }
  86          
  87          
  88          void halWait(INT16U timeout) {
  89   1          do {
  90   2              _nop_();//15us延时
  91   2                      _nop_();
  92   2                      _nop_();
  93   2                      _nop_();
  94   2                      _nop_();
  95   2                      _nop_();
  96   2                      _nop_();
  97   2                      _nop_();
  98   2                      _nop_();
  99   2                      _nop_();
 100   2                      _nop_();
 101   2                      _nop_();
 102   2                      _nop_();
 103   2                      _nop_();
 104   2                      _nop_(); 
 105   2          } while (--timeout);
 106   1      }
 107          
 108          
 109          
 110          /*****************************************************************************************
 111          //函数名:UartInit()
 112          //输入:无
 113          //输出:无
 114          //功能描述:串口初始化程序
 115          /*****************************************************************************************/
 116          void UartInit(void)
 117          {
C51 COMPILER V7.06   RECEIVE                                                               04/12/2009 09:31:53 PAGE 3   

 118   1              
 119   1              SCON = 0x50;                        // uart in mode 1 (8 bit), REN=1
 120   1              TMOD = TMOD | 0x20 ;       // Timer 1 in mode 2 
 121   1              TH1  = 0xFD;               // 9600 Bds at 11.059MHz 
 122   1              TL1  = 0xFD;                    // 9600 Bds at 11.059MHz
 123   1              TR1  = 1;                                                    // Timer 1 run
 124   1      }
 125          
 126          
 127          /*****************************************************************************************
 128          //函数名:void TimerInit(void)
 129          //输入:无
 130          //输出:无
 131          //功能描述:定时器0初始化程序
 132          /*****************************************************************************************/
 133          void SpiInit(void)//spi口的初始化
 134          {
 135   1              CSN=0;
 136   1              SCLK=0;
 137   1              CSN=1;
 138   1      }
 139          
 140          
 141          
 142          
 143          /*****************************************************************************************
 144          //函数名:CpuInit()
 145          //输入:无
 146          //输出:无
 147          //功能描述:SPI初始化程序
 148          /*****************************************************************************************/
 149          void CpuInit(void)
 150          {
 151   1                      UartInit();
 152   1      //              TimerInit();
 153   1                      SpiInit();
 154   1                      delay(5000);
 155   1      }
 156                  
 157          
 158          
 159          
 160          //*****************************************************************************************
 161          //函数名:ResetTimer(INT8U n)
 162          //输入:要复位的计时器
 163          //输出:无
 164          //功能描述:复位计时器
 165          //*****************************************************************************************
 166          //void ResetTimer(INT8U n)
 167          //{
 168          //      ET0 = 0;                                    // Disable Timer0 interrupt
 169          //      timer[n & 0x01] = 0;                        // Clear timer[n]
 170          //      ET0 = 1;                                    // Enable Timer0 interrupt
 171          //}
 172          
 173          
 174          
 175          
 176          //*****************************************************************************************
 177          //函数名:INT16U ReadTimer(INT8U n)
 178          //输入:要读的计时器
 179          //输出:读出值
C51 COMPILER V7.06   RECEIVE                                                               04/12/2009 09:31:53 PAGE 4   

 180          //功能描述:读计时器
 181          //*****************************************************************************************
 182          //INT16U ReadTimer(INT8U n)
 183          //{
 184          //      INT16U tmp;
 185          //      ET0 = 0;                                    // Disable Timer0 interrupt
 186          //      tmp = timer[n];                             // Clear timer[n]
 187          //      ET0 = 1;                                    // Enable Timer0 interrupt
 188          //      return tmp;
 189          //}
 190          //*/
 191          /*****************************************************************************************
 192          //函数名:SendCh(ch)
 193          //输入:无
 194          //输出:无
 195          //功能描述:串口发送一个字符
 196          /*****************************************************************************************/
 197          void SendCh(INT8U ch)
 198          {
 199   1              SBUF = ch;
 200   1              while(!TI);//等待发送
 201   1              TI = 0;
 202   1      }
 203          
 204          
 205          /*****************************************************************************************
 206          //函数名:void SendStr(INT8U *arr)
 207          //输入:发送的字符串
 208          //输出:无
 209          //功能描述:发送一个字符串
 210          /*****************************************************************************************/

⌨️ 快捷键说明

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