📄 disp.lst
字号:
1 .file "disp.c"
2 .arch atmega16
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 S
19 .section .progmem.data,"a",@progbits
22 S:
23 0000 AF .byte -81
24 0001 06 .byte 6
25 0002 6D .byte 109
26 0003 4F .byte 79
27 0004 C6 .byte -58
28 0005 CB .byte -53
29 0006 EB .byte -21
30 0007 0E .byte 14
31 0008 EF .byte -17
32 0009 CF .byte -49
33 000a 00 .byte 0
34 .data
37 j:
38 0000 01 .byte 1
41 k:
42 0001 01 .byte 1
43 .text
44 .global port_init
46 port_init:
47 .LFB3:
48 .LM1:
49 /* prologue: frame size=0 */
50 /* prologue end (size=0) */
51 .LM2:
52 0000 1ABA out 58-0x20,__zero_reg__
53 .LM3:
54 0002 1BBA out 59-0x20,__zero_reg__
55 .LM4:
56 0004 8FEF ldi r24,lo8(-1)
57 0006 87BB out 55-0x20,r24
58 .LM5:
59 0008 8CEF ldi r24,lo8(-4)
60 000a 84BB out 52-0x20,r24
61 .LM6:
62 000c 80EF ldi r24,lo8(-16)
63 000e 81BB out 49-0x20,r24
64 /* epilogue: frame size=0 */
65 0010 0895 ret
66 /* epilogue end (size=1) */
67 /* function port_init size 9 (8) */
68 .LFE3:
70 .global delay_us
72 delay_us:
73 .LFB4:
74 .LM7:
75 /* prologue: frame size=0 */
76 /* prologue end (size=0) */
77 .L3:
78 .LM8:
79 0012 0197 sbiw r24,1
80 .LM9:
81 0014 8230 cpi r24,2
82 0016 9105 cpc r25,__zero_reg__
83 0018 E4F7 brge .L3
84 /* epilogue: frame size=0 */
85 001a 0895 ret
86 /* epilogue end (size=1) */
87 /* function delay_us size 5 (4) */
88 .LFE4:
90 .global delay_ms
92 delay_ms:
93 .LFB5:
94 .LM10:
95 /* prologue: frame size=0 */
96 001c CF93 push r28
97 001e DF93 push r29
98 /* prologue end (size=2) */
99 0020 EC01 movw r28,r24
100 .LM11:
101 0022 892B or r24,r25
102 0024 31F0 breq .L11
103 .L9:
104 .LM12:
105 0026 88EE ldi r24,lo8(1000)
106 0028 93E0 ldi r25,hi8(1000)
107 002a 0E94 0000 call delay_us
108 .LM13:
109 002e 2197 sbiw r28,1
110 0030 D1F7 brne .L9
111 .L11:
112 /* epilogue: frame size=0 */
113 0032 DF91 pop r29
114 0034 CF91 pop r28
115 0036 0895 ret
116 /* epilogue end (size=3) */
117 /* function delay_ms size 15 (10) */
118 .LFE5:
120 .global SendBit
122 SendBit:
123 .LFB6:
124 .LM14:
125 /* prologue: frame size=0 */
126 0038 1F93 push r17
127 003a CF93 push r28
128 /* prologue end (size=2) */
129 003c 182F mov r17,r24
130 .LM15:
131 /* #APP */
132 003e F894 cli
133 .LM16:
134 /* #NOAPP */
135 0040 6623 tst r22
136 0042 99F0 breq .L20
137 0044 C62F mov r28,r22
138 .L18:
139 .LM17:
140 0046 17FD sbrc r17,7
141 0048 02C0 rjmp .L16
142 .LM18:
143 004a C598 cbi 56-0x20,5
144 004c 01C0 rjmp .L17
145 .L16:
146 .LM19:
147 004e C59A sbi 56-0x20,5
148 .L17:
149 .LM20:
150 0050 8AE0 ldi r24,lo8(10)
151 0052 90E0 ldi r25,hi8(10)
152 0054 0E94 0000 call delay_us
153 .LM21:
154 0058 C79A sbi 56-0x20,7
155 .LM22:
156 005a 8AE0 ldi r24,lo8(10)
157 005c 90E0 ldi r25,hi8(10)
158 005e 0E94 0000 call delay_us
159 .LM23:
160 0062 C798 cbi 56-0x20,7
161 .LM24:
162 0064 110F lsl r17
163 .LM25:
164 0066 C150 subi r28,lo8(-(-1))
165 0068 71F7 brne .L18
166 .L20:
167 .LM26:
168 /* #APP */
169 006a 7894 sei
170 /* #NOAPP */
171 /* epilogue: frame size=0 */
172 006c CF91 pop r28
173 006e 1F91 pop r17
174 0070 0895 ret
175 /* epilogue end (size=3) */
176 /* function SendBit size 32 (27) */
177 .LFE6:
179 .global Start_spi
181 Start_spi:
182 .LFB7:
183 .LM27:
184 /* prologue: frame size=0 */
185 /* prologue end (size=0) */
186 .LM28:
187 0072 C49A sbi 56-0x20,4
188 .LM29:
189 0074 C79A sbi 56-0x20,7
190 .LM30:
191 0076 C59A sbi 56-0x20,5
192 .LM31:
193 0078 8AE0 ldi r24,lo8(10)
194 007a 90E0 ldi r25,hi8(10)
195 007c 0E94 0000 call delay_us
196 .LM32:
197 0080 C498 cbi 56-0x20,4
198 0082 C498 cbi 56-0x20,4
199 .LM33:
200 0084 8FE7 ldi r24,lo8(127)
201 0086 98B3 in r25,56-0x20
202 0088 9823 and r25,r24
203 008a 98BB out 56-0x20,r25
204 008c 98B3 in r25,56-0x20
205 008e 9823 and r25,r24
206 0090 98BB out 56-0x20,r25
207 /* epilogue: frame size=0 */
208 0092 0895 ret
209 /* epilogue end (size=1) */
210 /* function Start_spi size 17 (16) */
211 .LFE7:
213 .global SendByte
215 SendByte:
216 .LFB8:
217 .LM34:
218 /* prologue: frame size=0 */
219 /* prologue end (size=0) */
220 .LM35:
221 0094 68E0 ldi r22,lo8(8)
222 0096 0E94 0000 call SendBit
223 /* epilogue: frame size=0 */
224 009a 0895 ret
225 /* epilogue end (size=1) */
226 /* function SendByte size 4 (3) */
227 .LFE8:
229 .global SENDCOMA
231 SENDCOMA:
232 .LFB9:
233 .LM36:
234 /* prologue: frame size=0 */
235 009c 1F93 push r17
236 /* prologue end (size=1) */
237 009e 182F mov r17,r24
238 .LM37:
239 00a0 0E94 0000 call Start_spi
240 .LM38:
241 00a4 64E0 ldi r22,lo8(4)
242 00a6 80E8 ldi r24,lo8(-128)
243 00a8 0E94 0000 call SendBit
244 .LM39:
245 00ac 812F mov r24,r17
246 00ae 0E94 0000 call SendByte
247 /* epilogue: frame size=0 */
248 00b2 1F91 pop r17
249 00b4 0895 ret
250 /* epilogue end (size=2) */
251 /* function SENDCOMA size 13 (10) */
252 .LFE9:
254 .global SENDCOMB
256 SENDCOMB:
257 .LFB10:
258 .LM40:
259 /* prologue: frame size=0 */
260 00b6 1F93 push r17
261 /* prologue end (size=1) */
262 00b8 182F mov r17,r24
263 .LM41:
264 00ba 0E94 0000 call Start_spi
265 .LM42:
266 00be 63E0 ldi r22,lo8(3)
267 00c0 80EA ldi r24,lo8(-96)
268 00c2 0E94 0000 call SendBit
269 .LM43:
270 00c6 66E0 ldi r22,lo8(6)
271 00c8 812F mov r24,r17
272 00ca 0E94 0000 call SendBit
273 /* epilogue: frame size=0 */
274 00ce 1F91 pop r17
275 00d0 0895 ret
276 /* epilogue end (size=2) */
277 /* function SENDCOMB size 14 (11) */
278 .LFE10:
280 .global disp_init
282 disp_init:
283 .LFB11:
284 .LM44:
285 /* prologue: frame size=1 */
286 00d2 CF93 push r28
287 00d4 DF93 push r29
288 00d6 CDB7 in r28,__SP_L__
289 00d8 DEB7 in r29,__SP_H__
290 00da 2197 sbiw r28,1
291 00dc 0FB6 in __tmp_reg__,__SREG__
292 00de F894 cli
293 00e0 DEBF out __SP_H__,r29
294 00e2 0FBE out __SREG__,__tmp_reg__
295 00e4 CDBF out __SP_L__,r28
296 /* prologue end (size=10) */
297 .LM45:
298 00e6 8AE0 ldi r24,lo8(10)
299 00e8 0E94 0000 call SENDCOMA
300 .LM46:
301 00ec 82E5 ldi r24,lo8(82)
302 00ee 0E94 0000 call SENDCOMA
303 .LM47:
304 00f2 80E3 ldi r24,lo8(48)
305 00f4 0E94 0000 call SENDCOMA
306 .LM48:
307 00f8 82E0 ldi r24,lo8(2)
308 00fa 0E94 0000 call SENDCOMA
309 .LM49:
310 00fe 86E0 ldi r24,lo8(6)
311 0100 0E94 0000 call SENDCOMA
312 .LM50:
313 0104 88E0 ldi r24,lo8(8)
314 0106 0E94 0000 call SENDCOMA
315 .LM51:
316 010a 80E0 ldi r24,lo8(0)
317 010c 0E94 0000 call SENDCOMB
318 .LM52:
319 0110 1982 std Y+1,__zero_reg__
320 0112 8981 ldd r24,Y+1
321 0114 8F30 cpi r24,lo8(15)
322 0116 48F4 brsh .L31
323 .L29:
324 .LM53:
325 0118 80E0 ldi r24,lo8(0)
326 011a 0E94 0000 call SendByte
327 .LM54:
328 011e 8981 ldd r24,Y+1
329 0120 8F5F subi r24,lo8(-(1))
330 0122 8983 std Y+1,r24
331 0124 8981 ldd r24,Y+1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -