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