📄 ds18b20-lcd1602-c51-avr.lst
字号:
1 .file "DS18B20-LCD1602-C51-AVR.c"
2 .arch atmega8515
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
17 .Ltext0:
18 .global cdis4
19 .data
22 cdis4:
23 0000 2020 504C .string " PLEASE CHECK "
23 4541 5345
23 2043 4845
23 434B 2020
23 00
24 .global cdis3
27 cdis3:
28 0011 2044 5331 .string " DS18B20 ERR0R "
28 3842 3230
28 2020 4552
28 5230 5220
28 00
29 .global cdis2
32 cdis2:
33 0022 2054 454D .string " TEMP2: . C "
33 5032 3A20
33 2020 202E
33 2020 4320
33 00
34 .global cdis1
37 cdis1:
38 0033 2054 454D .string " TEMP1: . C "
38 5031 3A20
38 2020 202E
38 2020 4320
38 00
39 .global RomCode
42 RomCode:
43 0044 28 .byte 40
44 0045 D6 .byte -42
45 0046 31 .byte 49
46 0047 8A .byte -118
47 0048 00 .byte 0
48 0049 00 .byte 0
49 004a 00 .byte 0
50 004b E3 .byte -29
51 004c 28 .byte 40
52 004d 0E .byte 14
53 004e 4E .byte 78
54 004f B3 .byte -77
55 0050 00 .byte 0
56 0051 00 .byte 0
57 0052 00 .byte 0
58 0053 5F .byte 95
59 .global mytab
62 mytab:
63 0054 0C .byte 12
64 0055 12 .byte 18
65 0056 12 .byte 18
66 0057 0C .byte 12
67 0058 00 .byte 0
68 0059 00 .byte 0
69 005a 00 .byte 0
70 005b 00 .byte 0
71 .global ditab
74 ditab:
75 005c 00 .byte 0
76 005d 01 .byte 1
77 005e 01 .byte 1
78 005f 02 .byte 2
79 0060 03 .byte 3
80 0061 03 .byte 3
81 0062 04 .byte 4
82 0063 04 .byte 4
83 0064 05 .byte 5
84 0065 06 .byte 6
85 0066 06 .byte 6
86 0067 07 .byte 7
87 0068 08 .byte 8
88 0069 08 .byte 8
89 006a 09 .byte 9
90 006b 09 .byte 9
91 .global display
92 .global display
93 .section .bss
96 display:
97 0000 0000 0000 .skip 5,0
97 00
98 .global temp_data
99 .global temp_data
102 temp_data:
103 0005 0000 .skip 2,0
104 .text
105 .global delay_nms
107 delay_nms:
108 .LFB6:
109 .LM1:
110 /* prologue: frame size=0 */
111 /* prologue end (size=0) */
112 .LM2:
113 0000 0097 sbiw r24,0
114 0002 41F0 breq .L8
115 0004 9C01 movw r18,r24
116 .L6:
117 .LBB2:
118 .LM3:
119 0006 80ED ldi r24,lo8(2000)
120 0008 97E0 ldi r25,hi8(2000)
121 .LBB3:
122 .LM4:
123 /* #APP */
124 000a 0197 1: sbiw r24,1
125 000c F1F7 brne 1b
126 /* #NOAPP */
127 .LBE3:
128 .LBE2:
129 .LM5:
130 000e 2150 subi r18,lo8(-(-1))
131 0010 3040 sbci r19,hi8(-(-1))
132 0012 C9F7 brne .L6
133 .L8:
134 0014 0895 ret
135 /* epilogue: frame size=0 */
136 /* epilogue: noreturn */
137 /* epilogue end (size=0) */
138 /* function delay_nms size 15 (15) */
139 .LFE6:
141 .global Delay
143 Delay:
144 .LFB7:
145 .LM6:
146 /* prologue: frame size=0 */
147 /* prologue end (size=0) */
148 .LBB4:
149 .LM7:
150 0016 880F lsl r24
151 0018 991F rol r25
152 .LBB5:
153 .LM8:
154 /* #APP */
155 001a 0197 1: sbiw r24,1
156 001c F1F7 brne 1b
157 /* #NOAPP */
158 .LBE5:
159 .LBE4:
160 /* epilogue: frame size=0 */
161 001e 0895 ret
162 /* epilogue end (size=1) */
163 /* function Delay size 7 (6) */
164 .LFE7:
166 .global beep
168 beep:
169 .LFB8:
170 .LM9:
171 /* prologue: frame size=0 */
172 0020 CF93 push r28
173 /* prologue end (size=1) */
174 0022 C3E6 ldi r28,lo8(99)
175 .L15:
176 .LM10:
177 0024 9798 cbi 50-0x20,7
178 .LM11:
179 0026 84EF ldi r24,lo8(500)
180 0028 91E0 ldi r25,hi8(500)
181 002a F5DF rcall Delay
182 .LM12:
183 002c 80E8 ldi r24,lo8(-128)
184 002e 82BB out 50-0x20,r24
185 .LM13:
186 0030 84EF ldi r24,lo8(500)
187 0032 91E0 ldi r25,hi8(500)
188 0034 F0DF rcall Delay
189 .LM14:
190 0036 C150 subi r28,lo8(-(-1))
191 0038 C7FF sbrs r28,7
192 003a F4CF rjmp .L15
193 .LM15:
194 003c 979A sbi 50-0x20,7
195 .LM16:
196 003e 88EC ldi r24,lo8(200)
197 0040 90E0 ldi r25,hi8(200)
198 0042 DEDF rcall delay_nms
199 /* epilogue: frame size=0 */
200 0044 CF91 pop r28
201 0046 0895 ret
202 /* epilogue end (size=2) */
203 /* function beep size 20 (17) */
204 .LFE8:
206 .global init_io
208 init_io:
209 .LFB9:
210 .LM17:
211 /* prologue: frame size=0 */
212 /* prologue end (size=0) */
213 .LM18:
214 0048 8FEF ldi r24,lo8(-1)
215 004a 8ABB out 58-0x20,r24
216 .LM19:
217 004c 8BBB out 59-0x20,r24
218 .LM20:
219 004e 87BB out 55-0x20,r24
220 .LM21:
221 0050 88BB out 56-0x20,r24
222 .LM22:
223 0052 84BB out 52-0x20,r24
224 .LM23:
225 0054 85BB out 53-0x20,r24
226 .LM24:
227 0056 81BB out 49-0x20,r24
228 .LM25:
229 0058 82BB out 50-0x20,r24
230 /* epilogue: frame size=0 */
231 005a 0895 ret
232 /* epilogue end (size=1) */
233 /* function init_io size 10 (9) */
234 .LFE9:
236 .global Init_DS18B20
238 Init_DS18B20:
239 .LFB10:
240 .LM26:
241 /* prologue: frame size=0 */
242 /* prologue end (size=0) */
243 .LM27:
244 005c 939A sbi 50-0x20,3
245 .LM28:
246 005e 86E4 ldi r24,lo8(70)
247 0060 90E0 ldi r25,hi8(70)
248 0062 D9DF rcall Delay
249 .LM29:
250 0064 9398 cbi 50-0x20,3
251 .LM30:
252 0066 8CE0 ldi r24,lo8(780)
253 0068 93E0 ldi r25,hi8(780)
254 006a D5DF rcall Delay
255 .LM31:
256 006c 939A sbi 50-0x20,3
257 .LM32:
258 006e 8B98 cbi 49-0x20,3
259 .LM33:
260 0070 86E4 ldi r24,lo8(70)
261 0072 90E0 ldi r25,hi8(70)
262 0074 D0DF rcall Delay
263 .LM34:
264 0076 839B sbis 48-0x20,3
265 0078 04C0 rjmp .L20
266 .LM35:
267 007a 81E0 ldi r24,lo8(1)
268 007c 8093 0000 sts presence,r24
269 0080 02C0 rjmp .L21
270 .L20:
271 .LM36:
272 0082 1092 0000 sts presence,__zero_reg__
273 .L21:
274 .LM37:
275 0086 86E6 ldi r24,lo8(870)
276 0088 93E0 ldi r25,hi8(870)
277 008a C5DF rcall Delay
278 .LM38:
279 008c 8B9A sbi 49-0x20,3
280 .LM39:
281 008e 939A sbi 50-0x20,3
282 .LM40:
283 0090 8091 0000 lds r24,presence
284 .LM41:
285 0094 9927 clr r25
286 /* epilogue: frame size=0 */
287 0096 0895 ret
288 /* epilogue end (size=1) */
289 /* function Init_DS18B20 size 30 (29) */
290 .LFE10:
292 .global ReadOneChar
294 ReadOneChar:
295 .LFB11:
296 .LM42:
297 /* prologue: frame size=0 */
298 0098 1F93 push r17
299 009a CF93 push r28
300 /* prologue end (size=2) */
301 .LM43:
302 009c C0E0 ldi r28,lo8(0)
303 .LM44:
304 009e 18E0 ldi r17,lo8(8)
305 .L27:
306 .LM45:
307 00a0 9398 cbi 50-0x20,3
308 .LM46:
309 00a2 C695 lsr r28
310 .LM47:
311 00a4 939A sbi 50-0x20,3
312 .LM48:
313 00a6 8B98 cbi 49-0x20,3
314 .LM49:
315 00a8 8399 sbic 48-0x20,3
316 .LM50:
317 00aa C068 ori r28,lo8(-128)
318 .L26:
319 .LM51:
320 00ac 86E4 ldi r24,lo8(70)
321 00ae 90E0 ldi r25,hi8(70)
322 00b0 B2DF rcall Delay
323 .LM52:
324 00b2 8B9A sbi 49-0x20,3
325 .LM53:
326 00b4 939A sbi 50-0x20,3
327 .LM54:
328 00b6 1150 subi r17,lo8(-(-1))
329 00b8 99F7 brne .L27
330 .LM55:
331 00ba 8C2F mov r24,r28
332 00bc 9927 clr r25
333 /* epilogue: frame size=0 */
334 00be CF91 pop r28
335 00c0 1F91 pop r17
336 00c2 0895 ret
337 /* epilogue end (size=3) */
338 /* function ReadOneChar size 24 (19) */
339 .LFE11:
341 .global WriteOneChar
343 WriteOneChar:
344 .LFB12:
345 .LM56:
346 /* prologue: frame size=0 */
347 00c4 1F93 push r17
348 00c6 CF93 push r28
349 /* prologue end (size=2) */
350 00c8 C82F mov r28,r24
351 .LM57:
352 00ca 18E0 ldi r17,lo8(8)
353 .L36:
354 .LM58:
355 00cc 9398 cbi 50-0x20,3
356 .LM59:
357 00ce C0FF sbrs r28,0
358 00d0 02C0 rjmp .L34
359 .LM60:
360 00d2 939A sbi 50-0x20,3
361 00d4 01C0 rjmp .L35
362 .L34:
363 .LM61:
364 00d6 9398 cbi 50-0x20,3
365 .L35:
366 .LM62:
367 00d8 86E4 ldi r24,lo8(70)
368 00da 90E0 ldi r25,hi8(70)
369 00dc 9CDF rcall Delay
370 .LM63:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -