Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
99 | gunterl | 1 | 1 .file "main.c" |
2 | 2 .arch atmega644p |
||
3 | 3 __SREG__ = 0x3f |
||
4 | 4 __SP_H__ = 0x3e |
||
5 | 5 __SP_L__ = 0x3d |
||
6 | 6 __tmp_reg__ = 0 |
||
7 | 7 __zero_reg__ = 1 |
||
8 | 8 .global __do_copy_data |
||
9 | 9 .global __do_clear_bss |
||
10 | 10 .text |
||
11 | 11 .global GetActiveParamSetNumber |
||
12 | 13 GetActiveParamSetNumber: |
||
13 | 14 /* prologue: frame size=0 */ |
||
14 | 15 /* prologue end (size=0) */ |
||
15 | 16 0000 20E0 ldi r18,lo8(EEPromArray+2) |
||
16 | 17 0002 30E0 ldi r19,hi8(EEPromArray+2) |
||
17 | 18 0004 D901 movw r26,r18 |
||
18 | 19 /* #APP */ |
||
19 | 20 0006 0E94 0000 call __eeprom_read_byte_1F2021 |
||
20 | 21 000a 802D mov r24,__tmp_reg__ |
||
21 | 22 /* #NOAPP */ |
||
22 | 23 000c 8630 cpi r24,lo8(6) |
||
23 | 24 000e 00F0 brlo .L2 |
||
24 | 25 0010 82E0 ldi r24,lo8(2) |
||
25 | 26 0012 D901 movw r26,r18 |
||
26 | 27 /* #APP */ |
||
27 | 28 0014 082E mov __tmp_reg__,r24 |
||
28 | 29 0016 0E94 0000 call __eeprom_write_byte_1F2021 |
||
29 | 30 /* #NOAPP */ |
||
30 | 31 .L2: |
||
31 | 32 001a 9927 clr r25 |
||
32 | 33 /* epilogue: frame size=0 */ |
||
33 | 34 001c 0895 ret |
||
34 | 35 /* epilogue end (size=1) */ |
||
35 | 36 /* function GetActiveParamSetNumber size 17 (16) */ |
||
36 | 38 .global WriteParameterSet |
||
37 | 40 WriteParameterSet: |
||
38 | 41 /* prologue: frame size=0 */ |
||
39 | 42 /* prologue end (size=0) */ |
||
40 | 43 001e FB01 movw r30,r22 |
||
41 | 44 0020 282F mov r18,r24 |
||
42 | 45 0022 8630 cpi r24,lo8(6) |
||
43 | 46 0024 00F0 brlo .L6 |
||
44 | 47 0026 25E0 ldi r18,lo8(5) |
||
45 | 48 .L6: |
||
46 | 49 0028 842F mov r24,r20 |
||
47 | 50 002a 9927 clr r25 |
||
48 | 51 002c 429F mul r20,r18 |
||
49 | 52 002e D001 movw r26,r0 |
||
50 | 53 0030 1124 clr r1 |
||
51 | 54 0032 A050 subi r26,lo8(-(EEPromArray+100)) |
||
52 | 55 0034 B040 sbci r27,hi8(-(EEPromArray+100)) |
||
53 | 56 /* #APP */ |
||
54 | 57 .34_start: |
||
55 | 58 0036 0197 sbiw r24,1 |
||
56 | 59 0038 04F0 brlt .34_finished |
||
57 | 60 003a 0190 ld __tmp_reg__,z+ |
||
58 | 61 003c 0E94 0000 call __eeprom_write_byte_1F2021 |
||
59 | 62 0040 00C0 rjmp .34_start |
||
60 | 63 .34_finished: |
||
61 | 64 /* #NOAPP */ |
||
62 | 65 0042 A0E0 ldi r26,lo8(EEPromArray+2) |
||
63 | 66 0044 B0E0 ldi r27,hi8(EEPromArray+2) |
||
64 | 67 /* #APP */ |
||
65 | 68 0046 022E mov __tmp_reg__,r18 |
||
66 | 69 0048 0E94 0000 call __eeprom_write_byte_1F2021 |
||
67 | 70 /* #NOAPP */ |
||
68 | 71 /* epilogue: frame size=0 */ |
||
69 | 72 004c 0895 ret |
||
70 | 73 /* epilogue end (size=1) */ |
||
71 | 74 /* function WriteParameterSet size 33 (32) */ |
||
72 | 76 .global ReadParameterSet |
||
73 | 78 ReadParameterSet: |
||
74 | 79 /* prologue: frame size=0 */ |
||
75 | 80 004e CF93 push r28 |
||
76 | 81 0050 DF93 push r29 |
||
77 | 82 /* prologue end (size=2) */ |
||
78 | 83 0052 FB01 movw r30,r22 |
||
79 | 84 0054 C42F mov r28,r20 |
||
80 | 85 0056 DD27 clr r29 |
||
81 | 86 0058 8630 cpi r24,lo8(6) |
||
82 | 87 005a 00F0 brlo .L9 |
||
83 | 88 005c 85E0 ldi r24,lo8(5) |
||
84 | 89 .L9: |
||
85 | 90 005e 489F mul r20,r24 |
||
86 | 91 0060 D001 movw r26,r0 |
||
87 | 92 0062 1124 clr r1 |
||
88 | 93 0064 A050 subi r26,lo8(-(EEPromArray+100)) |
||
89 | 94 0066 B040 sbci r27,hi8(-(EEPromArray+100)) |
||
90 | 95 /* #APP */ |
||
91 | 96 .52_start: |
||
92 | 97 0068 2197 sbiw r28,1 |
||
93 | 98 006a 04F0 brlt .52_finished |
||
94 | 99 006c 0E94 0000 call __eeprom_read_byte_1F2021 |
||
95 | 100 0070 0192 st z+,__tmp_reg__ |
||
96 | 101 0072 00C0 rjmp .52_start |
||
97 | 102 .52_finished: |
||
98 | 103 /* #NOAPP */ |
||
99 | 104 /* epilogue: frame size=0 */ |
||
100 | 105 0074 DF91 pop r29 |
||
101 | 106 0076 CF91 pop r28 |
||
102 | 107 0078 0895 ret |
||
103 | 108 /* epilogue end (size=3) */ |
||
104 | 109 /* function ReadParameterSet size 30 (25) */ |
||
105 | 111 .global main |
||
106 | 113 main: |
||
107 | 114 /* prologue: frame size=0 */ |
||
108 | 115 007a 1F93 push r17 |
||
109 | 116 007c CF93 push r28 |
||
110 | 117 007e DF93 push r29 |
||
111 | 118 /* prologue end (size=3) */ |
||
112 | 119 0080 14B8 out 36-0x20,__zero_reg__ |
||
113 | 120 0082 15B8 out 37-0x20,__zero_reg__ |
||
114 | 121 0084 189B sbis 35-0x20,0 |
||
115 | 122 0086 00C0 rjmp .L12 |
||
116 | 123 0088 8BE0 ldi r24,lo8(11) |
||
117 | 124 008a 00C0 rjmp .L79 |
||
118 | 125 .L12: |
||
119 | 126 008c 8AE0 ldi r24,lo8(10) |
||
120 | 127 .L79: |
||
121 | 128 008e 8093 0000 sts PlatinenVersion,r24 |
||
122 | 129 0092 81E8 ldi r24,lo8(-127) |
||
123 | 130 0094 87B9 out 39-0x20,r24 |
||
124 | 131 0096 8FEF ldi r24,lo8(-1) |
||
125 | 132 0098 88B9 out 40-0x20,r24 |
||
126 | 133 009a 8BE1 ldi r24,lo8(27) |
||
127 | 134 009c 84B9 out 36-0x20,r24 |
||
128 | 135 009e 81E0 ldi r24,lo8(1) |
||
129 | 136 00a0 85B9 out 37-0x20,r24 |
||
130 | 137 00a2 8AE2 ldi r24,lo8(42) |
||
131 | 138 00a4 8AB9 out 42-0x20,r24 |
||
132 | 139 00a6 579A sbi 42-0x20,7 |
||
133 | 140 00a8 87EF ldi r24,lo8(-9) |
||
134 | 141 00aa 8BB9 out 43-0x20,r24 |
||
135 | 142 00ac 84B7 in r24,84-0x20 |
||
136 | 143 00ae 877F andi r24,lo8(-9) |
||
137 | 144 00b0 84BF out 84-0x20,r24 |
||
138 | 145 00b2 8091 6000 lds r24,96 |
||
139 | 146 00b6 8861 ori r24,lo8(24) |
||
140 | 147 00b8 8093 6000 sts 96,r24 |
||
141 | 148 00bc 1092 6000 sts 96,__zero_reg__ |
||
142 | 149 00c0 80ED ldi r24,lo8(2000) |
||
143 | 150 00c2 97E0 ldi r25,hi8(2000) |
||
144 | 151 00c4 9093 0000 sts (beeptime)+1,r25 |
||
145 | 152 00c8 8093 0000 sts beeptime,r24 |
||
146 | 153 00cc 1092 0000 sts (StickGier)+1,__zero_reg__ |
||
147 | 154 00d0 1092 0000 sts StickGier,__zero_reg__ |
||
148 | 155 00d4 1092 0000 sts (PPM_in+4)+1,__zero_reg__ |
||
149 | 156 00d8 1092 0000 sts PPM_in+4,__zero_reg__ |
||
150 | 157 00dc 1092 0000 sts (StickRoll)+1,__zero_reg__ |
||
151 | 158 00e0 1092 0000 sts StickRoll,__zero_reg__ |
||
152 | 159 00e4 1092 0000 sts (StickNick)+1,__zero_reg__ |
||
153 | 160 00e8 1092 0000 sts StickNick,__zero_reg__ |
||
154 | 161 00ec 8091 0000 lds r24,PlatinenVersion |
||
155 | 162 00f0 8A30 cpi r24,lo8(10) |
||
156 | 163 00f2 01F4 brne .L15 |
||
157 | 164 00f4 2898 cbi 37-0x20,0 |
||
158 | 165 00f6 00C0 rjmp .L17 |
||
159 | 166 .L15: |
||
160 | 167 00f8 289A sbi 37-0x20,0 |
||
161 | 168 .L17: |
||
162 | 169 00fa 0E94 0000 call Timer_Init |
||
163 | 170 00fe 0E94 0000 call UART_Init |
||
164 | 171 0102 0E94 0000 call rc_sum_init |
||
165 | 172 0106 0E94 0000 call ADC_Init |
||
166 | 173 010a 0E94 0000 call i2c_init |
||
167 | 174 /* #APP */ |
||
168 | 175 010e 7894 sei |
||
169 | 176 /* #NOAPP */ |
||
170 | 177 0110 1092 0000 sts VersionInfo,__zero_reg__ |
||
171 | 178 0114 8AE5 ldi r24,lo8(90) |
||
172 | 179 0116 8093 0000 sts VersionInfo+1,r24 |
||
173 | 180 011a 87E0 ldi r24,lo8(7) |
||
174 | 181 011c 8093 0000 sts VersionInfo+2,r24 |
||
175 | 182 0120 2091 0000 lds r18,PlatinenVersion |
||
176 | 183 0124 82E6 ldi r24,lo8(98) |
||
177 | 184 0126 90E0 ldi r25,hi8(98) |
||
178 | 185 0128 9F93 push r25 |
||
179 | 186 012a 8F93 push r24 |
||
180 | 187 012c 8AE5 ldi r24,lo8(90) |
||
181 | 188 012e 90E0 ldi r25,hi8(90) |
||
182 | 189 0130 9F93 push r25 |
||
183 | 190 0132 8F93 push r24 |
||
184 | 191 0134 1F92 push __zero_reg__ |
||
185 | 192 0136 1F92 push __zero_reg__ |
||
186 | 193 0138 822F mov r24,r18 |
||
187 | 194 013a 6AE0 ldi r22,lo8(10) |
||
188 | 195 013c 0E94 0000 call __udivmodqi4 |
||
189 | 196 0140 892F mov r24,r25 |
||
190 | 197 0142 9927 clr r25 |
||
191 | 198 0144 9F93 push r25 |
||
192 | 199 0146 8F93 push r24 |
||
193 | 200 0148 822F mov r24,r18 |
||
194 | 201 014a 0E94 0000 call __udivmodqi4 |
||
195 | 202 014e 9927 clr r25 |
||
196 | 203 0150 9F93 push r25 |
||
197 | 204 0152 8F93 push r24 |
||
198 | 205 0154 80E0 ldi r24,lo8(__c.2061) |
||
199 | 206 0156 90E0 ldi r25,hi8(__c.2061) |
||
200 | 207 0158 9F93 push r25 |
||
201 | 208 015a 8F93 push r24 |
||
202 | 209 015c 1F92 push __zero_reg__ |
||
203 | 210 015e 0E94 0000 call _printf_P |
||
204 | 211 0162 80E0 ldi r24,lo8(__c.2063) |
||
205 | 212 0164 90E0 ldi r25,hi8(__c.2063) |
||
206 | 213 0166 9F93 push r25 |
||
207 | 214 0168 8F93 push r24 |
||
208 | 215 016a 1F92 push __zero_reg__ |
||
209 | 216 016c 0E94 0000 call _printf_P |
||
210 | 217 0170 299A sbi 37-0x20,1 |
||
211 | 218 0172 A0E0 ldi r26,lo8(EEPromArray+1) |
||
212 | 219 0174 B0E0 ldi r27,hi8(EEPromArray+1) |
||
213 | 220 /* #APP */ |
||
214 | 221 0176 0E94 0000 call __eeprom_read_byte_1F2021 |
||
215 | 222 017a 802D mov r24,__tmp_reg__ |
||
216 | 223 /* #NOAPP */ |
||
217 | 224 017c 2DB7 in r18,__SP_L__ |
||
218 | 225 017e 3EB7 in r19,__SP_H__ |
||
219 | 226 0180 205F subi r18,lo8(-(16)) |
||
220 | 227 0182 3F4F sbci r19,hi8(-(16)) |
||
221 | 228 0184 0FB6 in __tmp_reg__,__SREG__ |
||
222 | 229 0186 F894 cli |
||
223 | 230 0188 3EBF out __SP_H__,r19 |
||
224 | 231 018a 0FBE out __SREG__,__tmp_reg__ |
||
225 | 232 018c 2DBF out __SP_L__,r18 |
||
226 | 233 018e 8434 cpi r24,lo8(68) |
||
227 | 234 0190 01F4 brne .+2 |
||
228 | 235 0192 00C0 rjmp .L18 |
||
229 | 236 0194 80E0 ldi r24,lo8(__c.2065) |
||
230 | 237 0196 90E0 ldi r25,hi8(__c.2065) |
||
231 | 238 0198 9F93 push r25 |
||
232 | 239 019a 8F93 push r24 |
||
233 | 240 019c 1F92 push __zero_reg__ |
||
234 | 241 019e 0E94 0000 call _printf_P |
||
235 | 242 01a2 0E94 0000 call DefaultKonstanten1 |
||
236 | 243 01a6 10E0 ldi r17,lo8(0) |
||
237 | 244 01a8 0F90 pop __tmp_reg__ |
||
238 | 245 01aa 0F90 pop __tmp_reg__ |
||
239 | 246 01ac 0F90 pop __tmp_reg__ |
||
240 | 247 .L67: |
||
241 | 248 01ae 1230 cpi r17,lo8(2) |
||
242 | 249 01b0 01F4 brne .L21 |
||
243 | 250 01b2 0E94 0000 call DefaultKonstanten2 |
||
244 | 251 01b6 47E4 ldi r20,lo8(71) |
||
245 | 252 01b8 60E0 ldi r22,lo8(EE_Parameter) |
||
246 | 253 01ba 70E0 ldi r23,hi8(EE_Parameter) |
||
247 | 254 01bc 82E0 ldi r24,lo8(2) |
||
248 | 255 01be 0E94 0000 call WriteParameterSet |
||
249 | 256 01c2 00C0 rjmp .L69 |
||
250 | 257 .L21: |
||
251 | 258 01c4 1330 cpi r17,lo8(3) |
||
252 | 259 01c6 01F4 brne .L23 |
||
253 | 260 .L69: |
||
254 | 261 01c8 0E94 0000 call DefaultKonstanten3 |
||
255 | 262 01cc 47E4 ldi r20,lo8(71) |
||
256 | 263 01ce 60E0 ldi r22,lo8(EE_Parameter) |
||
257 | 264 01d0 70E0 ldi r23,hi8(EE_Parameter) |
||
258 | 265 01d2 83E0 ldi r24,lo8(3) |
||
259 | 266 01d4 0E94 0000 call WriteParameterSet |
||
260 | 267 01d8 14E0 ldi r17,lo8(4) |
||
261 | 268 01da 00C0 rjmp .L70 |
||
262 | 269 .L23: |
||
263 | 270 01dc 1430 cpi r17,lo8(4) |
||
264 | 271 01de 00F0 brlo .L25 |
||
265 | 272 .L70: |
||
266 | 273 01e0 0E94 0000 call DefaultKonstanten2 |
||
267 | 274 .L25: |
||
268 | 275 01e4 47E4 ldi r20,lo8(71) |
||
269 | 276 01e6 60E0 ldi r22,lo8(EE_Parameter) |
||
270 | 277 01e8 70E0 ldi r23,hi8(EE_Parameter) |
||
271 | 278 01ea 812F mov r24,r17 |
||
272 | 279 01ec 0E94 0000 call WriteParameterSet |
||
273 | 280 01f0 1F5F subi r17,lo8(-(1)) |
||
274 | 281 01f2 1630 cpi r17,lo8(6) |
||
275 | 282 01f4 00F0 brlo .L67 |
||
276 | 283 01f6 83E0 ldi r24,lo8(3) |
||
277 | 284 01f8 20E0 ldi r18,lo8(EEPromArray+2) |
||
278 | 285 01fa 30E0 ldi r19,hi8(EEPromArray+2) |
||
279 | 286 01fc D901 movw r26,r18 |
||
280 | 287 /* #APP */ |
||
281 | 288 01fe 082E mov __tmp_reg__,r24 |
||
282 | 289 0200 0E94 0000 call __eeprom_write_byte_1F2021 |
||
283 | 290 /* #NOAPP */ |
||
284 | 291 0204 84E4 ldi r24,lo8(68) |
||
285 | 292 0206 2150 subi r18,lo8(-(-1)) |
||
286 | 293 0208 3040 sbci r19,hi8(-(-1)) |
||
287 | 294 020a D901 movw r26,r18 |
||
288 | 295 /* #APP */ |
||
289 | 296 020c 082E mov __tmp_reg__,r24 |
||
290 | 297 020e 0E94 0000 call __eeprom_write_byte_1F2021 |
||
291 | 298 /* #NOAPP */ |
||
292 | 299 .L18: |
||
293 | 300 0212 C0E0 ldi r28,lo8(EEPromArray+4) |
||
294 | 301 0214 D0E0 ldi r29,hi8(EEPromArray+4) |
||
295 | 302 0216 DE01 movw r26,r28 |
||
296 | 303 /* #APP */ |
||
297 | 304 0218 0E94 0000 call __eeprom_read_byte_1F2021 |
||
298 | 305 021c 802D mov r24,__tmp_reg__ |
||
299 | 306 /* #NOAPP */ |
||
300 | 307 021e 8530 cpi r24,lo8(5) |
||
301 | 308 0220 00F0 brlo .L28 |
||
302 | 309 0222 80E0 ldi r24,lo8(__c.2072) |
||
303 | 310 0224 90E0 ldi r25,hi8(__c.2072) |
||
304 | 311 0226 9F93 push r25 |
||
305 | 312 0228 8F93 push r24 |
||
306 | 313 022a 1F92 push __zero_reg__ |
||
307 | 314 022c 0E94 0000 call _printf_P |
||
308 | 315 0230 0F90 pop __tmp_reg__ |
||
309 | 316 0232 0F90 pop __tmp_reg__ |
||
310 | 317 0234 0F90 pop __tmp_reg__ |
||
311 | 318 .L28: |
||
312 | 319 0236 2297 sbiw r28,2 |
||
313 | 320 0238 DE01 movw r26,r28 |
||
314 | 321 /* #APP */ |
||
315 | 322 023a 0E94 0000 call __eeprom_read_byte_1F2021 |
||
316 | 323 023e 802D mov r24,__tmp_reg__ |
||
317 | 324 /* #NOAPP */ |
||
318 | 325 0240 8630 cpi r24,lo8(6) |
||
319 | 326 0242 00F0 brlo .L30 |
||
320 | 327 0244 82E0 ldi r24,lo8(2) |
||
321 | 328 0246 DE01 movw r26,r28 |
||
322 | 329 /* #APP */ |
||
323 | 330 0248 082E mov __tmp_reg__,r24 |
||
324 | 331 024a 0E94 0000 call __eeprom_write_byte_1F2021 |
||
325 | 332 /* #NOAPP */ |
||
326 | 333 .L30: |
||
327 | 334 024e 47E4 ldi r20,lo8(71) |
||
328 | 335 0250 60E0 ldi r22,lo8(EE_Parameter) |
||
329 | 336 0252 70E0 ldi r23,hi8(EE_Parameter) |
||
330 | 337 0254 0E94 0000 call ReadParameterSet |
||
331 | 338 0258 DE01 movw r26,r28 |
||
332 | 339 /* #APP */ |
||
333 | 340 025a 0E94 0000 call __eeprom_read_byte_1F2021 |
||
334 | 341 025e 802D mov r24,__tmp_reg__ |
||
335 | 342 /* #NOAPP */ |
||
336 | 343 0260 8630 cpi r24,lo8(6) |
||
337 | 344 0262 00F0 brlo .L32 |
||
338 | 345 0264 82E0 ldi r24,lo8(2) |
||
339 | 346 0266 DE01 movw r26,r28 |
||
340 | 347 /* #APP */ |
||
341 | 348 0268 082E mov __tmp_reg__,r24 |
||
342 | 349 026a 0E94 0000 call __eeprom_write_byte_1F2021 |
||
343 | 350 /* #NOAPP */ |
||
344 | 351 .L32: |
||
345 | 352 026e 9927 clr r25 |
||
346 | 353 0270 9F93 push r25 |
||
347 | 354 0272 8F93 push r24 |
||
348 | 355 0274 80E0 ldi r24,lo8(__c.2074) |
||
349 | 356 0276 90E0 ldi r25,hi8(__c.2074) |
||
350 | 357 0278 9F93 push r25 |
||
351 | 358 027a 8F93 push r24 |
||
352 | 359 027c 1F92 push __zero_reg__ |
||
353 | 360 027e 0E94 0000 call _printf_P |
||
354 | 361 0282 8091 0000 lds r24,EE_Parameter+8 |
||
355 | 362 0286 0F90 pop __tmp_reg__ |
||
356 | 363 0288 0F90 pop __tmp_reg__ |
||
357 | 364 028a 0F90 pop __tmp_reg__ |
||
358 | 365 028c 0F90 pop __tmp_reg__ |
||
359 | 366 028e 0F90 pop __tmp_reg__ |
||
360 | 367 0290 80FD sbrc r24,0 |
||
361 | 368 0292 00C0 rjmp .L34 |
||
362 | 369 0294 C8EE ldi r28,lo8(1000) |
||
363 | 370 0296 D3E0 ldi r29,hi8(1000) |
||
364 | 371 0298 00C0 rjmp .L36 |
||
365 | 372 .L34: |
||
366 | 373 029a 80E0 ldi r24,lo8(__c.2076) |
||
367 | 374 029c 90E0 ldi r25,hi8(__c.2076) |
||
368 | 375 029e 9F93 push r25 |
||
369 | 376 02a0 8F93 push r24 |
||
370 | 377 02a2 1F92 push __zero_reg__ |
||
371 | 378 02a4 0E94 0000 call _printf_P |
||
372 | 379 02a8 88EE ldi r24,lo8(1000) |
||
373 | 380 02aa 93E0 ldi r25,hi8(1000) |
||
374 | 381 02ac 0E94 0000 call SetDelay |
||
375 | 382 02b0 EC01 movw r28,r24 |
||
376 | 383 02b2 0E94 0000 call SucheLuftruckOffset |
||
377 | 384 02b6 0F90 pop __tmp_reg__ |
||
378 | 385 02b8 0F90 pop __tmp_reg__ |
||
379 | 386 02ba 0F90 pop __tmp_reg__ |
||
380 | 387 .L37: |
||
381 | 388 02bc CE01 movw r24,r28 |
||
382 | 389 02be 0E94 0000 call CheckDelay |
||
383 | 390 02c2 8823 tst r24 |
||
384 | 391 02c4 01F0 breq .L37 |
||
385 | 392 02c6 80E0 ldi r24,lo8(__c.2081) |
||
386 | 393 02c8 90E0 ldi r25,hi8(__c.2081) |
||
387 | 394 02ca 9F93 push r25 |
||
388 | 395 02cc 8F93 push r24 |
||
389 | 396 02ce 1F92 push __zero_reg__ |
||
390 | 397 02d0 0E94 0000 call _printf_P |
||
391 | 398 02d4 0F90 pop __tmp_reg__ |
||
392 | 399 02d6 0F90 pop __tmp_reg__ |
||
393 | 400 02d8 0F90 pop __tmp_reg__ |
||
394 | 401 .L36: |
||
395 | 402 02da 0E94 0000 call SetNeutral |
||
396 | 403 02de 8091 0000 lds r24,PlatinenVersion |
||
397 | 404 02e2 8A30 cpi r24,lo8(10) |
||
398 | 405 02e4 01F4 brne .L39 |
||
399 | 406 02e6 2898 cbi 37-0x20,0 |
||
400 | 407 02e8 00C0 rjmp .L41 |
||
401 | 408 .L39: |
||
402 | 409 02ea 289A sbi 37-0x20,0 |
||
403 | 410 .L41: |
||
404 | 411 02ec 80ED ldi r24,lo8(2000) |
||
405 | 412 02ee 97E0 ldi r25,hi8(2000) |
||
406 | 413 02f0 9093 0000 sts (beeptime)+1,r25 |
||
407 | 414 02f4 8093 0000 sts beeptime,r24 |
||
408 | 415 02f8 88EE ldi r24,lo8(1000) |
||
409 | 416 02fa 93E0 ldi r25,hi8(1000) |
||
410 | 417 02fc 9093 0000 sts (DebugIn+5)+1,r25 |
||
411 | 418 0300 8093 0000 sts DebugIn+5,r24 |
||
412 | 419 0304 85E5 ldi r24,lo8(85) |
||
413 | 420 0306 8093 0000 sts DebugIn,r24 |
||
414 | 421 030a 80E0 ldi r24,lo8(__c.2083) |
||
415 | 422 030c 90E0 ldi r25,hi8(__c.2083) |
||
416 | 423 030e 9F93 push r25 |
||
417 | 424 0310 8F93 push r24 |
||
418 | 425 0312 1F92 push __zero_reg__ |
||
419 | 426 0314 0E94 0000 call _printf_P |
||
420 | 427 0318 8091 0000 lds r24,EE_Parameter+8 |
||
421 | 428 031c 0F90 pop __tmp_reg__ |
||
422 | 429 031e 0F90 pop __tmp_reg__ |
||
423 | 430 0320 0F90 pop __tmp_reg__ |
||
424 | 431 0322 82FF sbrs r24,2 |
||
425 | 432 0324 00C0 rjmp .L42 |
||
426 | 433 0326 80E0 ldi r24,lo8(__c.2085) |
||
427 | 434 0328 90E0 ldi r25,hi8(__c.2085) |
||
428 | 435 032a 00C0 rjmp .L80 |
||
429 | 436 .L42: |
||
430 | 437 032c 80E0 ldi r24,lo8(__c.2087) |
||
431 | 438 032e 90E0 ldi r25,hi8(__c.2087) |
||
432 | 439 .L80: |
||
433 | 440 0330 9F93 push r25 |
||
434 | 441 0332 8F93 push r24 |
||
435 | 442 0334 1F92 push __zero_reg__ |
||
436 | 443 0336 0E94 0000 call _printf_P |
||
437 | 444 033a 0F90 pop __tmp_reg__ |
||
438 | 445 033c 0F90 pop __tmp_reg__ |
||
439 | 446 033e 0F90 pop __tmp_reg__ |
||
440 | 447 0340 80E0 ldi r24,lo8(__c.2089) |
||
441 | 448 0342 90E0 ldi r25,hi8(__c.2089) |
||
442 | 449 0344 9F93 push r25 |
||
443 | 450 0346 8F93 push r24 |
||
444 | 451 0348 1F92 push __zero_reg__ |
||
445 | 452 034a 0E94 0000 call _printf_P |
||
446 | 453 034e 0E94 0000 call LcdClear |
||
447 | 454 0352 88E8 ldi r24,lo8(5000) |
||
448 | 455 0354 93E1 ldi r25,hi8(5000) |
||
449 | 456 0356 9093 0000 sts (I2CTimeout)+1,r25 |
||
450 | 457 035a 8093 0000 sts I2CTimeout,r24 |
||
451 | 458 035e 0F90 pop __tmp_reg__ |
||
452 | 459 0360 0F90 pop __tmp_reg__ |
||
453 | 460 0362 0F90 pop __tmp_reg__ |
||
454 | 461 .L81: |
||
455 | 462 0364 8091 0000 lds r24,UpdateMotor |
||
456 | 463 0368 8823 tst r24 |
||
457 | 464 036a 01F4 brne .+2 |
||
458 | 465 036c 00C0 rjmp .L46 |
||
459 | 466 036e 1092 0000 sts UpdateMotor,__zero_reg__ |
||
460 | 467 0372 0E94 0000 call MotorRegler |
||
461 | 468 0376 0E94 0000 call SendMotorData |
||
462 | 469 037a 2091 0000 lds r18,PlatinenVersion |
||
463 | 470 037e 2A30 cpi r18,lo8(10) |
||
464 | 471 0380 01F4 brne .L48 |
||
465 | 472 0382 2898 cbi 37-0x20,0 |
||
466 | 473 0384 00C0 rjmp .L50 |
||
467 | 474 .L48: |
||
468 | 475 0386 289A sbi 37-0x20,0 |
||
469 | 476 .L50: |
||
470 | 477 0388 8091 0000 lds r24,PcZugriff |
||
471 | 478 038c 8823 tst r24 |
||
472 | 479 038e 01F0 breq .L51 |
||
473 | 480 0390 8150 subi r24,lo8(-(-1)) |
||
474 | 481 0392 8093 0000 sts PcZugriff,r24 |
||
475 | 482 0396 00C0 rjmp .L53 |
||
476 | 483 .L51: |
||
477 | 484 0398 1092 0000 sts DubWiseKeys,__zero_reg__ |
||
478 | 485 039c 1092 0000 sts DubWiseKeys+1,__zero_reg__ |
||
479 | 486 03a0 1092 0000 sts (ExternStickNick)+1,__zero_reg__ |
||
480 | 487 03a4 1092 0000 sts ExternStickNick,__zero_reg__ |
||
481 | 488 03a8 1092 0000 sts (ExternStickRoll)+1,__zero_reg__ |
||
482 | 489 03ac 1092 0000 sts ExternStickRoll,__zero_reg__ |
||
483 | 490 03b0 1092 0000 sts (ExternStickGier)+1,__zero_reg__ |
||
484 | 491 03b4 1092 0000 sts ExternStickGier,__zero_reg__ |
||
485 | 492 .L53: |
||
486 | 493 03b8 8091 0000 lds r24,SenderOkay |
||
487 | 494 03bc 8823 tst r24 |
||
488 | 495 03be 01F0 breq .L54 |
||
489 | 496 03c0 8091 0000 lds r24,SenderOkay |
||
490 | 497 03c4 8150 subi r24,lo8(-(-1)) |
||
491 | 498 03c6 8093 0000 sts SenderOkay,r24 |
||
492 | 499 .L54: |
||
493 | 500 03ca 8091 0000 lds r24,I2CTimeout |
||
494 | 501 03ce 9091 0000 lds r25,(I2CTimeout)+1 |
||
495 | 502 03d2 892B or r24,r25 |
||
496 | 503 03d4 01F4 brne .L56 |
||
497 | 504 03d6 85E0 ldi r24,lo8(5) |
||
498 | 505 03d8 90E0 ldi r25,hi8(5) |
||
499 | 506 03da 9093 0000 sts (I2CTimeout)+1,r25 |
||
500 | 507 03de 8093 0000 sts I2CTimeout,r24 |
||
501 | 508 03e2 0E94 0000 call i2c_reset |
||
502 | 509 03e6 8091 0000 lds r24,BeepMuster |
||
503 | 510 03ea 9091 0000 lds r25,(BeepMuster)+1 |
||
504 | 511 03ee 8F5F subi r24,lo8(-1) |
||
505 | 512 03f0 9F4F sbci r25,hi8(-1) |
||
506 | 513 03f2 01F4 brne .L46 |
||
507 | 514 03f4 8091 0000 lds r24,MotorenEin |
||
508 | 515 03f8 8823 tst r24 |
||
509 | 516 03fa 01F0 breq .L46 |
||
510 | 517 03fc 80E1 ldi r24,lo8(10000) |
||
511 | 518 03fe 97E2 ldi r25,hi8(10000) |
||
512 | 519 0400 9093 0000 sts (beeptime)+1,r25 |
||
513 | 520 0404 8093 0000 sts beeptime,r24 |
||
514 | 521 0408 80E8 ldi r24,lo8(128) |
||
515 | 522 040a 90E0 ldi r25,hi8(128) |
||
516 | 523 040c 9093 0000 sts (BeepMuster)+1,r25 |
||
517 | 524 0410 8093 0000 sts BeepMuster,r24 |
||
518 | 525 0414 00C0 rjmp .L46 |
||
519 | 526 .L56: |
||
520 | 527 0416 8091 0000 lds r24,I2CTimeout |
||
521 | 528 041a 9091 0000 lds r25,(I2CTimeout)+1 |
||
522 | 529 041e 0197 sbiw r24,1 |
||
523 | 530 0420 9093 0000 sts (I2CTimeout)+1,r25 |
||
524 | 531 0424 8093 0000 sts I2CTimeout,r24 |
||
525 | 532 0428 2A30 cpi r18,lo8(10) |
||
526 | 533 042a 01F4 brne .L60 |
||
527 | 534 042c 2898 cbi 37-0x20,0 |
||
528 | 535 042e 00C0 rjmp .L46 |
||
529 | 536 .L60: |
||
530 | 537 0430 289A sbi 37-0x20,0 |
||
531 | 538 .L46: |
||
532 | 539 0432 0E94 0000 call DatenUebertragung |
||
533 | 540 0436 0E94 0000 call BearbeiteRxDaten |
||
534 | 541 043a CE01 movw r24,r28 |
||
535 | 542 043c 0E94 0000 call CheckDelay |
||
536 | 543 0440 8823 tst r24 |
||
537 | 544 0442 01F4 brne .+2 |
||
538 | 545 0444 00C0 rjmp .L81 |
||
539 | 546 0446 2091 0000 lds r18,UBat |
||
540 | 547 044a 3091 0000 lds r19,(UBat)+1 |
||
541 | 548 044e 8091 0000 lds r24,EE_Parameter+24 |
||
542 | 549 0452 9927 clr r25 |
||
543 | 550 0454 2817 cp r18,r24 |
||
544 | 551 0456 3907 cpc r19,r25 |
||
545 | 552 0458 04F4 brge .L63 |
||
546 | 553 045a 8091 0000 lds r24,BeepMuster |
||
547 | 554 045e 9091 0000 lds r25,(BeepMuster)+1 |
||
548 | 555 0462 8F5F subi r24,lo8(-1) |
||
549 | 556 0464 9F4F sbci r25,hi8(-1) |
||
550 | 557 0466 01F4 brne .L63 |
||
551 | 558 0468 80E7 ldi r24,lo8(6000) |
||
552 | 559 046a 97E1 ldi r25,hi8(6000) |
||
553 | 560 046c 9093 0000 sts (beeptime)+1,r25 |
||
554 | 561 0470 8093 0000 sts beeptime,r24 |
||
555 | 562 0474 80E0 ldi r24,lo8(768) |
||
556 | 563 0476 93E0 ldi r25,hi8(768) |
||
557 | 564 0478 9093 0000 sts (BeepMuster)+1,r25 |
||
558 | 565 047c 8093 0000 sts BeepMuster,r24 |
||
559 | 566 .L63: |
||
560 | 567 0480 84E6 ldi r24,lo8(100) |
||
561 | 568 0482 90E0 ldi r25,hi8(100) |
||
562 | 569 0484 0E94 0000 call SetDelay |
||
563 | 570 0488 EC01 movw r28,r24 |
||
564 | 571 048a 00C0 rjmp .L81 |
||
565 | 572 /* epilogue: frame size=0 */ |
||
566 | 573 /* epilogue: noreturn */ |
||
567 | 574 /* epilogue end (size=0) */ |
||
568 | 575 /* function main size 532 (529) */ |
||
569 | 577 .global PlatinenVersion |
||
570 | 578 .data |
||
571 | 581 PlatinenVersion: |
||
572 | 582 0000 0A .byte 10 |
||
573 | 583 .section .progmem.data,"a",@progbits |
||
574 | 586 __c.2089: |
||
575 | 587 0000 0A0A 0D00 .string "\n\n\r" |
||
576 | 590 __c.2087: |
||
577 | 591 0004 4E65 7574 .string "Neutral" |
||
578 | 591 7261 6C00 |
||
579 | 594 __c.2085: |
||
580 | 595 000c 4865 6164 .string "HeadingHold" |
||
581 | 595 696E 6748 |
||
582 | 595 6F6C 6400 |
||
583 | 598 __c.2083: |
||
584 | 599 0018 0A0D 5374 .string "\n\rSteuerung: " |
||
585 | 599 6575 6572 |
||
586 | 599 756E 673A |
||
587 | 599 2000 |
||
588 | 602 __c.2081: |
||
589 | 603 0026 4F4B 0A0D .string "OK\n\r" |
||
590 | 603 00 |
||
591 | 606 __c.2076: |
||
592 | 607 002b 0A0D 4162 .string "\n\rAbgleich Luftdrucksensor.." |
||
593 | 607 676C 6569 |
||
594 | 607 6368 204C |
||
595 | 607 7566 7464 |
||
596 | 607 7275 636B |
||
597 | 610 __c.2074: |
||
598 | 611 0048 0A0D 4265 .string "\n\rBenutze Parametersatz %d" |
||
599 | 611 6E75 747A |
||
600 | 611 6520 5061 |
||
601 | 611 7261 6D65 |
||
602 | 611 7465 7273 |
||
603 | 614 __c.2072: |
||
604 | 615 0063 0A0D 4143 .string "\n\rACC nicht abgeglichen!" |
||
605 | 615 4320 6E69 |
||
606 | 615 6368 7420 |
||
607 | 615 6162 6765 |
||
608 | 615 676C 6963 |
||
609 | 618 __c.2065: |
||
610 | 619 007c 0A0D 496E .string "\n\rInit. EEPROM: Generiere Default-Parameter..." |
||
611 | 619 6974 2E20 |
||
612 | 619 4545 5052 |
||
613 | 619 4F4D 3A20 |
||
614 | 619 4765 6E65 |
||
615 | 622 __c.2063: |
||
616 | 623 00ab 0A0D 3D3D .string "\n\r==============================" |
||
617 | 623 3D3D 3D3D |
||
618 | 623 3D3D 3D3D |
||
619 | 623 3D3D 3D3D |
||
620 | 623 3D3D 3D3D |
||
621 | 626 __c.2061: |
||
622 | 627 00cc 0A0D 466C .string "\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c " |
||
623 | 627 6967 6874 |
||
624 | 627 436F 6E74 |
||
625 | 627 726F 6C0A |
||
626 | 627 0D48 6172 |
||
627 | 628 .global EEPromArray |
||
628 | 629 .section .eeprom,"aw",@progbits |
||
629 | 632 EEPromArray: |
||
630 | 633 0000 0000 0000 .skip 2048,0 |
||
631 | 633 0000 0000 |
||
632 | 633 0000 0000 |
||
633 | 633 0000 0000 |
||
634 | 633 0000 0000 |
||
635 | 634 /* File "main.c": code 612 = 0x0264 ( 602), prologues 5, epilogues 5 */ |
||
636 | DEFINED SYMBOLS |
||
637 | *ABS*:00000000 main.c |
||
638 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:3 *ABS*:0000003f __SREG__ |
||
639 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:4 *ABS*:0000003e __SP_H__ |
||
640 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:5 *ABS*:0000003d __SP_L__ |
||
641 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:6 *ABS*:00000000 __tmp_reg__ |
||
642 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:7 *ABS*:00000001 __zero_reg__ |
||
643 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:13 .text:00000000 GetActiveParamSetNumber |
||
644 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:632 .eeprom:00000000 EEPromArray |
||
645 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:40 .text:0000001e WriteParameterSet |
||
646 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:57 .text:00000036 .34_start |
||
647 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:63 .text:00000042 .34_finished |
||
648 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:78 .text:0000004e ReadParameterSet |
||
649 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:96 .text:00000068 .52_start |
||
650 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:102 .text:00000074 .52_finished |
||
651 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:113 .text:0000007a main |
||
652 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:581 .data:00000000 PlatinenVersion |
||
653 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:626 .progmem.data:000000cc __c.2061 |
||
654 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:622 .progmem.data:000000ab __c.2063 |
||
655 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:618 .progmem.data:0000007c __c.2065 |
||
656 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:614 .progmem.data:00000063 __c.2072 |
||
657 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:610 .progmem.data:00000048 __c.2074 |
||
658 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:606 .progmem.data:0000002b __c.2076 |
||
659 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:602 .progmem.data:00000026 __c.2081 |
||
660 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:598 .progmem.data:00000018 __c.2083 |
||
661 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:594 .progmem.data:0000000c __c.2085 |
||
662 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:590 .progmem.data:00000004 __c.2087 |
||
663 | C:\Users\gunterl\AppData\Local\Temp/ccgFeh1K.s:586 .progmem.data:00000000 __c.2089 |
||
664 | |||
665 | UNDEFINED SYMBOLS |
||
666 | __do_copy_data |
||
667 | __do_clear_bss |
||
668 | __eeprom_read_byte_1F2021 |
||
669 | __eeprom_write_byte_1F2021 |
||
670 | beeptime |
||
671 | StickGier |
||
672 | PPM_in |
||
673 | StickRoll |
||
674 | StickNick |
||
675 | Timer_Init |
||
676 | UART_Init |
||
677 | rc_sum_init |
||
678 | ADC_Init |
||
679 | i2c_init |
||
680 | VersionInfo |
||
681 | __udivmodqi4 |
||
682 | _printf_P |
||
683 | DefaultKonstanten1 |
||
684 | DefaultKonstanten2 |
||
685 | EE_Parameter |
||
686 | DefaultKonstanten3 |
||
687 | SetDelay |
||
688 | SucheLuftruckOffset |
||
689 | CheckDelay |
||
690 | SetNeutral |
||
691 | DebugIn |
||
692 | LcdClear |
||
693 | I2CTimeout |
||
694 | UpdateMotor |
||
695 | MotorRegler |
||
696 | SendMotorData |
||
697 | PcZugriff |
||
698 | DubWiseKeys |
||
699 | ExternStickNick |
||
700 | ExternStickRoll |
||
701 | ExternStickGier |
||
702 | SenderOkay |
||
703 | i2c_reset |
||
704 | BeepMuster |
||
705 | MotorenEin |
||
706 | DatenUebertragung |
||
707 | BearbeiteRxDaten |
||
708 | UBat |