📄 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 + -