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

📄 spi.lst

📁 C8051F340读写SD卡,带文件系统
💻 LST
字号:
C51 COMPILER V7.06   SPI                                                                   03/06/2010 17:37:24 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE SPI
OBJECT MODULE PLACED IN spi.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\c51.exe spi.c DB OE BR LARGE

stmt level    source

   1          #include "c8051f340.h"
   2          #include "spi.h"
   3          
   4          void delay(unsigned int count)
   5          {
   6   1              while(count--);
   7   1      }
   8          
   9          /*SPI发送数据函数*/
  10          void SPI_transmit(unsigned char c)
  11          {        
  12   1              SPI0DAT = c;
  13   1              while(!SPIF);
  14   1              SPIF = 0;
  15   1      }
  16          
  17          /*SPI接收数据函数*/
  18          unsigned char SPI_receive()
  19          {        
  20   1              SPI0DAT = 0xff;
  21   1              while(!SPIF);
  22   1              SPIF = 0;
  23   1              return SPI0DAT;
  24   1      }
  25          
  26          #ifdef _SPI_IO_
              /*软件模拟SPI发送函数*/
              void SPI_transmit(unsigned char c)
              {
                      unsigned int cnt = 0;
                      
                      for (cnt = 0; cnt<8; cnt++)
                      {
                              CLK = 0;                                
                              
                              if(c & 0x80)                    
                                      DO = 1;                         
                              else
                                      DO = 0;                         
                                              
                              CLK = 1;                        
                              delay(1);
                              
                              c = c << 1;     
                      }
              }
              
              /*软件模拟SPI接收函数*/
              unsigned char SPI_receive(void)
              {
                      unsigned char cnt = 0, c = 0xff;
                      
                      for (cnt = 0;cnt < 8; cnt++)
                      {
                              CLK = 0;                                        
C51 COMPILER V7.06   SPI                                                                   03/06/2010 17:37:24 PAGE 2   

                              delay(1);
                              CLK = 1;                                
                              c = c << 1;             
                                                                              
                              if(DI) 
                                      c++;                                    
                      }
                      
                      return c;
              }
              
              #endif /*end _SPI_IO_*/


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