📄 18b20_2.lst
字号:
C51 COMPILER V8.02 18B20_2 11/19/2008 17:14:39 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE 18B20_2
OBJECT MODULE PLACED IN 18b20_2.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE 18b20_2.c DEBUG OBJECTEXTEND
line level source
1 #include <AT89X52.H>
2 #include <INTRINS.h>
3
*** ERROR C100 IN LINE 3 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 3 OF 18B20_2.C: unprintable character 0xA1 skipped
4 unsigned char code displaybit[]={0xfe,0xfd,0xfb,0xf7,
5 0xef,0xdf,0xbf,0x7f};
6 unsigned char code displaycode[]={0x3f,0x06,0x5b,0x4f,
7 0x66,0x6d,0x7d,0x07,
8 0x7f,0x6f,0x77,0x7c,
9 0x39,0x5e,0x79,0x71,0x00,0x40};
10 unsigned char code dotcode[32]={0,3,6,9,12,16,19,22,
11 25,28,31,34,38,41,44,48,
12 50,53,56,59,63,66,69,72,
13 75,78,81,84,88,91,94,97};
14 unsigned char displaycount;
15 unsigned char displaybuf[8]={16,16,16,16,16,16,16,16};
16 unsigned char timecount;
17 unsigned char readdata[8];
*** ERROR C100 IN LINE 17 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 17 OF 18B20_2.C: unprintable character 0xA1 skipped
18 sbit DQ=P3^7;
19 bit sflag;
20
*** ERROR C100 IN LINE 20 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 20 OF 18B20_2.C: unprintable character 0xA1 skipped
21 bit resetpulse(void)
22 {
23 1 unsigned char i;
24 1
*** ERROR C100 IN LINE 24 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 24 OF 18B20_2.C: unprintable character 0xA1 skipped
25 1 DQ=0;
26 1 for(i=255;i>0;i--);
27 1 DQ=1;
28 1 for(i=60;i>0;i--);
29 1 return(DQ);
30 1 for(i=200;i>0;i--);
31 1 }
32
*** ERROR C100 IN LINE 32 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 32 OF 18B20_2.C: unprintable character 0xA1 skipped
33 void writecommandtods18b20(unsigned char command)
34 {
35 1 unsigned char i;
36 1 unsigned char j;
37 1
*** ERROR C100 IN LINE 37 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 37 OF 18B20_2.C: unprintable character 0xA1 skipped
38 1 for(i=0;i<8;i++)
39 1 {
40 2 if((command & 0x01)==0)
41 2 {
42 3 DQ=0;
43 3 for(j=35;j>0;j--);
C51 COMPILER V8.02 18B20_2 11/19/2008 17:14:39 PAGE 2
44 3 DQ=1;
45 3 }
46 2 else
47 2 {
48 3 DQ=0;
49 3 for(j=2;j>0;j--);
50 3 DQ=1;
51 3 for(j=33;j>0;j--);
52 3 }
53 2 command=_cror_(command,1);
54 2 }
55 1 }
56
*** ERROR C100 IN LINE 56 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 56 OF 18B20_2.C: unprintable character 0xA1 skipped
57 unsigned char readdatafromds18b20(void)
58 {
59 1 unsigned char i;
60 1 unsigned char j;
61 1 unsigned char temp;
62 1
*** ERROR C100 IN LINE 62 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 62 OF 18B20_2.C: unprintable character 0xA1 skipped
63 1 temp=0;
64 1 for(i=0;i<8;i++)
65 1 {
66 2 temp=_cror_(temp,1);
67 2 DQ=0;
68 2 _nop_();
69 2 _nop_();
70 2 DQ=1;
71 2 for(j=10;j>0;j--);
72 2 if(DQ==1)
73 2 {
74 3 temp=temp | 0x80;
75 3 }
76 2 else
77 2 {
78 3 temp=temp | 0x00;
79 3 }
80 2 for(j=200;j>0;j--);
81 2 }
82 1 return(temp);
83 1 }
84
*** ERROR C100 IN LINE 84 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 84 OF 18B20_2.C: unprintable character 0xA1 skipped
85 void main(void)
86 {
87 1 TMOD=0x01;
88 1 TH0=(65536-4000)/256;
89 1 TL0=(65536-4000)%256;
90 1 ET0=1;
91 1 EA=1;
92 1
*** ERROR C100 IN LINE 92 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 92 OF 18B20_2.C: unprintable character 0xA1 skipped
93 1 while(resetpulse());
94 1 writecommandtods18b20(0xcc);
95 1 writecommandtods18b20(0x44);
96 1 TR0=1;
97 1 while(1){;}
C51 COMPILER V8.02 18B20_2 11/19/2008 17:14:39 PAGE 3
98 1
99 1 }
*** ERROR C100 IN LINE 99 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 99 OF 18B20_2.C: unprintable character 0xA1 skipped
100 void t0() interrupt 1 using 0
101 {
102 1 unsigned char x;
103 1 unsigned int result;
104 1 TH0=(65536-4000)/256;
105 1 TL0=(65536-4000)%256;
106 1 if(displaycount==2)
107 1 {
108 2 P0=displaycode[displaybuf[displaycount]] | 0x80;
109 2 }
110 1 else
111 1 {
112 2 P0=displaycode[displaybuf[displaycount]];
113 2 }
114 1 P2=displaybit[displaycount];
115 1 displaycount++;
116 1 if(displaycount==8)
117 1 {
118 2 displaycount=0;
119 2 }
120 1
*** ERROR C100 IN LINE 120 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 120 OF 18B20_2.C: unprintable character 0xA1 skipped
121 1 timecount++;
122 1 if(timecount==150)
123 1 {
124 2 timecount=0;
125 2 while(resetpulse());
126 2 writecommandtods18b20(0xcc);
127 2 writecommandtods18b20(0xbe);
128 2 readdata[0]=readdatafromds18b20();
129 2 readdata[1]=readdatafromds18b20();
130 2 for(x=0;x<8;x++)
131 2 {
132 3 displaybuf[x]=16;
133 3 }
134 2 sflag=0;
135 2 if((readdata[1] & 0xf8)!=0x00)
136 2 {
137 3 sflag=1;
138 3 readdata[1]=~readdata[1];
139 3 readdata[0]=~readdata[0];
140 3 result=readdata[0]+1;
141 3 readdata[0]=result;
142 3 if(result>255)
143 3 {
144 4 readdata[1]++;
*** ERROR C187 IN LINE 144 OF 18B20_2.C: not an lvalue
145 4 }
146 3 }
147 2 readdata[1]=readdata[1]<<4;
148 2 readdata[1]=readdata[1] & 0x70;
149 2 x=readdata[0];
150 2 x=x>>4;
151 2 x=x & 0x0f;
152 2 readdata[1]=readdata[1] | x;
153 2 x=2;
154 2 result=readdata[1];
C51 COMPILER V8.02 18B20_2 11/19/2008 17:14:39 PAGE 4
155 2 while(result/10)
156 2 {
157 3 displaybuf[x]=result%10;
158 3 result=result/10;
159 3 x++;
160 3 }
161 2 displaybuf[x]=result;
162 2 if(sflag==1)
163 2 {
164 3 displaybuf[x+1]=17;
165 3 }
166 2 x=readdata[0] & 0x0f;
167 2 x=x<<1;
168 2 displaybuf[0]=(dotcode[x])%10;
169 2 displaybuf[1]=(dotcode[x])/10;
170 2 while(resetpulse());
171 2 writecommandtods18b20(0xcc);
172 2 writecommandtods18b20(0x44);
173 2 }
174 1 }
C51 COMPILATION COMPLETE. 0 WARNING(S), 25 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -