📄 exp.lst
字号:
C51 COMPILER V3.20, SN-0 EXP 05/24/04 10:39:59 PAGE 1
DOS C51 COMPILER V3.20, COMPILATION OF MODULE EXP
OBJECT MODULE PLACED IN EXP.OBJ
COMPILER INVOKED BY: C:\XINGYAN\FSI\BIN\C51.EXE EXP.C DB SB OE ROM(LARGE) SMALL OT(2) RB(0)
stmt level source
1 /*
* exp.c
*
* 读取室温(DS18B20)
*
*
*
* 陈真勇(SA01010010)
* w3wind@sina.com or
* zychen@ustc.edu.cn
* 中国科学技术大学自动化系
* 2002/6/12
*/
14
15 /*
修改:王占成
zcwang@mail.ustc.edu.cn
2003.5.17
*/
22 #include "xdata.h"
23 #include "link.h"
24 #include "delay.h"
25 #include <intrins.h>
26 #include <reg52.h>
27
28 void init_DS18B20()
29 {
30 1 BYTE i;
31 1
32 1 /*初始脉冲*/
33 1 DQ = 0;
34 1 for(i=0;i<50;i++){
35 2 delay10us();
36 2 }
37 1 DQ = 1;
38 1
39 1 delay10us();
40 1 delay10us();
41 1 delay10us();
42 1 delay10us();
43 1 delay10us();
44 1 delay10us();
45 1 delay10us();
46 1
47 1 while( !DQ ){;}
48 1 }
49
50
51 void write_a_byte(BYTE dat)
52 {
53 1 BYTE i;
54 1 BYTE mask = 1;
55 1
C51 COMPILER V3.20, SN-0 EXP 05/24/04 10:39:59 PAGE 2
56 1 for(i=0;i<8;i++){
57 2 if(dat & mask){
58 3 DQ = 0;
59 3 _nop_();
60 3 _nop_();
61 3 DQ = 1;
62 3 delay10us();
63 3 delay10us();
64 3 delay10us();
65 3 delay10us();
66 3 delay10us();
67 3 delay10us();
68 3 }
69 2 else{
70 3 DQ = 0;
71 3 delay10us();
72 3 delay10us();
73 3 delay10us();
74 3 delay10us();
75 3 delay10us();
76 3 delay10us();
77 3 delay10us();
78 3 DQ = 1;
79 3 _nop_();
80 3 _nop_();
81 3 }
82 2 mask <<= 1;
83 2 }
84 1 }
85
86
87
88 BYTE read_byte()
89 {
90 1 BYTE j;
91 1 BYTE res = 0;
92 1 BYTE mask = 1;
93 1
94 1 for(j=0;j<8;j++){
95 2 DQ = 0; /*产生读信号*/
96 2 _nop_();
97 2 _nop_();
98 2 DQ = 1; /*释放总线,准备输入数据*/
99 2 _nop_();
100 2 _nop_();
101 2 _nop_();
102 2 _nop_();
103 2 _nop_();
104 2 _nop_(); /*从DQ=0开始15us内采样*/
105 2
106 2 if(DQ)
107 2 res |= mask;
108 2
109 2 delay10us(); /*等待50us,读周期总共不能少于60us*/
110 2 delay10us();
111 2 delay10us();
112 2 delay10us();
113 2 delay10us();
114 2
115 2 mask <<= 1;
116 2 }
117 1
C51 COMPILER V3.20, SN-0 EXP 05/24/04 10:39:59 PAGE 3
118 1 return res;
119 1 }
120
121 UINT read_ds_data()
122 {
123 1 BYTE b2,b1;
124 1
125 1 EA = 0;/*需要禁止中断*/
126 1
127 1 init_DS18B20();
128 1
129 1 write_a_byte(0xcc);/* skip rom command */
130 1 write_a_byte(0x44);/* convert temperature */
131 1
132 1 while(! DQ ){;}/* read busy status */
133 1
134 1 init_DS18B20();
135 1
136 1 write_a_byte(0xcc);
137 1 write_a_byte(0xbe);
138 1
139 1 b1 = read_byte();
140 1 b2 = read_byte();
141 1
142 1
143 1 EA = 1;
144 1
145 1 return (b2 << 8) + b1;
146 1 }
147
148
C51 COMPILER V3.20, SN-0 EXP 05/24/04 10:39:59 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
CANLAMP. . . . . . . . . . . . . . . . ABSBIT ----- BIT 0096H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
T2 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
ADCAL1 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0095H 1
ADCAL2 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A0H 1
JDQ1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
JDQ2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
DQ . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0097H 1
T2IE . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CDH 1
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
BGEN . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CBH 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
T2IP . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CEH 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
T2EX . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
ADSDATA1 . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
ADSDATA2 . . . . . . . . . . . . . . . ABSBIT ----- BIT 0093H 1
C_T2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C9H 1
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
read_byte. . . . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
j. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
res. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
mask . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0002H 1
WDSI . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
init_DS18B20 . . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
CP_RL2 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C8H 1
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TF0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008DH 1
ET2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ADH 1
TF1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008FH 1
TF2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CFH 1
RB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009AH 1
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
C51 COMPILER V3.20, SN-0 EXP 05/24/04 10:39:59 PAGE 5
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
read_ds_data . . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
b2 . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
b1 . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
PT2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BDH 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
TR2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CAH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
delay10us. . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
PID. . . . . . . . . . . . . . . . . . * TAG * ----- STRUCT ----- 54
ReceiveValue . . . . . . . . . . . . MEMBER ----- UNION 0000H 18
CalValue . . . . . . . . . . . . . . MEMBER ----- UNION 0012H 18
SendValue. . . . . . . . . . . . . . MEMBER ----- UNION 0024H 18
ADSCLK1. . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
_write_a_byte. . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
dat. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
mask . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0002H 1
ADSCLK2. . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
CANCS. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A7H 1
ADDRDY1. . . . . . . . . . . . . . . . ABSBIT ----- BIT 0094H 1
ADDRDY2. . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A1H 1
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
T2RSE. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CCH 1
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
uValue . . . . . . . . . . . . . . . . * TAG * ----- UNION ----- 18
sValue . . . . . . . . . . . . . . . MEMBER ----- STRUCT 0000H 18
bValue . . . . . . . . . . . . . . . MEMBER ----- ARRAY 0000H 18
WDSCK. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0092H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 258 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
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 + -