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

📄 nrf905.lst

📁 能较好的实现无线通信 用点阵来实现 距离有100米 程序已通过调试
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V8.05a   NRF905                                                               06/08/2008 20:18:03 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE NRF905
OBJECT MODULE PLACED IN nrf905.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE nrf905.C LARGE BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<string.h>
   2          #include"def.h"
   3          #include"AT24C04.h"
   4          #include"DS18B20.h"
   5          //#include"Led.h"
   6          
   7          #define uchar unsigned char 
   8          #define uint  unsigned int
   9          
  10          
  11          #define WC              0x00                    // Write configuration register command
  12          #define RC              0x10                    // Read  configuration register command
  13          #define WTP             0x20                    // Write TX Payload  command
  14          #define RTP             0x21                    // Read  TX Payload  command
  15          #define WTA             0x22                    // Write TX Address  command
  16          #define RTA             0x23                    // Read  TX Address  command
  17          #define RRP             0x24                    // Read  RX Payload  command
  18          /*******************************************************************************************/
  19          typedef struct RFConfig
  20          {
  21                  uchar n;
  22                  uchar buf[10];
  23          }RFConfig;
  24          
  25          code RFConfig RxTxConf =
  26          {
  27                  10,
  28                  0x01, 0x0c, 0x44, 0x20, 0x20, 0xcc, 0xcc, 0xcc,0xcc, 0x58       
  29          };
  30          
  31          
  32          // The content of this struct is nRF905's initialize data.初始化数据
  33          // CH_NO=1;433MHZ;Normal Opration,No Retrans;RX,TX Address is 4 Bytes
  34          // RX TX Payload Width is 32 Bytes;Disable Extern Clock;Fosc=16MHZ
  35          // 8 Bits CRC And enable
  36          /*******************************************************************************************/
  37          uchar   TxBuf[6];
  38          uchar   RxBuf[32];
  39          /*******************************************************************************************/
  40          //uchar rsbrf,delayf,tf,Key;
  41          /*******************************************************************************************/
  42          uchar bdata DATA_BUF;
  43          sbit    flag    =DATA_BUF^7;
  44          sbit    flag1   =DATA_BUF^0;
  45          /*******************************************************************************************/
  46          
  47          sbit    Key = P0^7;
  48          
  49          
  50          
  51          
  52          /*******************************************************************************************/
  53          void InitIO(void);                      // Initialize IO port
  54          void Inituart(void);                    // initialize 232 uart
  55          void Config905(void);                   // Config nRF905 module配置NRF905模式
