Blame | Last modification | View Log | RSS feed
1 .file "main.c"
2 .arch atmega644p
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
10 .global FoundMotors
11 .global FoundMotors
12 .section .bss
15 FoundMotors:
16 0000 00 .skip 1,0
17 .global FlugSekunden
18 .global FlugSekunden
21 FlugSekunden:
22 0001 0000 .skip 2,0
23 .global FlugMinutenGesamt
24 .global FlugMinutenGesamt
27 FlugMinutenGesamt:
28 0003 0000 .skip 2,0
29 .global FlugMinuten
30 .global FlugMinuten
33 FlugMinuten:
34 0005 0000 .skip 2,0
35 .global BattLowVoltageWarning
36 .data
39 BattLowVoltageWarning:
40 0000 5E .byte 94
41 .global SendVersionToNavi
44 SendVersionToNavi:
45 0001 01 .byte 1
46 .global PlatinenVersion
49 PlatinenVersion:
50 0002 0A .byte 10
53 stick.15:
54 0003 01 .byte 1
55 .text
56 .global CalMk3Mag
58 CalMk3Mag:
59 /* prologue: frame size=0 */
60 /* prologue end (size=0) */
61 0000 8091 0000 lds r24,EE_Parameter+1
62 0004 E82F mov r30,r24
63 0006 FF27 clr r31
64 0008 EE0F add r30,r30
65 000a FF1F adc r31,r31
66 000c E050 subi r30,lo8(-(PPM_in))
67 000e F040 sbci r31,hi8(-(PPM_in))
68 0010 8081 ld r24,Z
69 0012 9181 ldd r25,Z+1
70 0014 8D5E subi r24,lo8(-19)
71 0016 9F4F sbci r25,hi8(-19)
72 0018 14F0 brlt .L2
73 001a 1092 0000 sts stick.15,__zero_reg__
74 .L2:
75 001e 8081 ld r24,Z
76 0020 9181 ldd r25,Z+1
77 0022 8A5B subi r24,lo8(-70)
78 0024 9F4F sbci r25,hi8(-70)
79 0026 CCF4 brge .L3
80 0028 8091 0000 lds r24,stick.15
81 002c 8823 tst r24
82 002e A9F4 brne .L3
83 0030 81E0 ldi r24,lo8(1)
84 0032 8093 0000 sts stick.15,r24
85 0036 8091 0000 lds r24,WinkelOut+6
86 003a 8F5F subi r24,lo8(-(1))
87 003c 8093 0000 sts WinkelOut+6,r24
88 0040 8530 cpi r24,lo8(5)
89 0042 38F0 brlo .L4
90 0044 88EE ldi r24,lo8(1000)
91 0046 93E0 ldi r25,hi8(1000)
92 0048 9093 0000 sts (beeptime)+1,r25
93 004c 8093 0000 sts beeptime,r24
94 0050 04C0 rjmp .L3
95 .L4:
96 0052 66E9 ldi r22,lo8(150)
97 0054 70E0 ldi r23,hi8(150)
98 0056 0E94 0000 call Piep
99 .L3:
100 005a 8091 0000 lds r24,WinkelOut+6
101 005e 9927 clr r25
102 0060 9093 0000 sts (DebugOut+40)+1,r25
103 0064 8093 0000 sts DebugOut+40,r24
104 /* epilogue: frame size=0 */
105 0068 0895 ret
106 /* epilogue end (size=1) */
107 /* function CalMk3Mag size 55 (54) */
109 .section .progmem.data,"a",@progbits
112 __c.12:
113 0000 0A0D 4261 .string "\n\rBatt:"
113 7474 3A00
116 __c.13:
117 0008 2025 6420 .string " %d Cells "
117 4365 6C6C
117 7320 00
120 __c.14:
121 0013 204C 6F77 .string " Low warning level: %d.%d"
121 2077 6172
121 6E69 6E67
121 206C 6576
121 656C 3A20
122 .text
123 .global LipoDetection
125 LipoDetection:
126 /* prologue: frame size=0 */
127 006a 1F93 push r17
128 006c CF93 push r28
129 006e DF93 push r29
130 /* prologue end (size=3) */
131 0070 182F mov r17,r24
132 0072 8823 tst r24
133 0074 89F0 breq .L7
134 0076 80E0 ldi r24,lo8(__c.12)
135 0078 90E0 ldi r25,hi8(__c.12)
136 007a 9F93 push r25
137 007c 8F93 push r24
138 007e 80E0 ldi r24,lo8(pm(uart_putchar))
139 0080 90E0 ldi r25,hi8(pm(uart_putchar))
140 0082 9F93 push r25
141 0084 8F93 push r24
142 0086 E091 0000 lds r30,_printf_P
143 008a F091 0000 lds r31,(_printf_P)+1
144 008e 0995 icall
145 0090 0F90 pop __tmp_reg__
146 0092 0F90 pop __tmp_reg__
147 0094 0F90 pop __tmp_reg__
148 0096 0F90 pop __tmp_reg__
149 .L7:
150 0098 8091 0000 lds r24,EE_Parameter+36
151 009c 8233 cpi r24,lo8(50)
152 009e 08F0 brlo .+2
153 00a0 44C0 rjmp .L8
154 00a2 84EF ldi r24,lo8(500)
155 00a4 91E0 ldi r25,hi8(500)
156 00a6 0E94 0000 call SetDelay
157 00aa EC01 movw r28,r24
158 00ac 1123 tst r17
159 00ae 29F0 breq .L9
160 .L10:
161 00b0 CE01 movw r24,r28
162 00b2 0E94 0000 call CheckDelay
163 00b6 8823 tst r24
164 00b8 D9F3 breq .L10
165 .L9:
166 00ba C2E0 ldi r28,lo8(2)
167 00bc D0E0 ldi r29,hi8(2)
168 00be 26E5 ldi r18,lo8(86)
169 00c0 30E0 ldi r19,hi8(86)
170 .L17:
171 00c2 8091 0000 lds r24,UBat
172 00c6 9091 0000 lds r25,(UBat)+1
173 00ca 8217 cp r24,r18
174 00cc 9307 cpc r25,r19
175 00ce 30F0 brlo .L14
176 00d0 2196 adiw r28,1
177 00d2 255D subi r18,lo8(-(43))
178 00d4 3F4F sbci r19,hi8(-(43))
179 00d6 C730 cpi r28,7
180 00d8 D105 cpc r29,__zero_reg__
181 00da 98F3 brlo .L17
182 .L14:
183 00dc 8091 0000 lds r24,EE_Parameter+36
184 00e0 9927 clr r25
185 00e2 C89F mul r28,r24
186 00e4 9001 movw r18,r0
187 00e6 C99F mul r28,r25
188 00e8 300D add r19,r0
189 00ea D89F mul r29,r24
190 00ec 300D add r19,r0
191 00ee 1124 clr r1
192 00f0 2093 0000 sts BattLowVoltageWarning,r18
193 00f4 1123 tst r17
194 00f6 D9F0 breq .L19
195 00f8 68EC ldi r22,lo8(200)
196 00fa 70E0 ldi r23,hi8(200)
197 00fc 8C2F mov r24,r28
198 00fe 0E94 0000 call Piep
199 0102 DF93 push r29
200 0104 CF93 push r28
201 0106 80E0 ldi r24,lo8(__c.13)
202 0108 90E0 ldi r25,hi8(__c.13)
203 010a 9F93 push r25
204 010c 8F93 push r24
205 010e 80E0 ldi r24,lo8(pm(uart_putchar))
206 0110 90E0 ldi r25,hi8(pm(uart_putchar))
207 0112 9F93 push r25
208 0114 8F93 push r24
209 0116 E091 0000 lds r30,_printf_P
210 011a F091 0000 lds r31,(_printf_P)+1
211 011e 0995 icall
212 0120 8DB7 in r24,__SP_L__
213 0122 9EB7 in r25,__SP_H__
214 0124 0696 adiw r24,6
215 0126 8DBF out __SP_L__,r24
216 0128 02C0 rjmp .L19
217 .L8:
218 012a 8093 0000 sts BattLowVoltageWarning,r24
219 .L19:
220 012e 1123 tst r17
221 0130 11F1 breq .L6
222 0132 8091 0000 lds r24,BattLowVoltageWarning
223 0136 6AE0 ldi r22,lo8(10)
224 0138 0E94 0000 call __udivmodqi4
225 013c 892F mov r24,r25
226 013e 9927 clr r25
227 0140 9F93 push r25
228 0142 8F93 push r24
229 0144 8091 0000 lds r24,BattLowVoltageWarning
230 0148 0E94 0000 call __udivmodqi4
231 014c 9927 clr r25
232 014e 9F93 push r25
233 0150 8F93 push r24
234 0152 80E0 ldi r24,lo8(__c.14)
235 0154 90E0 ldi r25,hi8(__c.14)
236 0156 9F93 push r25
237 0158 8F93 push r24
238 015a 80E0 ldi r24,lo8(pm(uart_putchar))
239 015c 90E0 ldi r25,hi8(pm(uart_putchar))
240 015e 9F93 push r25
241 0160 8F93 push r24
242 0162 E091 0000 lds r30,_printf_P
243 0166 F091 0000 lds r31,(_printf_P)+1
244 016a 0995 icall
245 016c 2DB7 in r18,__SP_L__
246 016e 3EB7 in r19,__SP_H__
247 0170 285F subi r18,lo8(-(8))
248 0172 3F4F sbci r19,hi8(-(8))
249 0174 2DBF out __SP_L__,r18
250 .L6:
251 /* epilogue: frame size=0 */
252 0176 DF91 pop r29
253 0178 CF91 pop r28
254 017a 1F91 pop r17
255 017c 0895 ret
256 /* epilogue end (size=4) */
257 /* function LipoDetection size 138 (131) */
259 .section .progmem.data
262 __c.0:
263 002d 0A0D 466F .string "\n\rFound BL-Ctrl: "
263 756E 6420
263 424C 2D43
263 7472 6C3A
263 2000
266 __c.1:
267 003f 2564 00 .string "%d"
270 __c.2:
271 0042 0A0D 0A0D .string "\n\r\n\r!! MISSING BL-CTRL: %d !!"
271 2121 204D
271 4953 5349
271 4E47 2042
271 4C2D 4354
274 __c.3:
275 0060 0A0D 3D3D .string "\n\r==================================="
275 3D3D 3D3D
275 3D3D 3D3D
275 3D3D 3D3D
275 3D3D 3D3D
278 __c.4:
279 0086 0A0D 4361 .string "\n\rCalibrating pressure sensor.."
279 6C69 6272
279 6174 696E
279 6720 7072
279 6573 7375
282 __c.5:
283 00a6 4F4B 0A0D .string "OK\n\r"
283 00
286 __c.6:
287 00ab 0A0D 466C .string "\n\rFlight-time %u min Total:%u min"
287 6967 6874
287 2D74 696D
287 6520 2575
287 206D 696E
290 __c.7:
291 00ce 0A0D 436F .string "\n\rControl: "
291 6E74 726F
291 6C3A 2000
294 __c.8:
295 00da 4865 6164 .string "HeadingHold"
295 696E 6748
295 6F6C 6400
298 __c.9:
299 00e6 4E6F 726D .string "Normal (ACC-Mode)"
299 616C 2028
299 4143 432D
299 4D6F 6465
299 2900
302 __c.10:
303 00f8 0A0D 3D3D .string "\n\r===================================\n\r"
303 3D3D 3D3D
303 3D3D 3D3D
303 3D3D 3D3D
303 3D3D 3D3D
304 .lcomm second.11,1
305 .text
306 .global main
308 main:
309 /* prologue: frame size=0 */
310 017e C0E0 ldi r28,lo8(__stack - 0)
311 0180 D0E0 ldi r29,hi8(__stack - 0)
312 0182 DEBF out __SP_H__,r29
313 0184 CDBF out __SP_L__,r28
314 /* prologue end (size=4) */
315 0186 8824 clr r8
316 0188 9924 clr r9
317 018a 14B8 out 36-0x20,__zero_reg__
318 018c 15B8 out 37-0x20,__zero_reg__
319 018e 07EE ldi r16,lo8(999)
320 0190 13E0 ldi r17,hi8(999)
321 .L26:
322 0192 0253 subi r16,lo8(-(-50))
323 0194 1040 sbci r17,hi8(-(-50))
324 0196 17FF sbrs r17,7
325 0198 FCCF rjmp .L26
326 019a 189B sbis 35-0x20,0
327 019c 06C0 rjmp .L27
328 019e 199B sbis 35-0x20,1
329 01a0 02C0 rjmp .L28
330 01a2 8DE0 ldi r24,lo8(13)
331 01a4 07C0 rjmp .L228
332 .L28:
333 01a6 8BE0 ldi r24,lo8(11)
334 01a8 05C0 rjmp .L228
335 .L27:
336 01aa 199B sbis 35-0x20,1
337 01ac 02C0 rjmp .L31
338 01ae 84E1 ldi r24,lo8(20)
339 01b0 01C0 rjmp .L228
340 .L31:
341 01b2 8AE0 ldi r24,lo8(10)
342 .L228:
343 01b4 8093 0000 sts PlatinenVersion,r24
344 01b8 81E8 ldi r24,lo8(-127)
345 01ba 87B9 out 39-0x20,r24
346 01bc 3E9A sbi 39-0x20,6
347 01be 8FEF ldi r24,lo8(-1)
348 01c0 88B9 out 40-0x20,r24
349 01c2 8BE1 ldi r24,lo8(27)
350 01c4 84B9 out 36-0x20,r24
351 01c6 81E0 ldi r24,lo8(1)
352 01c8 85B9 out 37-0x20,r24
353 01ca 8EE3 ldi r24,lo8(62)
354 01cc 8AB9 out 42-0x20,r24
355 01ce 87E4 ldi r24,lo8(71)
356 01d0 8BB9 out 43-0x20,r24
357 01d2 469A sbi 40-0x20,6
358 01d4 84B7 in r24,84-0x20
359 01d6 877F andi r24,lo8(-9)
360 01d8 84BF out 84-0x20,r24
361 01da 8091 6000 lds r24,96
362 01de 8861 ori r24,lo8(24)
363 01e0 8093 6000 sts 96,r24
364 01e4 1092 6000 sts 96,__zero_reg__
365 01e8 84EC ldi r24,lo8(2500)
366 01ea 99E0 ldi r25,hi8(2500)
367 01ec 9093 0000 sts (beeptime)+1,r25
368 01f0 8093 0000 sts beeptime,r24
369 01f4 1092 0000 sts (StickGier)+1,__zero_reg__
370 01f8 1092 0000 sts StickGier,__zero_reg__
371 01fc 1092 0000 sts (PPM_in+4)+1,__zero_reg__
372 0200 1092 0000 sts PPM_in+4,__zero_reg__
373 0204 1092 0000 sts (StickRoll)+1,__zero_reg__
374 0208 1092 0000 sts StickRoll,__zero_reg__
375 020c 1092 0000 sts (StickNick)+1,__zero_reg__
376 0210 1092 0000 sts StickNick,__zero_reg__
377 0214 2091 0000 lds r18,PlatinenVersion
378 0218 2431 cpi r18,lo8(20)
379 021a 28F0 brlo .L33
380 021c 84EC ldi r24,lo8(1220)
381 021e 94E0 ldi r25,hi8(1220)
382 0220 A0E0 ldi r26,hlo8(1220)
383 0222 B0E0 ldi r27,hhi8(1220)
384 0224 04C0 rjmp .L229
385 .L33:
386 0226 8BE0 ldi r24,lo8(1291)
387 0228 95E0 ldi r25,hi8(1291)
388 022a A0E0 ldi r26,hlo8(1291)
389 022c B0E0 ldi r27,hhi8(1291)
390 .L229:
391 022e 8093 0000 sts GIER_GRAD_FAKTOR,r24
392 0232 9093 0000 sts (GIER_GRAD_FAKTOR)+1,r25
393 0236 A093 0000 sts (GIER_GRAD_FAKTOR)+2,r26
394 023a B093 0000 sts (GIER_GRAD_FAKTOR)+3,r27
395 023e 2A30 cpi r18,lo8(10)
396 0240 11F0 breq .L36
397 0242 2431 cpi r18,lo8(20)
398 0244 10F0 brlo .L35
399 .L36:
400 0246 2898 cbi 37-0x20,0
401 0248 01C0 rjmp .L37
402 .L35:
403 024a 289A sbi 37-0x20,0
404 .L37:
405 024c 0E94 0000 call Timer_Init
406 0250 0E94 0000 call TIMER2_Init
407 0254 0E94 0000 call UART_Init
408 0258 0E94 0000 call rc_sum_init
409 025c 0E94 0000 call ADC_Init
410 0260 0E94 0000 call I2C_Init
411 0264 0E94 0000 call SPI_MasterInit
412 0268 0E94 0000 call Capacity_Init
413 026c 0E94 0000 call LIBFC_Init
414 0270 8091 0000 lds r24,PlatinenVersion
415 0274 8C30 cpi r24,lo8(12)
416 0276 10F4 brsh .L38
417 0278 299A sbi 37-0x20,1
418 027a 01C0 rjmp .L39
419 .L38:
420 027c 2998 cbi 37-0x20,1
421 .L39:
422 /* #APP */
423 027e 7894 sei
424 /* #NOAPP */
425 0280 0E94 0000 call ParamSet_Init
426 0284 8091 0000 lds r24,BLFlags
427 0288 8260 ori r24,lo8(2)
428 028a 8093 0000 sts BLFlags,r24
429 028e 1092 0000 sts motor_read,__zero_reg__
430 0292 0E94 0000 call SendMotorData
431 0296 84EF ldi r24,lo8(500)
432 0298 91E0 ldi r25,hi8(500)
433 029a 0E94 0000 call SetDelay
434 029e 8C01 movw r16,r24
435 .L40:
436 02a0 8091 0000 lds r24,BLFlags
437 02a4 80FD sbrc r24,0
438 02a6 05C0 rjmp .L41
439 02a8 C801 movw r24,r16
440 02aa 0E94 0000 call CheckDelay
441 02ae 8823 tst r24
442 02b0 B9F3 breq .L40
443 .L41:
444 02b2 80E0 ldi r24,lo8(__c.0)
445 02b4 90E0 ldi r25,hi8(__c.0)
446 02b6 9F93 push r25
447 02b8 8F93 push r24
448 02ba B0E0 ldi r27,lo8(pm(uart_putchar))
449 02bc AB2E mov r10,r27
450 02be B0E0 ldi r27,hi8(pm(uart_putchar))
451 02c0 BB2E mov r11,r27
452 02c2 BF92 push r11
453 02c4 AF92 push r10
454 02c6 E091 0000 lds r30,_printf_P
455 02ca F091 0000 lds r31,(_printf_P)+1
456 02ce 0995 icall
457 02d0 80EA ldi r24,lo8(4000)
458 02d2 9FE0 ldi r25,hi8(4000)
459 02d4 0E94 0000 call SetDelay
460 02d8 8C01 movw r16,r24
461 02da C0E0 ldi r28,lo8(0)
462 02dc D0E0 ldi r29,hi8(0)
463 02de 0F90 pop __tmp_reg__
464 02e0 0F90 pop __tmp_reg__
465 02e2 0F90 pop __tmp_reg__
466 02e4 0F90 pop __tmp_reg__
467 02e6 A0E0 ldi r26,lo8(Motor+3)
468 02e8 EA2E mov r14,r26
469 02ea A0E0 ldi r26,hi8(Motor+3)
470 02ec FA2E mov r15,r26
471 02ee F0E0 ldi r31,lo8(Mixer+13)
472 02f0 CF2E mov r12,r31
473 02f2 F0E0 ldi r31,hi8(Mixer+13)
474 02f4 DF2E mov r13,r31
475 .L57:
476 02f6 0E94 0000 call SendMotorData
477 .L46:
478 02fa 8091 0000 lds r24,BLFlags
479 02fe 80FD sbrc r24,0
480 0300 05C0 rjmp .L47
481 0302 C801 movw r24,r16
482 0304 0E94 0000 call CheckDelay
483 0308 8823 tst r24
484 030a B9F3 breq .L46
485 .L47:
486 030c F601 movw r30,r12
487 030e 8081 ld r24,Z
488 0310 1816 cp __zero_reg__,r24
489 0312 ACF4 brge .L49
490 0314 0BC0 rjmp .L233
491 .L55:
492 0316 0E94 0000 call SendMotorData
493 .L52:
494 031a 8091 0000 lds r24,BLFlags
495 031e 80FD sbrc r24,0
496 0320 05C0 rjmp .L233
497 0322 C801 movw r24,r16
498 0324 0E94 0000 call CheckDelay
499 0328 8823 tst r24
500 032a B9F3 breq .L52
501 .L233:
502 032c C801 movw r24,r16
503 032e 0E94 0000 call CheckDelay
504 0332 8823 tst r24
505 0334 21F4 brne .L49
506 0336 F701 movw r30,r14
507 0338 8081 ld r24,Z
508 033a 8823 tst r24
509 033c 64F7 brge .L55
510 .L49:
511 033e F701 movw r30,r14
512 0340 8081 ld r24,Z
513 0342 87FF sbrs r24,7
514 0344 18C0 rjmp .L45
515 0346 2196 adiw r28,1
516 0348 DF93 push r29
517 034a CF93 push r28
518 034c 2197 sbiw r28,1
519 034e 80E0 ldi r24,lo8(__c.1)
520 0350 90E0 ldi r25,hi8(__c.1)
521 0352 9F93 push r25
522 0354 8F93 push r24
523 0356 BF92 push r11
524 0358 AF92 push r10
525 035a E091 0000 lds r30,_printf_P
526 035e F091 0000 lds r31,(_printf_P)+1
527 0362 0995 icall
528 0364 8091 0000 lds r24,FoundMotors
529 0368 8F5F subi r24,lo8(-(1))
530 036a 8093 0000 sts FoundMotors,r24
531 036e 8DB7 in r24,__SP_L__
532 0370 9EB7 in r25,__SP_H__
533 0372 0696 adiw r24,6
534 0374 8DBF out __SP_L__,r24
535 .L45:
536 0376 2196 adiw r28,1
537 0378 E4E0 ldi r30,lo8(4)
538 037a F0E0 ldi r31,hi8(4)
539 037c CE0E add r12,r30
540 037e DF1E adc r13,r31
541 0380 88E0 ldi r24,lo8(8)
542 0382 90E0 ldi r25,hi8(8)
543 0384 E80E add r14,r24
544 0386 F91E adc r15,r25
545 0388 CC30 cpi r28,12
546 038a D105 cpc r29,__zero_reg__
547 038c 08F4 brsh .+2
548 038e B3CF rjmp .L57
549 0390 C0E0 ldi r28,lo8(0)
550 0392 D0E0 ldi r29,hi8(0)
551 0394 00E0 ldi r16,lo8(Motor)
552 0396 10E0 ldi r17,hi8(Motor)
553 0398 E0E0 ldi r30,lo8(Mixer+13)
554 039a EE2E mov r14,r30
555 039c E0E0 ldi r30,hi8(Mixer+13)
556 039e FE2E mov r15,r30
557 .L62:
558 03a0 F801 movw r30,r16
559 03a2 8381 ldd r24,Z+3
560 03a4 87FD sbrc r24,7
561 03a6 1CC0 rjmp .L61
562 03a8 F701 movw r30,r14
563 03aa 8081 ld r24,Z
564 03ac 1816 cp __zero_reg__,r24
565 03ae C4F4 brge .L61
566 03b0 2196 adiw r28,1
567 03b2 DF93 push r29
568 03b4 CF93 push r28
569 03b6 2197 sbiw r28,1
570 03b8 80E0 ldi r24,lo8(__c.2)
571 03ba 90E0 ldi r25,hi8(__c.2)
572 03bc 9F93 push r25
573 03be 8F93 push r24
574 03c0 80E0 ldi r24,lo8(pm(uart_putchar))
575 03c2 90E0 ldi r25,hi8(pm(uart_putchar))
576 03c4 9F93 push r25
577 03c6 8F93 push r24
578 03c8 E091 0000 lds r30,_printf_P
579 03cc F091 0000 lds r31,(_printf_P)+1
580 03d0 0995 icall
581 03d2 82E0 ldi r24,lo8(2)
582 03d4 8093 0000 sts ServoActive,r24
583 03d8 8DB7 in r24,__SP_L__
584 03da 9EB7 in r25,__SP_H__
585 03dc 0696 adiw r24,6
586 03de 8DBF out __SP_L__,r24
587 .L61:
588 03e0 F801 movw r30,r16
589 03e2 8381 ldd r24,Z+3
590 03e4 8078 andi r24,lo8(-128)
591 03e6 8383 std Z+3,r24
592 03e8 2196 adiw r28,1
593 03ea 84E0 ldi r24,lo8(4)
594 03ec 90E0 ldi r25,hi8(4)
595 03ee E80E add r14,r24
596 03f0 F91E adc r15,r25
597 03f2 085F subi r16,lo8(-(8))
598 03f4 1F4F sbci r17,hi8(-(8))
599 03f6 CC30 cpi r28,12
600 03f8 D105 cpc r29,__zero_reg__
601 03fa 90F2 brlo .L62
602 03fc 80E0 ldi r24,lo8(__c.3)
603 03fe 90E0 ldi r25,hi8(__c.3)
604 0400 9F93 push r25
605 0402 8F93 push r24
606 0404 C0E0 ldi r28,lo8(pm(uart_putchar))
607 0406 D0E0 ldi r29,hi8(pm(uart_putchar))
608 0408 DF93 push r29
609 040a CF93 push r28
610 040c E091 0000 lds r30,_printf_P
611 0410 F091 0000 lds r31,(_printf_P)+1
612 0414 0995 icall
613 0416 9091 0000 lds r25,RequiredMotors
614 041a 8091 0000 lds r24,FoundMotors
615 041e 0F90 pop __tmp_reg__
616 0420 0F90 pop __tmp_reg__
617 0422 0F90 pop __tmp_reg__
618 0424 0F90 pop __tmp_reg__
619 0426 9817 cp r25,r24
620 0428 28F4 brsh .L63
621 042a 8091 0000 lds r24,VersionInfo+6
622 042e 8061 ori r24,lo8(16)
623 0430 8093 0000 sts VersionInfo+6,r24
624 .L63:
625 0434 80E0 ldi r24,lo8(__c.4)
626 0436 90E0 ldi r25,hi8(__c.4)
627 0438 9F93 push r25
628 043a 8F93 push r24
629 043c DF93 push r29
630 043e CF93 push r28
631 0440 E091 0000 lds r30,_printf_P
632 0444 F091 0000 lds r31,(_printf_P)+1
633 0448 0995 icall
634 044a 88EE ldi r24,lo8(1000)
635 044c 93E0 ldi r25,hi8(1000)
636 044e 0E94 0000 call SetDelay
637 0452 8C01 movw r16,r24
638 0454 0E94 0000 call SucheLuftruckOffset
639 0458 0F90 pop __tmp_reg__
640 045a 0F90 pop __tmp_reg__
641 045c 0F90 pop __tmp_reg__
642 045e 0F90 pop __tmp_reg__
643 .L64:
644 0460 C801 movw r24,r16
645 0462 0E94 0000 call CheckDelay
646 0466 8823 tst r24
647 0468 D9F3 breq .L64
648 046a 80E0 ldi r24,lo8(__c.5)
649 046c 90E0 ldi r25,hi8(__c.5)
650 046e 9F93 push r25
651 0470 8F93 push r24
652 0472 DF93 push r29
653 0474 CF93 push r28
654 0476 E091 0000 lds r30,_printf_P
655 047a F091 0000 lds r31,(_printf_P)+1
656 047e 0995 icall
657 0480 80E0 ldi r24,lo8(0)
658 0482 0E94 0000 call SetNeutral
659 0486 8091 0000 lds r24,PlatinenVersion
660 048a 0F90 pop __tmp_reg__
661 048c 0F90 pop __tmp_reg__
662 048e 0F90 pop __tmp_reg__
663 0490 0F90 pop __tmp_reg__
664 0492 8A30 cpi r24,lo8(10)
665 0494 11F0 breq .L68
666 0496 8431 cpi r24,lo8(20)
667 0498 10F0 brlo .L67
668 .L68:
669 049a 2898 cbi 37-0x20,0
670 049c 01C0 rjmp .L69
671 .L67:
672 049e 289A sbi 37-0x20,0
673 .L69:
674 04a0 80ED ldi r24,lo8(2000)
675 04a2 97E0 ldi r25,hi8(2000)
676 04a4 9093 0000 sts (beeptime)+1,r25
677 04a8 8093 0000 sts beeptime,r24
678 04ac 85E5 ldi r24,lo8(85)
679 04ae 8093 0000 sts ExternControl,r24
680 04b2 8EE0 ldi r24,lo8(14)
681 04b4 90E0 ldi r25,hi8(14)
682 04b6 0E94 0000 call GetParamByte
683 04ba 9927 clr r25
684 04bc 182F mov r17,r24
685 04be 0027 clr r16
686 04c0 8FE0 ldi r24,lo8(15)
687 04c2 90E0 ldi r25,hi8(15)
688 04c4 0E94 0000 call GetParamByte
689 04c8 080F add r16,r24
690 04ca 111D adc r17,__zero_reg__
691 04cc 1093 0000 sts (FlugMinuten)+1,r17
692 04d0 0093 0000 sts FlugMinuten,r16
693 04d4 8AE0 ldi r24,lo8(10)
694 04d6 90E0 ldi r25,hi8(10)
695 04d8 0E94 0000 call GetParamByte
696 04dc 9927 clr r25
697 04de 182F mov r17,r24
698 04e0 0027 clr r16
699 04e2 8BE0 ldi r24,lo8(11)
700 04e4 90E0 ldi r25,hi8(11)
701 04e6 0E94 0000 call GetParamByte
702 04ea 080F add r16,r24
703 04ec 111D adc r17,__zero_reg__
704 04ee 1093 0000 sts (FlugMinutenGesamt)+1,r17
705 04f2 0093 0000 sts FlugMinutenGesamt,r16
706 04f6 0F5F subi r16,lo8(-1)
707 04f8 1F4F sbci r17,hi8(-1)
708 04fa 39F0 breq .L71
709 04fc 8091 0000 lds r24,FlugMinuten
710 0500 9091 0000 lds r25,(FlugMinuten)+1
711 0504 8F5F subi r24,lo8(-1)
712 0506 9F4F sbci r25,hi8(-1)
713 0508 41F4 brne .L70
714 .L71:
715 050a 1092 0000 sts (FlugMinuten)+1,__zero_reg__
716 050e 1092 0000 sts FlugMinuten,__zero_reg__
717 0512 1092 0000 sts (FlugMinutenGesamt)+1,__zero_reg__
718 0516 1092 0000 sts FlugMinutenGesamt,__zero_reg__
719 .L70:
720 051a 8091 0000 lds r24,FlugMinutenGesamt
721 051e 9091 0000 lds r25,(FlugMinutenGesamt)+1
722 0522 9F93 push r25
723 0524 8F93 push r24
724 0526 8091 0000 lds r24,FlugMinuten
725 052a 9091 0000 lds r25,(FlugMinuten)+1
726 052e 9F93 push r25
727 0530 8F93 push r24
728 0532 80E0 ldi r24,lo8(__c.6)
729 0534 90E0 ldi r25,hi8(__c.6)
730 0536 9F93 push r25
731 0538 8F93 push r24
732 053a DF93 push r29
733 053c CF93 push r28
734 053e E091 0000 lds r30,_printf_P
735 0542 F091 0000 lds r31,(_printf_P)+1
736 0546 0995 icall
737 0548 8DB7 in r24,__SP_L__
738 054a 9EB7 in r25,__SP_H__
739 054c 0896 adiw r24,8
740 054e 8DBF out __SP_L__,r24
741 0550 80E0 ldi r24,lo8(__c.7)
742 0552 90E0 ldi r25,hi8(__c.7)
743 0554 9F93 push r25
744 0556 8F93 push r24
745 0558 DF93 push r29
746 055a CF93 push r28
747 055c E091 0000 lds r30,_printf_P
748 0560 F091 0000 lds r31,(_printf_P)+1
749 0564 0995 icall
750 0566 8091 0000 lds r24,EE_Parameter+13
751 056a 0F90 pop __tmp_reg__
752 056c 0F90 pop __tmp_reg__
753 056e 0F90 pop __tmp_reg__
754 0570 0F90 pop __tmp_reg__
755 0572 E091 0000 lds r30,_printf_P
756 0576 F091 0000 lds r31,(_printf_P)+1
757 057a 82FF sbrs r24,2
758 057c 07C0 rjmp .L72
759 057e 80E0 ldi r24,lo8(__c.8)
760 0580 90E0 ldi r25,hi8(__c.8)
761 0582 9F93 push r25
762 0584 8F93 push r24
763 0586 DF93 push r29
764 0588 CF93 push r28
765 058a 08C0 rjmp .L230
766 .L72:
767 058c 80E0 ldi r24,lo8(__c.9)
768 058e 90E0 ldi r25,hi8(__c.9)
769 0590 9F93 push r25
770 0592 8F93 push r24
771 0594 80E0 ldi r24,lo8(pm(uart_putchar))
772 0596 90E0 ldi r25,hi8(pm(uart_putchar))
773 0598 9F93 push r25
774 059a 8F93 push r24
775 .L230:
776 059c 0995 icall
777 059e 0F90 pop __tmp_reg__
778 05a0 0F90 pop __tmp_reg__
779 05a2 0F90 pop __tmp_reg__
780 05a4 0F90 pop __tmp_reg__
781 05a6 0E94 0000 call LcdClear
782 05aa 88E8 ldi r24,lo8(5000)
783 05ac 93E1 ldi r25,hi8(5000)
784 05ae 9093 0000 sts (I2CTimeout)+1,r25
785 05b2 8093 0000 sts I2CTimeout,r24
786 05b6 81E0 ldi r24,lo8(1)
787 05b8 8093 0000 sts WinkelOut+7,r24
788 05bc 0E94 0000 call LipoDetection
789 05c0 8091 0000 lds r24,EE_Parameter+39
790 05c4 0E94 0000 call LIBFC_ReceiverInit
791 05c8 80E0 ldi r24,lo8(__c.10)
792 05ca 90E0 ldi r25,hi8(__c.10)
793 05cc 9F93 push r25
794 05ce 8F93 push r24
795 05d0 DF93 push r29
796 05d2 CF93 push r28
797 05d4 E091 0000 lds r30,_printf_P
798 05d8 F091 0000 lds r31,(_printf_P)+1
799 05dc 0995 icall
800 05de 80ED ldi r24,lo8(2000)
801 05e0 97E0 ldi r25,hi8(2000)
802 05e2 0E94 0000 call SetDelay
803 05e6 8C01 movw r16,r24
804 05e8 8AEF ldi r24,lo8(250)
805 05ea 90E0 ldi r25,hi8(250)
806 05ec 0E94 0000 call SetDelay
807 05f0 EC01 movw r28,r24
808 05f2 83E0 ldi r24,lo8(3)
809 05f4 8093 0000 sts DebugOut,r24
810 05f8 0F90 pop __tmp_reg__
811 05fa 0F90 pop __tmp_reg__
812 05fc 0F90 pop __tmp_reg__
813 05fe 0F90 pop __tmp_reg__
814 .L234:
815 0600 CE01 movw r24,r28
816 0602 0E94 0000 call CheckDelay
817 0606 8823 tst r24
818 0608 39F0 breq .L76
819 060a 84E6 ldi r24,lo8(100)
820 060c 90E0 ldi r25,hi8(100)
821 060e 0E94 0000 call SetDelay
822 0612 EC01 movw r28,r24
823 0614 0E94 0000 call LIBFC_Polling
824 .L76:
825 0618 8091 0000 lds r24,UpdateMotor
826 061c 8823 tst r24
827 061e 09F4 brne .+2
828 0620 DFC1 rjmp .L77
829 0622 8091 0000 lds r24,AdReady
830 0626 8823 tst r24
831 0628 09F4 brne .+2
832 062a DAC1 rjmp .L77
833 062c 1092 0000 sts UpdateMotor,__zero_reg__
834 0630 8091 0000 lds r24,WinkelOut+6
835 0634 8823 tst r24
836 0636 19F0 breq .L78
837 0638 0E94 0000 call CalMk3Mag
838 063c 02C0 rjmp .L79
839 .L78:
840 063e 0E94 0000 call MotorRegler
841 .L79:
842 0642 0E94 0000 call SendMotorData
843 0646 2091 0000 lds r18,PlatinenVersion
844 064a 2A30 cpi r18,lo8(10)
845 064c 11F0 breq .L81
846 064e 2431 cpi r18,lo8(20)
847 0650 10F0 brlo .L80
848 .L81:
849 0652 2898 cbi 37-0x20,0
850 0654 01C0 rjmp .L82
851 .L80:
852 0656 289A sbi 37-0x20,0
853 .L82:
854 0658 8091 0000 lds r24,SenderOkay
855 065c 9091 0000 lds r25,VersionInfo+6
856 0660 8823 tst r24
857 0662 39F0 breq .L83
858 0664 8091 0000 lds r24,SenderOkay
859 0668 8150 subi r24,lo8(-(-1))
860 066a 8093 0000 sts SenderOkay,r24
861 066e 977F andi r25,lo8(-9)
862 0670 0AC0 rjmp .L231
863 .L83:
864 0672 8091 6F00 lds r24,111
865 0676 8062 ori r24,lo8(32)
866 0678 8093 6F00 sts 111,r24
867 067c 1092 0000 sts (PPM_in)+1,__zero_reg__
868 0680 1092 0000 sts PPM_in,__zero_reg__
869 0684 9860 ori r25,lo8(8)
870 .L231:
871 0686 9093 0000 sts VersionInfo+6,r25
872 068a 8091 0000 lds r24,I2CTimeout
873 068e 9091 0000 lds r25,(I2CTimeout)+1
874 0692 0197 sbiw r24,1
875 0694 9093 0000 sts (I2CTimeout)+1,r25
876 0698 8093 0000 sts I2CTimeout,r24
877 069c 8091 0000 lds r24,I2CTimeout
878 06a0 9091 0000 lds r25,(I2CTimeout)+1
879 06a4 892B or r24,r25
880 06a6 29F0 breq .L86
881 06a8 8091 0000 lds r24,MissingMotor
882 06ac 8823 tst r24
883 06ae 09F4 brne .+2
884 06b0 3EC0 rjmp .L85
885 .L86:
886 06b2 8091 0000 lds r24,I2CTimeout
887 06b6 9091 0000 lds r25,(I2CTimeout)+1
888 06ba 892B or r24,r25
889 06bc 01F5 brne .L87
890 06be 0E94 0000 call I2C_Reset
891 06c2 85E0 ldi r24,lo8(5)
892 06c4 90E0 ldi r25,hi8(5)
893 06c6 9093 0000 sts (I2CTimeout)+1,r25
894 06ca 8093 0000 sts I2CTimeout,r24
895 06ce 8091 0000 lds r24,DebugOut+58
896 06d2 9091 0000 lds r25,(DebugOut+58)+1
897 06d6 0196 adiw r24,1
898 06d8 9093 0000 sts (DebugOut+58)+1,r25
899 06dc 8093 0000 sts DebugOut+58,r24
900 06e0 8091 0000 lds r24,FCFlags
901 06e4 8068 ori r24,lo8(-128)
902 06e6 8093 0000 sts FCFlags,r24
903 06ea 8091 0000 lds r24,VersionInfo+6
904 06ee 8160 ori r24,lo8(1)
905 06f0 8093 0000 sts VersionInfo+6,r24
906 06f4 8091 0000 lds r24,DebugOut+1
907 06f8 8260 ori r24,lo8(2)
908 06fa 8093 0000 sts DebugOut+1,r24
909 .L87:
910 06fe 8091 0000 lds r24,BeepMuster
911 0702 9091 0000 lds r25,(BeepMuster)+1
912 0706 8F5F subi r24,lo8(-1)
913 0708 9F4F sbci r25,hi8(-1)
914 070a 19F5 brne .L89
915 070c 8091 0000 lds r24,MotorenEin
916 0710 8823 tst r24
917 0712 F9F0 breq .L89
918 0714 80E1 ldi r24,lo8(10000)
919 0716 97E2 ldi r25,hi8(10000)
920 0718 9093 0000 sts (beeptime)+1,r25
921 071c 8093 0000 sts beeptime,r24
922 0720 80E8 ldi r24,lo8(128)
923 0722 90E0 ldi r25,hi8(128)
924 0724 9093 0000 sts (BeepMuster)+1,r25
925 0728 8093 0000 sts BeepMuster,r24
926 072c 12C0 rjmp .L89
927 .L85:
928 072e 2A30 cpi r18,lo8(10)
929 0730 11F0 breq .L91
930 0732 2431 cpi r18,lo8(20)
931 0734 10F0 brlo .L90
932 .L91:
933 0736 2898 cbi 37-0x20,0
934 0738 01C0 rjmp .L92
935 .L90:
936 073a 289A sbi 37-0x20,0
937 .L92:
938 073c 8091 0000 lds r24,beeptime
939 0740 9091 0000 lds r25,(beeptime)+1
940 0744 892B or r24,r25
941 0746 29F4 brne .L89
942 0748 8091 0000 lds r24,FCFlags
943 074c 8F77 andi r24,lo8(127)
944 074e 8093 0000 sts FCFlags,r24
945 .L89:
946 0752 8091 0000 lds r24,UpdateMotor
947 0756 8823 tst r24
948 0758 09F0 breq .+2
949 075a 42C1 rjmp .L77
950 075c 0E94 0000 call DatenUebertragung
951 0760 0E94 0000 call BearbeiteRxDaten
952 0764 C801 movw r24,r16
953 0766 0E94 0000 call CheckDelay
954 076a 8823 tst r24
955 076c 09F4 brne .+2
956 076e 34C1 rjmp .L95
957 0770 0C5E subi r16,lo8(-(20))
958 0772 1F4F sbci r17,hi8(-(20))
959 0774 8091 0000 lds r24,MissingMotor
960 0778 9091 0000 lds r25,VersionInfo+6
961 077c 8823 tst r24
962 077e 39F0 breq .L96
963 0780 9260 ori r25,lo8(2)
964 0782 9093 0000 sts VersionInfo+6,r25
965 0786 8091 0000 lds r24,DebugOut+1
966 078a 8260 ori r24,lo8(2)
967 078c 0CC0 rjmp .L232
968 .L96:
969 078e 9D7F andi r25,lo8(-3)
970 0790 9093 0000 sts VersionInfo+6,r25
971 0794 8091 0000 lds r24,I2CTimeout
972 0798 9091 0000 lds r25,(I2CTimeout)+1
973 079c 0797 sbiw r24,7
974 079e 28F0 brlo .L97
975 07a0 8091 0000 lds r24,DebugOut+1
976 07a4 8D7F andi r24,lo8(-3)
977 .L232:
978 07a6 8093 0000 sts DebugOut+1,r24
979 .L97:
980 07aa 8091 0000 lds r24,I2CTimeout
981 07ae 9091 0000 lds r25,(I2CTimeout)+1
982 07b2 0797 sbiw r24,7
983 07b4 28F0 brlo .L99
984 07b6 8091 0000 lds r24,VersionInfo+6
985 07ba 8E7F andi r24,lo8(-2)
986 07bc 8093 0000 sts VersionInfo+6,r24
987 .L99:
988 07c0 8091 0000 lds r24,PcZugriff
989 07c4 8823 tst r24
990 07c6 21F0 breq .L100
991 07c8 8150 subi r24,lo8(-(-1))
992 07ca 8093 0000 sts PcZugriff,r24
993 07ce 25C0 rjmp .L101
994 .L100:
995 07d0 8093 0000 sts ExternControl+10,r24
996 07d4 1092 0000 sts (ExternStickNick)+1,__zero_reg__
997 07d8 1092 0000 sts ExternStickNick,__zero_reg__
998 07dc 1092 0000 sts (ExternStickRoll)+1,__zero_reg__
999 07e0 1092 0000 sts ExternStickRoll,__zero_reg__
1000 07e4 1092 0000 sts (ExternStickGier)+1,__zero_reg__
1001 07e8 1092 0000 sts ExternStickGier,__zero_reg__
1002 07ec 8091 0000 lds r24,BeepMuster
1003 07f0 9091 0000 lds r25,(BeepMuster)+1
1004 07f4 8F5F subi r24,lo8(-1)
1005 07f6 9F4F sbci r25,hi8(-1)
1006 07f8 81F4 brne .L101
1007 07fa 8091 0000 lds r24,SenderOkay
1008 07fe 8823 tst r24
1009 0800 61F4 brne .L101
1010 0802 88E9 ldi r24,lo8(15000)
1011 0804 9AE3 ldi r25,hi8(15000)
1012 0806 9093 0000 sts (beeptime)+1,r25
1013 080a 8093 0000 sts beeptime,r24
1014 080e 80E0 ldi r24,lo8(3072)
1015 0810 9CE0 ldi r25,hi8(3072)
1016 0812 9093 0000 sts (BeepMuster)+1,r25
1017 0816 8093 0000 sts BeepMuster,r24
1018 .L101:
1019 081a 8091 0000 lds r24,NaviDataOkay
1020 081e 893C cpi r24,lo8(-55)
1021 0820 70F0 brlo .L103
1022 0822 8150 subi r24,lo8(-(-1))
1023 0824 8093 0000 sts NaviDataOkay,r24
1024 0828 8091 0000 lds r24,FCFlags
1025 082c 8F7B andi r24,lo8(-65)
1026 082e 8093 0000 sts FCFlags,r24
1027 0832 8091 0000 lds r24,VersionInfo+6
1028 0836 8B7F andi r24,lo8(-5)
1029 0838 8093 0000 sts VersionInfo+6,r24
1030 083c 35C0 rjmp .L104
1031 .L103:
1032 083e 8091 0000 lds r24,NC_Version+3
1033 0842 8823 tst r24
1034 0844 09F1 breq .L105
1035 0846 8091 0000 lds r24,FCFlags
1036 084a 8064 ori r24,lo8(64)
1037 084c 8093 0000 sts FCFlags,r24
1038 0850 8091 0000 lds r24,VersionInfo+6
1039 0854 8460 ori r24,lo8(4)
1040 0856 8093 0000 sts VersionInfo+6,r24
1041 085a 8091 0000 lds r24,BeepMuster
1042 085e 9091 0000 lds r25,(BeepMuster)+1
1043 0862 8F5F subi r24,lo8(-1)
1044 0864 9F4F sbci r25,hi8(-1)
1045 0866 81F4 brne .L105
1046 0868 8091 0000 lds r24,MotorenEin
1047 086c 8823 tst r24
1048 086e 61F0 breq .L105
1049 0870 88E9 ldi r24,lo8(15000)
1050 0872 9AE3 ldi r25,hi8(15000)
1051 0874 9093 0000 sts (beeptime)+1,r25
1052 0878 8093 0000 sts beeptime,r24
1053 087c 80E0 ldi r24,lo8(-22528)
1054 087e 98EA ldi r25,hi8(-22528)
1055 0880 9093 0000 sts (BeepMuster)+1,r25
1056 0884 8093 0000 sts BeepMuster,r24
1057 .L105:
1058 0888 1092 0000 sts (GPS_Nick)+1,__zero_reg__
1059 088c 1092 0000 sts GPS_Nick,__zero_reg__
1060 0890 1092 0000 sts (GPS_Roll)+1,__zero_reg__
1061 0894 1092 0000 sts GPS_Roll,__zero_reg__
1062 0898 8FEF ldi r24,lo8(-1)
1063 089a 9FEF ldi r25,hi8(-1)
1064 089c 9093 0000 sts (FromNaviCtrl+7)+1,r25
1065 08a0 8093 0000 sts FromNaviCtrl+7,r24
1066 08a4 1092 0000 sts NaviDataOkay,__zero_reg__
1067 .L104:
1068 08a8 8091 0000 lds r24,BattLowVoltageWarning
1069 08ac 282F mov r18,r24
1070 08ae 3327 clr r19
1071 08b0 8091 0000 lds r24,UBat
1072 08b4 9091 0000 lds r25,(UBat)+1
1073 08b8 8217 cp r24,r18
1074 08ba 9307 cpc r25,r19
1075 08bc CCF4 brge .L107
1076 08be 8091 0000 lds r24,FCFlags
1077 08c2 8062 ori r24,lo8(32)
1078 08c4 8093 0000 sts FCFlags,r24
1079 08c8 8091 0000 lds r24,BeepMuster
1080 08cc 9091 0000 lds r25,(BeepMuster)+1
1081 08d0 8F5F subi r24,lo8(-1)
1082 08d2 9F4F sbci r25,hi8(-1)
1083 08d4 C1F4 brne .L109
1084 08d6 80E7 ldi r24,lo8(6000)
1085 08d8 97E1 ldi r25,hi8(6000)
1086 08da 9093 0000 sts (beeptime)+1,r25
1087 08de 8093 0000 sts beeptime,r24
1088 08e2 80E0 ldi r24,lo8(768)
1089 08e4 93E0 ldi r25,hi8(768)
1090 08e6 9093 0000 sts (BeepMuster)+1,r25
1091 08ea 8093 0000 sts BeepMuster,r24
1092 08ee 0BC0 rjmp .L109
1093 .L107:
1094 08f0 8091 0000 lds r24,beeptime
1095 08f4 9091 0000 lds r25,(beeptime)+1
1096 08f8 892B or r24,r25
1097 08fa 29F4 brne .L109
1098 08fc 8091 0000 lds r24,FCFlags
1099 0900 8F7D andi r24,lo8(-33)
1100 0902 8093 0000 sts FCFlags,r24
1101 .L109:
1102 0906 0E94 0000 call SPI_StartTransmitPacket
1103 090a 84E0 ldi r24,lo8(4)
1104 090c 8093 0000 sts SendSPI,r24
1105 0910 8091 0000 lds r24,MotorenEin
1106 0914 8823 tst r24
1107 0916 29F4 brne .L111
1108 0918 5AEA ldi r21,lo8(1450)
1109 091a 852E mov r8,r21
1110 091c 55E0 ldi r21,hi8(1450)
1111 091e 952E mov r9,r21
1112 0920 12C0 rjmp .L112
1113 .L111:
1114 0922 8091 0000 lds r24,second.11
1115 0926 8F5F subi r24,lo8(-(1))
1116 0928 8093 0000 sts second.11,r24
1117 092c 8133 cpi r24,lo8(49)
1118 092e 59F4 brne .L112
1119 0930 1092 0000 sts second.11,__zero_reg__
1120 0934 8091 0000 lds r24,FlugSekunden
1121 0938 9091 0000 lds r25,(FlugSekunden)+1
1122 093c 0196 adiw r24,1
1123 093e 9093 0000 sts (FlugSekunden)+1,r25
1124 0942 8093 0000 sts FlugSekunden,r24
1125 .L112:
1126 0946 0894 sec
1127 0948 811C adc r8,__zero_reg__
1128 094a 911C adc r9,__zero_reg__
1129 094c F2E7 ldi r31,lo8(2930)
1130 094e 8F16 cp r8,r31
1131 0950 FBE0 ldi r31,hi8(2930)
1132 0952 9F06 cpc r9,r31
1133 0954 09F0 breq .+2
1134 0956 40C0 rjmp .L95
1135 0958 8824 clr r8
1136 095a 9924 clr r9
1137 095c 2091 0000 lds r18,FlugMinuten
1138 0960 3091 0000 lds r19,(FlugMinuten)+1
1139 0964 2F5F subi r18,lo8(-(1))
1140 0966 3F4F sbci r19,hi8(-(1))
1141 0968 3093 0000 sts (FlugMinuten)+1,r19
1142 096c 2093 0000 sts FlugMinuten,r18
1143 0970 8091 0000 lds r24,FlugMinutenGesamt
1144 0974 9091 0000 lds r25,(FlugMinutenGesamt)+1
1145 0978 0196 adiw r24,1
1146 097a 9093 0000 sts (FlugMinutenGesamt)+1,r25
1147 097e 8093 0000 sts FlugMinutenGesamt,r24
1148 0982 832F mov r24,r19
1149 0984 9927 clr r25
1150 0986 682F mov r22,r24
1151 0988 8EE0 ldi r24,lo8(14)
1152 098a 90E0 ldi r25,hi8(14)
1153 098c 0E94 0000 call SetParamByte
1154 0990 8091 0000 lds r24,FlugMinuten
1155 0994 9091 0000 lds r25,(FlugMinuten)+1
1156 0998 9070 andi r25,hi8(255)
1157 099a 682F mov r22,r24
1158 099c 8FE0 ldi r24,lo8(15)
1159 099e 90E0 ldi r25,hi8(15)
1160 09a0 0E94 0000 call SetParamByte
1161 09a4 8091 0000 lds r24,FlugMinutenGesamt
1162 09a8 9091 0000 lds r25,(FlugMinutenGesamt)+1
1163 09ac 892F mov r24,r25
1164 09ae 9927 clr r25
1165 09b0 682F mov r22,r24
1166 09b2 8AE0 ldi r24,lo8(10)
1167 09b4 90E0 ldi r25,hi8(10)
1168 09b6 0E94 0000 call SetParamByte
1169 09ba 8091 0000 lds r24,FlugMinutenGesamt
1170 09be 9091 0000 lds r25,(FlugMinutenGesamt)+1
1171 09c2 9070 andi r25,hi8(255)
1172 09c4 682F mov r22,r24
1173 09c6 8BE0 ldi r24,lo8(11)
1174 09c8 90E0 ldi r25,hi8(11)
1175 09ca 0E94 0000 call SetParamByte
1176 09ce 84E1 ldi r24,lo8(20)
1177 09d0 90E0 ldi r25,hi8(20)
1178 09d2 0E94 0000 call SetDelay
1179 09d6 8C01 movw r16,r24
1180 .L95:
1181 09d8 0E94 0000 call LED_Update
1182 09dc 0E94 0000 call Capacity_Update
1183 .L77:
1184 09e0 8091 0000 lds r24,SendSPI
1185 09e4 8823 tst r24
1186 09e6 09F0 breq .+2
1187 09e8 0BCE rjmp .L234
1188 09ea 0E94 0000 call SPI_TransmitByte
1189 09ee 08CE rjmp .L234
1190 /* epilogue: frame size=0 */
1191 /* epilogue: noreturn */
1192 /* epilogue end (size=0) */
1193 /* function main size 1092 (1088) */
1195 .comm _printf_P,2,1
1196 /* File "main.c": code 1285 = 0x0505 (1273), prologues 7, epilogues 5 */
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:3 *ABS*:0000003f __SREG__
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:4 *ABS*:0000003e __SP_H__
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:5 *ABS*:0000003d __SP_L__
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:7 *ABS*:00000001 __zero_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:15 .bss:00000000 FoundMotors
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:21 .bss:00000001 FlugSekunden
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:27 .bss:00000003 FlugMinutenGesamt
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:33 .bss:00000005 FlugMinuten
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:39 .data:00000000 BattLowVoltageWarning
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:44 .data:00000001 SendVersionToNavi
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:49 .data:00000002 PlatinenVersion
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:53 .data:00000003 stick.15
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:58 .text:00000000 CalMk3Mag
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:112 .progmem.data:00000000 __c.12
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:116 .progmem.data:00000008 __c.13
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:120 .progmem.data:00000013 __c.14
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:125 .text:0000006a LipoDetection
*COM*:00000002 _printf_P
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:262 .progmem.data:0000002d __c.0
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:266 .progmem.data:0000003f __c.1
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:270 .progmem.data:00000042 __c.2
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:274 .progmem.data:00000060 __c.3
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:278 .progmem.data:00000086 __c.4
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:282 .progmem.data:000000a6 __c.5
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:286 .progmem.data:000000ab __c.6
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:290 .progmem.data:000000ce __c.7
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:294 .progmem.data:000000da __c.8
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:298 .progmem.data:000000e6 __c.9
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:302 .progmem.data:000000f8 __c.10
.bss:00000007 second.11
C:\Users\Arthur-P\AppData\Local\Temp/cc8Waaaa.s:308 .text:0000017e main
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
EE_Parameter
PPM_in
WinkelOut
beeptime
Piep
DebugOut
uart_putchar
SetDelay
CheckDelay
UBat
__udivmodqi4
__stack
StickGier
StickRoll
StickNick
GIER_GRAD_FAKTOR
Timer_Init
TIMER2_Init
UART_Init
rc_sum_init
ADC_Init
I2C_Init
SPI_MasterInit
Capacity_Init
LIBFC_Init
ParamSet_Init
BLFlags
motor_read
SendMotorData
Motor
Mixer
ServoActive
RequiredMotors
VersionInfo
SucheLuftruckOffset
SetNeutral
ExternControl
GetParamByte
LcdClear
I2CTimeout
LIBFC_ReceiverInit
LIBFC_Polling
UpdateMotor
AdReady
MotorRegler
SenderOkay
MissingMotor
I2C_Reset
FCFlags
BeepMuster
MotorenEin
DatenUebertragung
BearbeiteRxDaten
PcZugriff
ExternStickNick
ExternStickRoll
ExternStickGier
NaviDataOkay
NC_Version
GPS_Nick
GPS_Roll
FromNaviCtrl
SPI_StartTransmitPacket
SendSPI
SetParamByte
LED_Update
Capacity_Update
SPI_TransmitByte