📄 spi.lst
字号:
C51 COMPILER V7.09 SPI 09/16/2008 14:30:38 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE SPI
OBJECT MODULE PLACED IN .\output\spi.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE usb\spi.c LARGE BROWSE INCDIR(audio\;eeprom\;extendUART\;flash\;gps\;inter\
-;key\;mcu\;menu\;usb\;gprs\;main\;1wire\) DEBUG OBJECTEXTEND PRINT(.\output\spi.lst) OBJECT(.\output\spi.obj)
line level source
1 /*****************************************************************
2 *SPI软件仿真程序
3 *SPI总线接口,高位先发送,数据在时钟的上升沿发送和接收。
4 * 正常情况下CLK为高电平。
5 ******************************************************************/
6 #include "w77e532.h"
7 #include "spi.h"
8
9
10 void spi_init(void)
11 {
12 1 SPI_CLK = 1;
13 1 SPI_MOSI = 1;
14 1 SPI_MISO = 1;
15 1 }
16
17 void spi_write(char value)//mode 3
18 {
19 1 unsigned char bitCount;
20 1 unsigned char bitTmp;
21 1
22 1 bitTmp = value;
23 1 for( bitCount=0; bitCount<8; bitCount++)
24 1 {
25 2 if( bitTmp & 0x80 )
26 2 SPI_MOSI = 1;
27 2 else
28 2 SPI_MOSI = 0;
29 2
30 2 SPI_CLK = 0;
31 2 SPI_CLK = 1;
32 2
33 2 bitTmp <<= 1;
34 2 }
35 1
36 1 }
37
38 code char SPIREAD_ARRAY[8] = {128, 64, 32, 16, 8, 4, 2, 1};
39 char spi_read(void)//mode 0
40 {
41 1 data unsigned char bitCount;
42 1 data unsigned char bitTmp;
43 1
44 1 bitTmp = 0;
45 1 for( bitCount=0; bitCount<8; bitCount++)
46 1 {
47 2 SPI_CLK = 1;//0;
48 2 SPI_CLK = 0;//1;//cj mod
49 2
50 2 SPI_MISO = 1;
51 2 if( SPI_MISO )
52 2 bitTmp += SPIREAD_ARRAY[bitCount];
53 2
54 2 // if( bitCount != 7 )
C51 COMPILER V7.09 SPI 09/16/2008 14:30:38 PAGE 2
55 2 // bitTmp <<= 1;
56 2 }
57 1
58 1 return(bitTmp);
59 1 }
60 /*
61 char spi_read(void)//mode 0
62 {
63 unsigned char bitCount;
64 unsigned char bitTmp;
65
66 bitTmp = 0;
67 for( bitCount=0; bitCount<8; bitCount++)
68 {
69 SPI_CLK = 1;//0;
70 SPI_CLK = 0;//1;//cj mod
71
72 SPI_MISO = 1;
73 if( SPI_MISO )
74 bitTmp |= 1;
75
76 if( bitCount != 7 )
77 bitTmp <<= 1;
78 }
79
80 return(bitTmp);
81 }
82 */
83
84
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 67 ----
CONSTANT SIZE = 8 ----
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 + -