C51 COMPILER V8.05a   NRF905                                                               06/08/2008 20:18:03 PAGE 2   

  56          void SetTxMode(void);                   // Set nRF905 in Tx mode
  57          void SetRxMode(void);                   // Set nRF905 in Rx mode
  58          void TxPacket(void);                    // Send data by nRF905
  59          void RxPacket(void);                    // Recive data by nRF905
  60          void SpiWrite(uchar);                   // Write data to nRF905
  61          uchar SpiRead(void);                    // Read data to nRF905
  62          void Delay(uchar n);                    // Delay 100us
  63          //void Scankey(void);                           // Scan key
  64          void TxData (uchar x);                  // Send key_value to CRT display
  65          void comdebug(void);
  66          void delays_key();
  67          
  68          
  69          void Write_24c04_32bit(unsigned char count);
  70          void Read_24c04_32bit(unsigned char keycount);
  71          
  72          /*
  73          void delay_1ms(void)
  74          {
  75                  unsigned int i;
  76          
  77                  for (i=1; i<(unsigned int)(11*143-2)/12; ++i);   //xtal为晶振频率,单位MHz
  78          }
  79          
  80          void delay_ms(unsigned int n)
  81          {
  82                  unsigned int i;
  83          
  84                  for (i=0; i<n; ++i)
  85                          delay_1ms();
  86          }*/
  87          
  88          /*
  89           uchar *pUART;  //字符串指针
  90          void print_Char(unsigned char c)
  91                  {
  92                          SBUF = c;
  93                          c = '\0';
  94                      pUART=&c;
  95                          while (pUART!=0);
  96                  }
  97                  */
  98          /*******************************************************************************************/
  99          //function Delay100us();Delay 100us
 100          /*******************************************************************************************/
 101          void Delay(uchar n)
 102          {
 103   1              uint i;
 104   1              while(n--)
 105   1              for(i=0;i<80;i++);      
 106   1      }
 107          /*******************************************************************************************/
 108          
 109          
 110          /*
 111          
 112          unsigned char RxWriteIndex = 0;
 113          
 114          void UART_INT(void) interrupt 4
 115          {
 116                  if (RI)
 117                  {
C51 COMPILER V8.05a   NRF905                                                               06/08/2008 20:18:03 PAGE 3   

 118          
 119                                                                                          
 120                          TxBuf[RxWriteIndex++] = SBUF;
 121                          TxBuf[RxWriteIndex] = '\0';
 122          
 123                          RI = 0;
 124                  }
 125                  else    //TI
 126                  {
 127                          TI=0;   //发送中断标志位(SCON)
 128                          if (*pUART != '\0')
 129                          {
 130                                  SBUF = *pUART;
 131                                  pUART++;
 132                          }
 133                          else pUART=0;   //不会启动下一次发送
 134                          
 135                  }
 136          }
 137          void print_Str(const uchar*p)
 138          {
 139                  pUART=p;
 140                  TI=1;
 141                  while (pUART!=0);       //遇到 '\0',输出完毕
 142          }
 143          */
 144          
 145          //unsigned char  TXBuffer[32];
 146          unsigned char data      RXBuffer[32];
 147          unsigned char   count = 0;         //24c04写入
 148          unsigned char   keycount = 0;    //功能按键次数
 149          bit flg = 0;
 150          
 151          
 152          
 153          
 154          
 155          
 156          sbit P14=P1^4; //
 157          
 158          sbit P15=P1^5;//154
 159          
 160          unsigned char Digital[] =
 161          {
 162          0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x02,0x40,0x04,0x20,0x04,0x20,0x04,0x20,
 163          0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x02,0x40,0x01,0x80,0x00,0x00,0x00,0x00,      //"0"
 164          
 165          0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x07,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
 166          0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x07,0xC0,0x00,0x00,0x00,0x00,      //"1"
 167          
 168          0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xc0,0x04,0x20,0x04,0x20,0x04,0x20,0x00,0x40,
 169          0x00,0x40,0x00,0x80,0x01,0x00,0x02,0x00,0x04,0x20,0x07,0xe0,0x00,0x00,0x00,0x00,      //"2"
 170          
 171          0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xc0,0x04,0x20,0x04,0x20,0x00,0x40,0x01,0x80,
 172          0x00,0x40,0x00,0x20,0x00,0x20,0x04,0x20,0x04,0x40,0x03,0x80,0x00,0x00,0x00,0x00,      //"3"
 173          
 174          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0xc0,0x01,0x40,0x02,0x40,0x02,0x40,
 175          0x04,0x40,0x04,0x40,0x07,0xe0,0x00,0x40,0x00,0x40,0x01,0xe0,0x00,0x00,0x00,0x00,      //"4"
 176          
 177          0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xe0,0x04,0x00,0x04,0x00,0x04,0x00,0x05,0x80,
 178          0x06,0x40,0x00,0x20,0x00,0x20,0x04,0x20,0x04,0x40,0x03,0x80,0x00,0x00,0x00,0x00,      //"5"
 179          
C51 COMPILER V8.05a   NRF905                                                               06/08/2008 20:18:03 PAGE 4   

 180          0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xc0,0x02,0x40,0x04,0x00,0x04,0x00,0x05,0x80,
 181          0x06,0x40,0x04,0x20,0x04,0x20,0x04,0x20,0x02,0x40,0x01,0x80,0x00,0x00,0x00,0x00,       //"6"
 182          
 183          0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xe0,0x04,0x40,0x04,0x40,0x00,0x80,0x00,0x80,
 184          0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,       //"7"
 185          
 186          0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xc0,0x04,0x20,0x04,0x20,0x04,0x20,0x02,0x40,
 187          0x01,0x80,0x02,0x40,0x04,0x20,0x04,0x20,0x04,0x20,0x03,0xc0,0x00,0x00,0x00,0x00,       //"8"
 188          
 189          0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x02,0x40,0x04,0x20,0x04,0x20,0x04,0x20,
 190          0x02,0x60,0x01,0xa0,0x00,0x20,0x00,0x20,0x02,0x40,0x03,0x80,0x00,0x00,0x00,0x00,       //"9"
 191          };
 192          
 193          unsigned char Int[] =
 194          {
 195          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 196          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 197          
 198          0x02,0x00,0x02,0x00,0x02,0x10,0x7F,0xF8,
 199          0x42,0x10,0x42,0x10,0x7F,0xF0,0x42,0x10,
 200          0x42,0x10,0x7F,0xF0,0x42,0x10,0x02,0x00,
 201          0x02,0x04,0x02,0x04,0x01,0xFC,0x00,0x00,//电
 202          0x00,0x00,0x3F,0xF0,0x00,0x10,0x00,0x20,
 203          0x00,0x40,0x01,0x80,0x01,0x04,0xFF,0xFE,
 204          0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
 205          0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00,//子
 206          0x08,0x80,0x08,0x44,0x0F,0xFE,0x10,0x00,
 207          0x10,0x08,0x37,0xFC,0x50,0x00,0x90,0x08,
 208          0x17,0xFC,0x10,0x00,0x13,0xF8,0x12,0x08,
 209          0x12,0x08,0x12,0x08,0x13,0xF8,0x12,0x08,//信
 210          0x02,0x00,0x04,0x10,0x1F,0xF8,0x10,0x10,
 211          0x10,0x10,0x1F,0xF0,0x10,0x10,0x1F,0xF0,
 212          0x10,0x10,0x10,0x10,0x1F,0xF0,0x02,0x00,
 213          0x51,0x84,0x50,0x92,0x90,0x12,0x0F,0xF0,//息
 214          0x22,0x08,0x11,0x08,0x11,0x10,0x00,0x20,
 215          0x7F,0xFE,0x40,0x02,0x80,0x04,0x1F,0xE0,
 216          0x00,0x40,0x01,0x84,0xFF,0xFE,0x01,0x00,
 217          0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00,//学
 218          0x00,0x80,0x78,0x40,0x4F,0xFE,0x54,0x02,
 219          0x58,0x14,0x63,0xF8,0x50,0x00,0x48,0x08,
 220          0x4F,0xFC,0x48,0xA0,0x68,0xA0,0x50,0xA0,
 221          0x41,0x22,0x41,0x22,0x42,0x1E,0x4C,0x00, //院
 222          //0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 223          //0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 224          };
 225          
 226          unsigned char text[]=
 227          {
 228          
 229          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 230          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 231          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 232          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
 233          
 234          };
 235          
 236          unsigned char xiaoshudian[] = 
 237          {
 238          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 239          0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xc0,0x01,0xc0,0x01,0xc0,0x00,0x00,0x00,0x00       //"."
 240          };
 241          unsigned char sheshidu[] = 
C51 COMPILER V8.05a   NRF905                                                               06/08/2008 20:18:03 PAGE 5   

 242          {
 243          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x0c,0x44,0x12,0x42,0x12,0x80,0x0c,0x80,
 244          0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x42,0x00,0x44,0x00,0x38,0x00,0x00,0x00,0x00 //`C
 245          };
 246          
 247          
 248          
 249          
 250          void Delayled(unsigned char i)
 251          {
 252   1              unsigned char j;
 253   1              for(;i>0;i--)
 254   1                      for(j=0;j<80;j++)
 255   1                      {;}
 256   1      }
 257          
 258          void Display()
 259          {
 260   1              unsigned int a,e;
 261   1              unsigned char b,c,d=0;
 262   1              SCON=0;
 263   1      
 264   1      

⌨️ 快捷键说明

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