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

📄 main.lst

📁 NRF9E5简易表演程序 用于无线收发数据。
💻 LST
字号:
C51 COMPILER V7.08   MAIN                                                                  01/05/2006 16:42:05 PAGE 1   


C51 COMPILER V7.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c OPTIMIZE(9,SPEED) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*= main.c (nRF9E5 DEMO) ===================================================================
   2           *
   3           * Copyright (C) 2005
   4           *
   5           * This file is distributed in the hope that it will be useful, but WITHOUT WARRANTY OF ANY KIND.
   6           *
   7           * Author(s): WL
   8           *
   9           * COMPILER:
  10           *
  11           *   This program has been tested with Keil C51 V7.08 and 7.09
  12           *
  13           *  
  14           *
  15           *==================================================================================================
  16          */
  17            // 
  18            //       01/06/2005   change to not hop, max power  
  19            //---------------------------------------------------------
  20                 
  21          #include <Nordic\reg9e5.h>
  22          #include "util.h"
  23          #include "uart.h"
  24          #include "radio.h"
  25          #include "lm35.h"
  26          void  TEST(void);
  27          void ReceiveFile(void);
  28          void send_data(unsigned char num);
  29          void TransmitFile(void);
  30          const char  ID[] =  "9E5DEMO1234567907654"; 
  31          static unsigned char idata buf[25];
  32          sbit LEDG  =P0^6;
  33          sbit LEDR  =P0^5;
  34          sbit PWM   =P0^7;
  35          sbit KEYR  =P0^3; 
  36          sbit KEYT  =P0^4;
  37          unsigned char aaa,SQC;
  38          unsigned char bbb;
  39          unsigned char ccc;
  40          unsigned char ddd,EEE;
  41          unsigned char conter;                   //how many pack is have
  42          unsigned int bh;
  43          
  44          void Init(void)
  45          {
  46   1          unsigned char cklf;
  47   1      
  48   1          SPICLK = 0;                         // Max SPI clock
  49   1          SPI_CTRL = 0x02;                    // Connect internal SPI controller to Radio
  50   1      
  51   1          // Switch to 16MHz clock:
  52   1          RACSN = 0;
  53   1          SpiReadWrite(RRC | 0x09);
  54   1          cklf = SpiReadWrite(0) | 0x04;
  55   1          RACSN = 1;
C51 COMPILER V7.08   MAIN                                                                  01/05/2006 16:42:05 PAGE 2   

  56   1          RACSN = 0;
  57   1          SpiReadWrite(WRC | 0x09);
  58   1          SpiReadWrite(cklf); 
  59   1          RACSN = 1;
  60   1        
  61   1          P0_DIR=P0_DIR&0x1F;        //led p0.6  p0.5 P0.7 output  
  62   1          LEDR=0;
  63   1              LEDG=0;
  64   1          P0_DIR |= 0x18;             // P0.4 /3 is input
  65   1         
  66   1          InitTimer();
  67   1          EA = 1;
  68   1      }
  69          
  70          
  71          
  72          void main(void)
  73          {    
  74   1          
  75   1          Init();
  76   1              LEDR=0;
  77   1              LEDG=0;
  78   1              for (aaa=0;aaa<100;aaa++)
  79   1                {Delay100us(50);}
  80   1        
  81   1          LEDR=1;
  82   1              LEDG=1;
  83   1              for (aaa=0;aaa<100;aaa++)
  84   1                {Delay100us(100);}
  85   1          LEDR=0;
  86   1              LEDG=0;
  87   1         while(1)
  88   1          {
  89   2              //    case 'R':
  90   2                          if (KEYR==0)
  91   2                                {
  92   3                                  LEDR=1;
  93   3                          LEDG=0;
  94   3                      InitUart();
  95   3                      ReceiveFile();
  96   3                      }
  97   2                      
  98   2                  //case 'T':
  99   2                              if (KEYT==0)
 100   2                                {
 101   3                                  LEDR=0;
 102   3                          LEDG=1;
 103   3                      TransmitFile();
 104   3                                 }
 105   2          }
 106   1      }
 107          
 108          
 109          
 110          //----------------------------------UTAR OUT one byte-------------------
 111          void send_data(unsigned char num)
 112            {
 113   1          int j;
 114   1              TI=0;
 115   1              SBUF=num;
 116   1              for (j=0;j<10000;j++)
 117   1                {if (TI)
C51 COMPILER V7.08   MAIN                                                                  01/05/2006 16:42:05 PAGE 3   

 118   2                   {TI=0;
 119   3                         break;
 120   3               }
 121   2                 }
 122   1        }   
 123          //---------------------------------RECVIER-----------------------------
 124          void ReceiveFile(void)
 125          {
 126   1          unsigned char i2, n,j1;
 127   1         
 128   1          InitReceiver(20, 0);   //TEST IS  20BYTE
 129   1          while(1)
 130   1          {
 131   2              if (ReceivePacket(buf) != 0)
 132   2                      {
 133   3                           
 134   3                                 LEDG=0;
 135   3                                         LEDR=1;
 136   3                                      
 137   3                                         for (i2=0;i2<20;i2++)       
 138   3                                                { PutChar(buf[i2]);}
 139   3                             for (j1=0;j1<105;j1++)
 140   3                         {Delay100us(200);}      //LEDG  400mS
 141   3                                     LEDG=1;
 142   3                                     LEDR=1;                                                           
 143   3                                       }
 144   2                      else
 145   2                      {
 146   3                          LEDR=0; 
 147   3                                          LEDG=1;   // Indicates an error
 148   3                      }
 149   2                   
 150   2              n = 1;
 151   2              
 152   2          }
 153   1      }
 154          //----------------------------------------------------------------------------------------------
 155           void TransmitFile(void)
 156          {
 157   1          unsigned int temp,j;
 158   1          unsigned char  n;
 159   1              n=0;
 160   1          InitTransmitter(20, 0);
 161   1          while(1)
 162   1          {   
 163   2               for (aaa=0;aaa<20;aaa++)
 164   2                {buf[aaa]=ID[aaa];} 
 165   2               n=n+1;
 166   2                   buf[19]=n;
 167   2          
 168   2                  temp= ( TransmitPacket(buf));
 169   2                                 
 170   2                          if (temp==1)
 171   2                                  {  LEDR=0;
 172   3                                  
 173   3                                      }
 174   2                              else   {LEDG=0;                //Y LED OFF
 175   3                                   
 176   3                                     }
 177   2                               if (temp==1)
 178   2                 {  for (j=0;j<25;j++)
 179   3                         {Delay100us(200);}      //LEDG  20mS
C51 COMPILER V7.08   MAIN                                                                  01/05/2006 16:42:05 PAGE 4   

 180   3                          
 181   3                   LEDR=1;
 182   3                           }
 183   2                               else {
 184   3                                   for (j=0;j<25;j++)
 185   3                         {Delay100us(200);}      //LEDG  400mS
 186   3                             
 187   3                      LEDG=1;
 188   3                                     }
 189   2                    for (ccc=0;ccc<3;ccc++)           //2s
 190   2                {     
 191   3                        for (ddd=0;ddd<100;ddd++)        //delay 1s
 192   3                {Delay100us(100);}               //delay10ms
 193   3                        }
 194   2          }
 195   1      }
 196          
 197          
 198          //-------------------------send all---------------------------------------
 199          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    389    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     30       7
   IDATA SIZE       =     25    ----
   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 + -