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

📄 spi.lst

📁 开发板自带的C8051F0404的SPI源代码。
💻 LST
字号:
C51 COMPILER V7.50   SPI                                                                   07/18/2007 21:54:53 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE SPI
OBJECT MODULE PLACED IN .\output\SPI.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE SPI.c LARGE BROWSE DEBUG OBJECTEXTEND OBJECT(.\output\SPI.obj)

line level    source

   1          /************************************************************************************
   2          *  Copyright (c) 2004,西安铭朗电子科技有限责任公司
   3          *            All rights reserved.
   4          *
   5          * 文件名称: SPI.C
   6          * 文件标识: none
   7          * 适用器件: C8051F120
   8          * 
   9          * 摘 要: 本文件是串行外设接口总线子程序;实现串口发送数据功能;将跳线器JP6短接,
  10          *         使用外部22.1184MHz晶振.
  11          * 
  12          * 当前版本:1.2
  13          * 作 者:张宁强
  14          * 完成日期:2006年1月10日
  15          *
  16          * 历史版本:1.0 
  17          * 原作者 : 李林利 卢阳
  18          * 完成日期:2005年6月1日
  19          *************************************************************************************/
  20          
  21          /************************************************************************************/
  22          // 引用外部头文件
  23          
  24          #include "c8051f040.h"
  25          #include "SPI.h"
  26          #include <intrins.h>
  27          
  28          /************************************************************************************/
  29          
  30          /************************************************************************************
  31          // 常量及全局变量定义
  32          *************************************************************************************/
  33          
  34          
  35          
  36          /************************************************************************************
  37          *  SPI功能子程序
  38          *************************************************************************************/
  39          
  40          /***********************************************************************************
  41          * 函数名称:SPI_Init;
  42          *
  43          * 函数功能描述:SPI初始化函数;
  44          *              
  45          * 输入参数:none;
  46          *
  47          * 返回数据:none;
  48          *
  49          * 注意:        none;
  50          ************************************************************************************/
  51          
  52          void SPI_Init (void)
  53          {
  54   1              char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page
  55   1         
C51 COMPILER V7.50   SPI                                                                   07/18/2007 21:54:53 PAGE 2   

  56   1           SFRPAGE = SFR_PAGE_0;                      // set SFR page F
  57   1              
  58   1              //SPI0CFG = 0x07;
  59   1              //SPI0CN  = 0x03;
  60   1              //SPI0CKR = 0x10;
  61   1              SPI0CFG = 0x40;
  62   1              SPI0CN  |= 0x01;
  63   1              SPI0CKR = 0x10;
  64   1      
  65   1              while(SPI0CFG&0x80);
  66   1              NSS=0;
  67   1              SPI0DAT=0x00;
  68   1              while(!SPIF);
  69   1              NSS=1;
  70   1              SPIF=0;
  71   1      
  72   1              SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
  73   1      }
  74          
  75          /***********************************************************************************
  76          * 函数名称:SPI_Send;
  77          *
  78          * 函数功能描述:SPI发送一个字节的数据函数;
  79          *              
  80          * 输入参数:发送数据;
  81          *
  82          * 返回数据:none;
  83          *
  84          * 注意:        none;
  85          ************************************************************************************/
  86          
  87          void SPI_Send(char dat)
  88          {
  89   1              char data SFRPAGE_SAVE = SFRPAGE;    // Save Current SFR page   
  90   1          SFRPAGE = SFR_PAGE_0;                       // set SFR page F
  91   1      
  92   1              while(SPI0CFG&0x80);
  93   1              NSS=0;
  94   1              SPI0DAT=dat;
  95   1              while(!SPIF);
  96   1              NSS=1;
  97   1              SPIF=0;
  98   1      
  99   1              SFRPAGE = SFRPAGE_SAVE;          // Restore SFR page
 100   1      }
 101          
 102          /***********************************************************************************/
 103          // 文件结束
 104          /***********************************************************************************/
 105          


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