📄 ltc1860.lst
字号:
C51 COMPILER V8.08 LTC1860 06/30/2007 15:23:47 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE LTC1860
OBJECT MODULE PLACED IN LTC1860.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE LTC1860.c LARGE OPTIMIZE(9,SPEED) DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <intrins.h>
3 #define uchar unsigned char
4 #define uint unsigned int
5 #define nop() _nop_()
6 //接口定义
7 sbit ltc1860_clk =P1^3;
8 sbit ltc1860_do =P1^4;
9 sbit ltc1860_cs =P3^5;
10 //
11 uint spi_transition(void)
12 {
13 1 volatile uint data ad_value=0;
14 1 uchar temp1,temp2;
15 1 uchar i;
16 1 temp1=0;
17 1 temp2=0;
18 1 ltc1860_cs=1; //启动转换
19 1 ltc1860_clk=1;
20 1 nop();
21 1 nop();
22 1 nop();
23 1 ltc1860_cs=0; //启动通信
24 1 ltc1860_do=1;
25 1 for(i=0;i<4;i++)
26 1 { ltc1860_do=1;
27 2 ltc1860_clk=0;
28 2 nop();
29 2 nop();
30 2
31 2 ltc1860_clk=1;
32 2 nop();
33 2 nop();
34 2 temp1=temp1<<1;
35 2 if(ltc1860_do)
36 2 temp1=temp1|0x01;
37 2 else
38 2 temp1=temp1&0xfe;
39 2
40 2 }
41 1 for(i=0;i<8;i++)
42 1 { ltc1860_do=1;
43 2 ltc1860_clk=0;
44 2 nop();
45 2 nop();
46 2
47 2 ltc1860_clk=1;
48 2 nop();
49 2 nop();
50 2 temp2=temp2<<1;
51 2 if(ltc1860_do)
52 2 temp2=temp2|0x01;
53 2 else
54 2 temp2=temp2&0xfe;
55 2
C51 COMPILER V8.08 LTC1860 06/30/2007 15:23:47 PAGE 2
56 2 }
57 1 ltc1860_cs=1;
58 1 ad_value=temp1;
59 1 ad_value=ad_value<<8;
60 1 ad_value=ad_value+temp2;
61 1 return ad_value;
62 1 }
63
64
65
66
67
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 112 ----
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 + -