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