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

📄 spi.lst

📁 这是DS1620温度传感器的读写温度程序
💻 LST
字号:
C51 COMPILER V8.02   SPI                                                                   07/25/2007 14:04:26 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE SPI
OBJECT MODULE PLACED IN spi.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE spi.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <spi.h>
   2          
   3          unsigned char combuf[9];
   4          //unsigned char wr_combuf[8];
   5          bit timeover_flag=0;
   6          bit receive_ren=0;
   7          unsigned char counter = 0;
   8          void init_spi()
   9          {
  10   1              PCON = 0x00;   //smod = 0
  11   1              TMOD=0x20;     //定时器工作在方式2
  12   1              TH1=0xFA;
  13   1              TL1=0xFA;
  14   1      
  15   1              SM0 = 0;        //串行口工作在方式2,波特率为9600,采用查询方式工作
  16   1              SM1 = 1;
  17   1              SM2 = 0;
  18   1              
  19   1              ES = 1;
  20   1          RI = 0;
  21   1          TI = 0;
  22   1      
  23   1              PT0=0;
  24   1              PS=1;
  25   1          EA=1;
  26   1              TR1=1;
  27   1              REN = 1;// recieve
  28   1              
  29   1              timeover_flag=0;
  30   1      
  31   1      }
  32          
  33          
  34          void spi_send(unsigned char *buf,unsigned char len)
  35          {
  36   1              unsigned char i=0;
  37   1              ES=0;
  38   1              for(i=0;i<len;i++)
  39   1              {
  40   2                      
  41   2                   SBUF=buf[i];
  42   2                   while(!TI);
  43   2                   TI=0;
  44   2              }
  45   1              ES=1;
  46   1      }
  47          
  48          void receive (void) interrupt 4 using 3
  49          {
  50   1          unsigned char buf=0;
  51   1              RI = 0;
  52   1              buf=SBUF;
  53   1              timeover_flag=1;
  54   1              combuf[counter]=buf;
  55   1              counter++;
C51 COMPILER V8.02   SPI                                                                   07/25/2007 14:04:26 PAGE 2   

  56   1              if(counter>7)
  57   1              {
  58   2                      receive_ren=1;
  59   2                      counter=0;
  60   2              }
  61   1      }
  62          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    118    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     10       3
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      2    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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