1 .file "main.c" 2 __SREG__ = 0x3f 3 __SP_H__ = 0x3e 4 __SP_L__ = 0x3d 5 __CCP__ = 0x34 6 __tmp_reg__ = 0 7 __zero_reg__ = 1 8 .text 9 .global LipoDetection 11 LipoDetection: 12 0000 1F93 push r17 13 0002 CF93 push r28 14 0004 DF93 push r29 15 /* prologue: function */ 16 /* frame size = 0 */ 17 0006 182F mov r17,r24 18 0008 8823 tst r24 19 000a 01F0 breq .L2 20 000c 00D0 rcall . 21 000e 00D0 rcall . 22 0010 80E0 ldi r24,lo8(gs(uart_putchar)) 23 0012 90E0 ldi r25,hi8(gs(uart_putchar)) 24 0014 ADB7 in r26,__SP_L__ 25 0016 BEB7 in r27,__SP_H__ 26 0018 1296 adiw r26,1+1 27 001a 9C93 st X,r25 28 001c 8E93 st -X,r24 29 001e 1197 sbiw r26,1 30 0020 80E0 ldi r24,lo8(__c.2236) 31 0022 90E0 ldi r25,hi8(__c.2236) 32 0024 1496 adiw r26,3+1 33 0026 9C93 st X,r25 34 0028 8E93 st -X,r24 35 002a 1397 sbiw r26,3 36 002c E091 0000 lds r30,_printf_P 37 0030 F091 0000 lds r31,(_printf_P)+1 38 0034 0995 icall 39 0036 0F90 pop __tmp_reg__ 40 0038 0F90 pop __tmp_reg__ 41 003a 0F90 pop __tmp_reg__ 42 003c 0F90 pop __tmp_reg__ 43 .L2: 44 003e 8091 0000 lds r24,EE_Parameter+36 45 0042 8233 cpi r24,lo8(50) 46 0044 00F0 brlo .+2 47 0046 00C0 rjmp .L3 48 0048 84EF ldi r24,lo8(500) 49 004a 91E0 ldi r25,hi8(500) 50 004c 0E94 0000 call SetDelay 51 0050 EC01 movw r28,r24 52 0052 1123 tst r17 53 0054 01F0 breq .L4 54 .L11: 55 0056 CE01 movw r24,r28 56 0058 0E94 0000 call CheckDelay 57 005c 8823 tst r24 58 005e 01F0 breq .L11 59 .L4: 60 0060 C2E0 ldi r28,lo8(2) 61 0062 D0E0 ldi r29,hi8(2) 62 0064 26E5 ldi r18,lo8(86) 63 0066 30E0 ldi r19,hi8(86) 64 .L7: 65 0068 8091 0000 lds r24,UBat 66 006c 9091 0000 lds r25,(UBat)+1 67 0070 8217 cp r24,r18 68 0072 9307 cpc r25,r19 69 0074 00F0 brlo .L6 70 0076 2196 adiw r28,1 71 0078 255D subi r18,lo8(-(43)) 72 007a 3F4F sbci r19,hi8(-(43)) 73 007c C730 cpi r28,7 74 007e D105 cpc r29,__zero_reg__ 75 0080 01F4 brne .L7 76 .L6: 77 0082 8091 0000 lds r24,EE_Parameter+36 78 0086 90E0 ldi r25,lo8(0) 79 0088 FC01 movw r30,r24 80 008a CE9F mul r28,r30 81 008c C001 movw r24,r0 82 008e CF9F mul r28,r31 83 0090 900D add r25,r0 84 0092 DE9F mul r29,r30 85 0094 900D add r25,r0 86 0096 1124 clr r1 87 0098 8093 0000 sts BattLowVoltageWarning,r24 88 009c 1123 tst r17 89 009e 01F4 brne .+2 90 00a0 00C0 rjmp .L10 91 00a2 8C2F mov r24,r28 92 00a4 68EC ldi r22,lo8(200) 93 00a6 70E0 ldi r23,hi8(200) 94 00a8 0E94 0000 call Piep 95 00ac 00D0 rcall . 96 00ae 00D0 rcall . 97 00b0 00D0 rcall . 98 00b2 EDB7 in r30,__SP_L__ 99 00b4 FEB7 in r31,__SP_H__ 100 00b6 3196 adiw r30,1 101 00b8 80E0 ldi r24,lo8(gs(uart_putchar)) 102 00ba 90E0 ldi r25,hi8(gs(uart_putchar)) 103 00bc ADB7 in r26,__SP_L__ 104 00be BEB7 in r27,__SP_H__ 105 00c0 1296 adiw r26,1+1 106 00c2 9C93 st X,r25 107 00c4 8E93 st -X,r24 108 00c6 1197 sbiw r26,1 109 00c8 80E0 ldi r24,lo8(__c.2244) 110 00ca 90E0 ldi r25,hi8(__c.2244) 111 00cc 9383 std Z+3,r25 112 00ce 8283 std Z+2,r24 113 00d0 D583 std Z+5,r29 114 00d2 C483 std Z+4,r28 115 00d4 E091 0000 lds r30,_printf_P 116 00d8 F091 0000 lds r31,(_printf_P)+1 117 00dc 0995 icall 118 00de EDB7 in r30,__SP_L__ 119 00e0 FEB7 in r31,__SP_H__ 120 00e2 3696 adiw r30,6 121 00e4 EDBF out __SP_L__,r30 122 00e6 00C0 rjmp .L9 123 .L3: 124 00e8 8093 0000 sts BattLowVoltageWarning,r24 125 00ec 1123 tst r17 126 00ee 01F0 breq .L10 127 .L9: 128 00f0 2091 0000 lds r18,BattLowVoltageWarning 129 00f4 8DB7 in r24,__SP_L__ 130 00f6 9EB7 in r25,__SP_H__ 131 00f8 0897 sbiw r24,8 132 00fa 8DBF out __SP_L__,r24 133 00fc EDB7 in r30,__SP_L__ 134 00fe FEB7 in r31,__SP_H__ 135 0100 3196 adiw r30,1 136 0102 80E0 ldi r24,lo8(gs(uart_putchar)) 137 0104 90E0 ldi r25,hi8(gs(uart_putchar)) 138 0106 ADB7 in r26,__SP_L__ 139 0108 BEB7 in r27,__SP_H__ 140 010a 1296 adiw r26,1+1 141 010c 9C93 st X,r25 142 010e 8E93 st -X,r24 143 0110 1197 sbiw r26,1 144 0112 80E0 ldi r24,lo8(__c.2246) 145 0114 90E0 ldi r25,hi8(__c.2246) 146 0116 9383 std Z+3,r25 147 0118 8283 std Z+2,r24 148 011a 822F mov r24,r18 149 011c 6AE0 ldi r22,lo8(10) 150 011e 0E94 0000 call __udivmodqi4 151 0122 8483 std Z+4,r24 152 0124 1582 std Z+5,__zero_reg__ 153 0126 822F mov r24,r18 154 0128 0E94 0000 call __udivmodqi4 155 012c 9683 std Z+6,r25 156 012e 1782 std Z+7,__zero_reg__ 157 0130 E091 0000 lds r30,_printf_P 158 0134 F091 0000 lds r31,(_printf_P)+1 159 0138 0995 icall 160 013a EDB7 in r30,__SP_L__ 161 013c FEB7 in r31,__SP_H__ 162 013e 3896 adiw r30,8 163 0140 EDBF out __SP_L__,r30 164 .L10: 165 /* epilogue start */ 166 0142 DF91 pop r29 167 0144 CF91 pop r28 168 0146 1F91 pop r17 169 0148 0895 ret 171 .global CalMk3Mag 173 CalMk3Mag: 174 /* prologue: function */ 175 /* frame size = 0 */ 176 014a 8091 0000 lds r24,EE_Parameter+1 177 014e A82F mov r26,r24 178 0150 B0E0 ldi r27,lo8(0) 179 0152 FD01 movw r30,r26 180 0154 EE0F lsl r30 181 0156 FF1F rol r31 182 0158 E050 subi r30,lo8(-(PPM_in)) 183 015a F040 sbci r31,hi8(-(PPM_in)) 184 015c 8081 ld r24,Z 185 015e 9181 ldd r25,Z+1 186 0160 8D5E subi r24,lo8(-19) 187 0162 9F4F sbci r25,hi8(-19) 188 0164 04F0 brlt .L15 189 0166 1092 0000 sts stick.2222,__zero_reg__ 190 .L15: 191 016a AA0F lsl r26 192 016c BB1F rol r27 193 016e A050 subi r26,lo8(-(PPM_in)) 194 0170 B040 sbci r27,hi8(-(PPM_in)) 195 0172 8D91 ld r24,X+ 196 0174 9C91 ld r25,X 197 0176 8A5B subi r24,lo8(-70) 198 0178 9F4F sbci r25,hi8(-70) 199 017a 04F4 brge .L16 200 017c 8091 0000 lds r24,stick.2222 201 0180 8823 tst r24 202 0182 01F4 brne .L16 203 0184 81E0 ldi r24,lo8(1) 204 0186 8093 0000 sts stick.2222,r24 205 018a 8091 0000 lds r24,WinkelOut+6 206 018e 8F5F subi r24,lo8(-(1)) 207 0190 8093 0000 sts WinkelOut+6,r24 208 0194 8530 cpi r24,lo8(5) 209 0196 00F0 brlo .L17 210 0198 88EE ldi r24,lo8(1000) 211 019a 93E0 ldi r25,hi8(1000) 212 019c 9093 0000 sts (beeptime)+1,r25 213 01a0 8093 0000 sts beeptime,r24 214 01a4 00C0 rjmp .L16 215 .L17: 216 01a6 66E9 ldi r22,lo8(150) 217 01a8 70E0 ldi r23,hi8(150) 218 01aa 0E94 0000 call Piep 219 .L16: 220 01ae 8091 0000 lds r24,WinkelOut+6 221 01b2 8093 0000 sts DebugOut+40,r24 222 01b6 1092 0000 sts DebugOut+41,__zero_reg__ 223 /* epilogue start */ 224 01ba 0895 ret 226 .global main 228 main: 229 01bc A0E0 ldi r26,lo8(0) 230 01be B0E0 ldi r27,hi8(0) 231 01c0 E0E0 ldi r30,lo8(gs(1f)) 232 01c2 F0E0 ldi r31,hi8(gs(1f)) 233 01c4 0C94 0000 jmp __prologue_saves__+((18 - 18) * 2) 234 1: 235 /* prologue: function */ 236 /* frame size = 0 */ 237 01c8 14B8 out 36-32,__zero_reg__ 238 01ca 15B8 out 37-32,__zero_reg__ 239 01cc 189B sbis 35-32,0 240 01ce 00C0 rjmp .L20 241 01d0 199B sbis 35-32,1 242 01d2 00C0 rjmp .L21 243 01d4 8DE0 ldi r24,lo8(13) 244 01d6 00C0 rjmp .L97 245 .L21: 246 01d8 8BE0 ldi r24,lo8(11) 247 01da 00C0 rjmp .L97 248 .L20: 249 01dc 199B sbis 35-32,1 250 01de 00C0 rjmp .L23 251 01e0 84E1 ldi r24,lo8(20) 252 01e2 00C0 rjmp .L97 253 .L23: 254 01e4 8AE0 ldi r24,lo8(10) 255 .L97: 256 01e6 8093 0000 sts PlatinenVersion,r24 257 01ea 81E8 ldi r24,lo8(-127) 258 01ec 87B9 out 39-32,r24 259 01ee 3E9A sbi 39-32,6 260 01f0 8FEF ldi r24,lo8(-1) 261 01f2 88B9 out 40-32,r24 262 01f4 8BE1 ldi r24,lo8(27) 263 01f6 84B9 out 36-32,r24 264 01f8 81E0 ldi r24,lo8(1) 265 01fa 85B9 out 37-32,r24 266 01fc 8EE3 ldi r24,lo8(62) 267 01fe 8AB9 out 42-32,r24 268 0200 87E4 ldi r24,lo8(71) 269 0202 8BB9 out 43-32,r24 270 0204 469A sbi 40-32,6 271 0206 84B7 in r24,84-32 272 0208 877F andi r24,lo8(-9) 273 020a 84BF out 84-32,r24 274 020c 8091 6000 lds r24,96 275 0210 8861 ori r24,lo8(24) 276 0212 8093 6000 sts 96,r24 277 0216 1092 6000 sts 96,__zero_reg__ 278 021a 84EC ldi r24,lo8(2500) 279 021c 99E0 ldi r25,hi8(2500) 280 021e 9093 0000 sts (beeptime)+1,r25 281 0222 8093 0000 sts beeptime,r24 282 0226 1092 0000 sts (StickGier)+1,__zero_reg__ 283 022a 1092 0000 sts StickGier,__zero_reg__ 284 022e 1092 0000 sts (PPM_in+4)+1,__zero_reg__ 285 0232 1092 0000 sts PPM_in+4,__zero_reg__ 286 0236 1092 0000 sts (StickRoll)+1,__zero_reg__ 287 023a 1092 0000 sts StickRoll,__zero_reg__ 288 023e 1092 0000 sts (StickNick)+1,__zero_reg__ 289 0242 1092 0000 sts StickNick,__zero_reg__ 290 0246 8091 0000 lds r24,PlatinenVersion 291 024a 8431 cpi r24,lo8(20) 292 024c 00F0 brlo .L24 293 024e 84EC ldi r24,lo8(1220) 294 0250 94E0 ldi r25,hi8(1220) 295 0252 A0E0 ldi r26,hlo8(1220) 296 0254 B0E0 ldi r27,hhi8(1220) 297 0256 00C0 rjmp .L98 298 .L24: 299 0258 8BE0 ldi r24,lo8(1291) 300 025a 95E0 ldi r25,hi8(1291) 301 025c A0E0 ldi r26,hlo8(1291) 302 025e B0E0 ldi r27,hhi8(1291) 303 .L98: 304 0260 8093 0000 sts GIER_GRAD_FAKTOR,r24 305 0264 9093 0000 sts (GIER_GRAD_FAKTOR)+1,r25 306 0268 A093 0000 sts (GIER_GRAD_FAKTOR)+2,r26 307 026c B093 0000 sts (GIER_GRAD_FAKTOR)+3,r27 308 0270 8091 0000 lds r24,PlatinenVersion 309 0274 8A30 cpi r24,lo8(10) 310 0276 01F0 breq .L26 311 0278 8431 cpi r24,lo8(20) 312 027a 00F0 brlo .L27 313 .L26: 314 027c 2898 cbi 37-32,0 315 027e 00C0 rjmp .L28 316 .L27: 317 0280 289A sbi 37-32,0 318 .L28: 319 0282 0E94 0000 call Timer_Init 320 0286 0E94 0000 call TIMER2_Init 321 028a 0E94 0000 call UART_Init 322 028e 0E94 0000 call rc_sum_init 323 0292 0E94 0000 call ADC_Init 324 0296 0E94 0000 call I2C_Init 325 029a 0E94 0000 call SPI_MasterInit 326 029e 0E94 0000 call Capacity_Init 327 02a2 0E94 0000 call LIBFC_Init 328 02a6 8091 0000 lds r24,PlatinenVersion 329 02aa 8C30 cpi r24,lo8(12) 330 02ac 00F4 brsh .L29 331 02ae 299A sbi 37-32,1 332 02b0 00C0 rjmp .L30 333 .L29: 334 02b2 2998 cbi 37-32,1 335 .L30: 336 /* #APP */ 337 ; 164 "main.c" 1 338 02b4 7894 sei 339 ; 0 "" 2 340 /* #NOAPP */ 341 02b6 0E94 0000 call ParamSet_Init 342 02ba 8091 0000 lds r24,BLFlags 343 02be 8260 ori r24,lo8(2) 344 02c0 8093 0000 sts BLFlags,r24 345 02c4 1092 0000 sts motor_read,__zero_reg__ 346 02c8 0E94 0000 call SendMotorData 347 02cc 84EF ldi r24,lo8(500) 348 02ce 91E0 ldi r25,hi8(500) 349 02d0 0E94 0000 call SetDelay 350 02d4 8C01 movw r16,r24 351 .L32: 352 02d6 8091 0000 lds r24,BLFlags 353 02da 80FD sbrc r24,0 354 02dc 00C0 rjmp .L31 355 02de C801 movw r24,r16 356 02e0 0E94 0000 call CheckDelay 357 02e4 8823 tst r24 358 02e6 01F0 breq .L32 359 .L31: 360 02e8 00D0 rcall . 361 02ea 00D0 rcall . 362 02ec 00E0 ldi r16,lo8(gs(uart_putchar)) 363 02ee 10E0 ldi r17,hi8(gs(uart_putchar)) 364 02f0 ADB7 in r26,__SP_L__ 365 02f2 BEB7 in r27,__SP_H__ 366 02f4 1296 adiw r26,1+1 367 02f6 1C93 st X,r17 368 02f8 0E93 st -X,r16 369 02fa 1197 sbiw r26,1 370 02fc 80E0 ldi r24,lo8(__c.2277) 371 02fe 90E0 ldi r25,hi8(__c.2277) 372 0300 1496 adiw r26,3+1 373 0302 9C93 st X,r25 374 0304 8E93 st -X,r24 375 0306 1397 sbiw r26,3 376 0308 E091 0000 lds r30,_printf_P 377 030c F091 0000 lds r31,(_printf_P)+1 378 0310 0995 icall 379 0312 0F90 pop __tmp_reg__ 380 0314 0F90 pop __tmp_reg__ 381 0316 0F90 pop __tmp_reg__ 382 0318 0F90 pop __tmp_reg__ 383 031a 80EA ldi r24,lo8(4000) 384 031c 9FE0 ldi r25,hi8(4000) 385 031e 0E94 0000 call SetDelay 386 0322 4C01 movw r8,r24 387 0324 B0E0 ldi r27,lo8(Motor+3) 388 0326 CB2E mov r12,r27 389 0328 B0E0 ldi r27,hi8(Motor+3) 390 032a DB2E mov r13,r27 391 032c A0E0 ldi r26,lo8(Mixer+13) 392 032e 6A2E mov r6,r26 393 0330 A0E0 ldi r26,hi8(Mixer+13) 394 0332 7A2E mov r7,r26 395 0334 7601 movw r14,r12 396 0336 5301 movw r10,r6 397 0338 C1E0 ldi r28,lo8(1) 398 033a D0E0 ldi r29,hi8(1) 399 033c 2801 movw r4,r16 400 033e 00E0 ldi r16,lo8(__c.2288) 401 0340 10E0 ldi r17,hi8(__c.2288) 402 .L40: 403 0342 0E94 0000 call SendMotorData 404 .L34: 405 0346 8091 0000 lds r24,BLFlags 406 034a 80FD sbrc r24,0 407 034c 00C0 rjmp .L33 408 034e C401 movw r24,r8 409 0350 0E94 0000 call CheckDelay 410 0354 8823 tst r24 411 0356 01F0 breq .L34 412 .L33: 413 0358 F501 movw r30,r10 414 035a 8081 ld r24,Z 415 035c 1816 cp __zero_reg__,r24 416 035e 04F0 brlt .L95 417 0360 00C0 rjmp .L36 418 .L38: 419 0362 0E94 0000 call SendMotorData 420 .L37: 421 0366 8091 0000 lds r24,BLFlags 422 036a 80FD sbrc r24,0 423 036c 00C0 rjmp .L95 424 036e C401 movw r24,r8 425 0370 0E94 0000 call CheckDelay 426 0374 8823 tst r24 427 0376 01F0 breq .L37 428 .L95: 429 0378 C401 movw r24,r8 430 037a 0E94 0000 call CheckDelay 431 037e 8823 tst r24 432 0380 01F4 brne .L36 433 0382 D701 movw r26,r14 434 0384 8C91 ld r24,X 435 0386 87FF sbrs r24,7 436 0388 00C0 rjmp .L38 437 .L36: 438 038a F701 movw r30,r14 439 038c 8081 ld r24,Z 440 038e 87FF sbrs r24,7 441 0390 00C0 rjmp .L39 442 0392 00D0 rcall . 443 0394 00D0 rcall . 444 0396 00D0 rcall . 445 0398 EDB7 in r30,__SP_L__ 446 039a FEB7 in r31,__SP_H__ 447 039c 3196 adiw r30,1 448 039e ADB7 in r26,__SP_L__ 449 03a0 BEB7 in r27,__SP_H__ 450 03a2 1196 adiw r26,1 451 03a4 4C92 st X,r4 452 03a6 1197 sbiw r26,1 453 03a8 1296 adiw r26,2 454 03aa 5C92 st X,r5 455 03ac 1383 std Z+3,r17 456 03ae 0283 std Z+2,r16 457 03b0 D583 std Z+5,r29 458 03b2 C483 std Z+4,r28 459 03b4 E091 0000 lds r30,_printf_P 460 03b8 F091 0000 lds r31,(_printf_P)+1 461 03bc 0995 icall 462 03be 8091 0000 lds r24,FoundMotors 463 03c2 8F5F subi r24,lo8(-(1)) 464 03c4 8093 0000 sts FoundMotors,r24 465 03c8 EDB7 in r30,__SP_L__ 466 03ca FEB7 in r31,__SP_H__ 467 03cc 3696 adiw r30,6 468 03ce EDBF out __SP_L__,r30 469 .L39: 470 03d0 2196 adiw r28,1 471 03d2 88E0 ldi r24,lo8(8) 472 03d4 90E0 ldi r25,hi8(8) 473 03d6 E80E add r14,r24 474 03d8 F91E adc r15,r25 475 03da A4E0 ldi r26,lo8(4) 476 03dc B0E0 ldi r27,hi8(4) 477 03de AA0E add r10,r26 478 03e0 BB1E adc r11,r27 479 03e2 CD30 cpi r28,13 480 03e4 D105 cpc r29,__zero_reg__ 481 03e6 01F0 breq .+2 482 03e8 00C0 rjmp .L40 483 03ea 01E0 ldi r16,lo8(1) 484 03ec 10E0 ldi r17,hi8(1) 485 03ee F0E0 ldi r31,lo8(gs(uart_putchar)) 486 03f0 EF2E mov r14,r31 487 03f2 F0E0 ldi r31,hi8(gs(uart_putchar)) 488 03f4 FF2E mov r15,r31 489 03f6 C0E0 ldi r28,lo8(__c.2293) 490 03f8 D0E0 ldi r29,hi8(__c.2293) 491 03fa E2E0 ldi r30,lo8(2) 492 03fc BE2E mov r11,r30 493 .L42: 494 03fe F601 movw r30,r12 495 0400 8081 ld r24,Z 496 0402 87FD sbrc r24,7 497 0404 00C0 rjmp .L41 498 0406 D301 movw r26,r6 499 0408 8C91 ld r24,X 500 040a 1816 cp __zero_reg__,r24 501 040c 04F4 brge .L41 502 040e 00D0 rcall . 503 0410 00D0 rcall . 504 0412 00D0 rcall . 505 0414 EDB7 in r30,__SP_L__ 506 0416 FEB7 in r31,__SP_H__ 507 0418 3196 adiw r30,1 508 041a ADB7 in r26,__SP_L__ 509 041c BEB7 in r27,__SP_H__ 510 041e 1296 adiw r26,1+1 511 0420 FC92 st X,r15 512 0422 EE92 st -X,r14 513 0424 1197 sbiw r26,1 514 0426 D383 std Z+3,r29 515 0428 C283 std Z+2,r28 516 042a 1583 std Z+5,r17 517 042c 0483 std Z+4,r16 518 042e E091 0000 lds r30,_printf_P 519 0432 F091 0000 lds r31,(_printf_P)+1 520 0436 0995 icall 521 0438 B092 0000 sts ServoActive,r11 522 043c EDB7 in r30,__SP_L__ 523 043e FEB7 in r31,__SP_H__ 524 0440 3696 adiw r30,6 525 0442 EDBF out __SP_L__,r30 526 .L41: 527 0444 D601 movw r26,r12 528 0446 8C91 ld r24,X 529 0448 8078 andi r24,lo8(-128) 530 044a 8C93 st X,r24 531 044c 0F5F subi r16,lo8(-(1)) 532 044e 1F4F sbci r17,hi8(-(1)) 533 0450 E8E0 ldi r30,lo8(8) 534 0452 F0E0 ldi r31,hi8(8) 535 0454 CE0E add r12,r30 536 0456 DF1E adc r13,r31 537 0458 84E0 ldi r24,lo8(4) 538 045a 90E0 ldi r25,hi8(4) 539 045c 680E add r6,r24 540 045e 791E adc r7,r25 541 0460 0D30 cpi r16,13 542 0462 1105 cpc r17,__zero_reg__ 543 0464 01F4 brne .L42 544 0466 00D0 rcall . 545 0468 00D0 rcall . 546 046a 80E0 ldi r24,lo8(gs(uart_putchar)) 547 046c 90E0 ldi r25,hi8(gs(uart_putchar)) 548 046e ADB7 in r26,__SP_L__ 549 0470 BEB7 in r27,__SP_H__ 550 0472 1296 adiw r26,1+1 551 0474 9C93 st X,r25 552 0476 8E93 st -X,r24 553 0478 1197 sbiw r26,1 554 047a 80E0 ldi r24,lo8(__c.2298) 555 047c 90E0 ldi r25,hi8(__c.2298) 556 047e 1496 adiw r26,3+1 557 0480 9C93 st X,r25 558 0482 8E93 st -X,r24 559 0484 1397 sbiw r26,3 560 0486 E091 0000 lds r30,_printf_P 561 048a F091 0000 lds r31,(_printf_P)+1 562 048e 0995 icall 563 0490 0F90 pop __tmp_reg__ 564 0492 0F90 pop __tmp_reg__ 565 0494 0F90 pop __tmp_reg__ 566 0496 0F90 pop __tmp_reg__ 567 0498 9091 0000 lds r25,RequiredMotors 568 049c 8091 0000 lds r24,FoundMotors 569 04a0 9817 cp r25,r24 570 04a2 00F4 brsh .L43 571 04a4 8091 0000 lds r24,VersionInfo+6 572 04a8 8061 ori r24,lo8(16) 573 04aa 8093 0000 sts VersionInfo+6,r24 574 .L43: 575 04ae 00D0 rcall . 576 04b0 00D0 rcall . 577 04b2 80E0 ldi r24,lo8(gs(uart_putchar)) 578 04b4 90E0 ldi r25,hi8(gs(uart_putchar)) 579 04b6 EDB7 in r30,__SP_L__ 580 04b8 FEB7 in r31,__SP_H__ 581 04ba 9283 std Z+2,r25 582 04bc 8183 std Z+1,r24 583 04be 80E0 ldi r24,lo8(__c.2300) 584 04c0 90E0 ldi r25,hi8(__c.2300) 585 04c2 9483 std Z+4,r25 586 04c4 8383 std Z+3,r24 587 04c6 E091 0000 lds r30,_printf_P 588 04ca F091 0000 lds r31,(_printf_P)+1 589 04ce 0995 icall 590 04d0 0F90 pop __tmp_reg__ 591 04d2 0F90 pop __tmp_reg__ 592 04d4 0F90 pop __tmp_reg__ 593 04d6 0F90 pop __tmp_reg__ 594 04d8 88EE ldi r24,lo8(1000) 595 04da 93E0 ldi r25,hi8(1000) 596 04dc 0E94 0000 call SetDelay 597 04e0 8C01 movw r16,r24 598 04e2 0E94 0000 call SucheLuftruckOffset 599 .L44: 600 04e6 C801 movw r24,r16 601 04e8 0E94 0000 call CheckDelay 602 04ec 8823 tst r24 603 04ee 01F0 breq .L44 604 04f0 00D0 rcall . 605 04f2 00D0 rcall . 606 04f4 80E0 ldi r24,lo8(gs(uart_putchar)) 607 04f6 90E0 ldi r25,hi8(gs(uart_putchar)) 608 04f8 ADB7 in r26,__SP_L__ 609 04fa BEB7 in r27,__SP_H__ 610 04fc 1296 adiw r26,1+1 611 04fe 9C93 st X,r25 612 0500 8E93 st -X,r24 613 0502 1197 sbiw r26,1 614 0504 80E0 ldi r24,lo8(__c.2305) 615 0506 90E0 ldi r25,hi8(__c.2305) 616 0508 1496 adiw r26,3+1 617 050a 9C93 st X,r25 618 050c 8E93 st -X,r24 619 050e 1397 sbiw r26,3 620 0510 E091 0000 lds r30,_printf_P 621 0514 F091 0000 lds r31,(_printf_P)+1 622 0518 0995 icall 623 051a 0F90 pop __tmp_reg__ 624 051c 0F90 pop __tmp_reg__ 625 051e 0F90 pop __tmp_reg__ 626 0520 0F90 pop __tmp_reg__ 627 0522 80E0 ldi r24,lo8(0) 628 0524 0E94 0000 call SetNeutral 629 0528 8091 0000 lds r24,PlatinenVersion 630 052c 8A30 cpi r24,lo8(10) 631 052e 01F0 breq .L45 632 0530 8431 cpi r24,lo8(20) 633 0532 00F0 brlo .L46 634 .L45: 635 0534 2898 cbi 37-32,0 636 0536 00C0 rjmp .L47 637 .L46: 638 0538 289A sbi 37-32,0 639 .L47: 640 053a 80ED ldi r24,lo8(2000) 641 053c 97E0 ldi r25,hi8(2000) 642 053e 9093 0000 sts (beeptime)+1,r25 643 0542 8093 0000 sts beeptime,r24 644 0546 85E5 ldi r24,lo8(85) 645 0548 8093 0000 sts ExternControl,r24 646 054c 8EE0 ldi r24,lo8(14) 647 054e 90E0 ldi r25,hi8(14) 648 0550 0E94 0000 call GetParamByte 649 0554 182F mov r17,r24 650 0556 8FE0 ldi r24,lo8(15) 651 0558 90E0 ldi r25,hi8(15) 652 055a 0E94 0000 call GetParamByte 653 055e 312F mov r19,r17 654 0560 20E0 ldi r18,lo8(0) 655 0562 280F add r18,r24 656 0564 311D adc r19,__zero_reg__ 657 0566 3093 0000 sts (FlugMinuten)+1,r19 658 056a 2093 0000 sts FlugMinuten,r18 659 056e 8AE0 ldi r24,lo8(10) 660 0570 90E0 ldi r25,hi8(10) 661 0572 0E94 0000 call GetParamByte 662 0576 182F mov r17,r24 663 0578 8BE0 ldi r24,lo8(11) 664 057a 90E0 ldi r25,hi8(11) 665 057c 0E94 0000 call GetParamByte 666 0580 312F mov r19,r17 667 0582 20E0 ldi r18,lo8(0) 668 0584 280F add r18,r24 669 0586 311D adc r19,__zero_reg__ 670 0588 3093 0000 sts (FlugMinutenGesamt)+1,r19 671 058c 2093 0000 sts FlugMinutenGesamt,r18 672 0590 2F5F subi r18,lo8(-1) 673 0592 3F4F sbci r19,hi8(-1) 674 0594 01F0 breq .L48 675 0596 8091 0000 lds r24,FlugMinuten 676 059a 9091 0000 lds r25,(FlugMinuten)+1 677 059e 8F5F subi r24,lo8(-1) 678 05a0 9F4F sbci r25,hi8(-1) 679 05a2 01F4 brne .L49 680 .L48: 681 05a4 1092 0000 sts (FlugMinuten)+1,__zero_reg__ 682 05a8 1092 0000 sts FlugMinuten,__zero_reg__ 683 05ac 1092 0000 sts (FlugMinutenGesamt)+1,__zero_reg__ 684 05b0 1092 0000 sts FlugMinutenGesamt,__zero_reg__ 685 .L49: 686 05b4 8DB7 in r24,__SP_L__ 687 05b6 9EB7 in r25,__SP_H__ 688 05b8 0897 sbiw r24,8 689 05ba 8DBF out __SP_L__,r24 690 05bc EDB7 in r30,__SP_L__ 691 05be FEB7 in r31,__SP_H__ 692 05c0 3196 adiw r30,1 693 05c2 00E0 ldi r16,lo8(gs(uart_putchar)) 694 05c4 10E0 ldi r17,hi8(gs(uart_putchar)) 695 05c6 ADB7 in r26,__SP_L__ 696 05c8 BEB7 in r27,__SP_H__ 697 05ca 1296 adiw r26,1+1 698 05cc 1C93 st X,r17 699 05ce 0E93 st -X,r16 700 05d0 1197 sbiw r26,1 701 05d2 80E0 ldi r24,lo8(__c.2307) 702 05d4 90E0 ldi r25,hi8(__c.2307) 703 05d6 9383 std Z+3,r25 704 05d8 8283 std Z+2,r24 705 05da 8091 0000 lds r24,FlugMinuten 706 05de 9091 0000 lds r25,(FlugMinuten)+1 707 05e2 9583 std Z+5,r25 708 05e4 8483 std Z+4,r24 709 05e6 8091 0000 lds r24,FlugMinutenGesamt 710 05ea 9091 0000 lds r25,(FlugMinutenGesamt)+1 711 05ee 9783 std Z+7,r25 712 05f0 8683 std Z+6,r24 713 05f2 E091 0000 lds r30,_printf_P 714 05f6 F091 0000 lds r31,(_printf_P)+1 715 05fa 0995 icall 716 05fc 0F90 pop __tmp_reg__ 717 05fe 0F90 pop __tmp_reg__ 718 0600 0F90 pop __tmp_reg__ 719 0602 0F90 pop __tmp_reg__ 720 0604 EDB7 in r30,__SP_L__ 721 0606 FEB7 in r31,__SP_H__ 722 0608 1283 std Z+2,r17 723 060a 0183 std Z+1,r16 724 060c 80E0 ldi r24,lo8(__c.2309) 725 060e 90E0 ldi r25,hi8(__c.2309) 726 0610 9483 std Z+4,r25 727 0612 8383 std Z+3,r24 728 0614 E091 0000 lds r30,_printf_P 729 0618 F091 0000 lds r31,(_printf_P)+1 730 061c 0995 icall 731 061e 8091 0000 lds r24,EE_Parameter+13 732 0622 0F90 pop __tmp_reg__ 733 0624 0F90 pop __tmp_reg__ 734 0626 0F90 pop __tmp_reg__ 735 0628 0F90 pop __tmp_reg__ 736 062a 82FF sbrs r24,2 737 062c 00C0 rjmp .L50 738 062e 00D0 rcall . 739 0630 00D0 rcall . 740 0632 ADB7 in r26,__SP_L__ 741 0634 BEB7 in r27,__SP_H__ 742 0636 1296 adiw r26,1+1 743 0638 1C93 st X,r17 744 063a 0E93 st -X,r16 745 063c 1197 sbiw r26,1 746 063e 80E0 ldi r24,lo8(__c.2311) 747 0640 90E0 ldi r25,hi8(__c.2311) 748 0642 1496 adiw r26,3+1 749 0644 9C93 st X,r25 750 0646 8E93 st -X,r24 751 0648 1397 sbiw r26,3 752 064a 00C0 rjmp .L99 753 .L50: 754 064c 00D0 rcall . 755 064e 00D0 rcall . 756 0650 EDB7 in r30,__SP_L__ 757 0652 FEB7 in r31,__SP_H__ 758 0654 1283 std Z+2,r17 759 0656 0183 std Z+1,r16 760 0658 80E0 ldi r24,lo8(__c.2313) 761 065a 90E0 ldi r25,hi8(__c.2313) 762 065c 9483 std Z+4,r25 763 065e 8383 std Z+3,r24 764 .L99: 765 0660 E091 0000 lds r30,_printf_P 766 0664 F091 0000 lds r31,(_printf_P)+1 767 0668 0995 icall 768 066a 0F90 pop __tmp_reg__ 769 066c 0F90 pop __tmp_reg__ 770 066e 0F90 pop __tmp_reg__ 771 0670 0F90 pop __tmp_reg__ 772 0672 0E94 0000 call LcdClear 773 0676 88E8 ldi r24,lo8(5000) 774 0678 93E1 ldi r25,hi8(5000) 775 067a 9093 0000 sts (I2CTimeout)+1,r25 776 067e 8093 0000 sts I2CTimeout,r24 777 0682 81E0 ldi r24,lo8(1) 778 0684 8093 0000 sts WinkelOut+7,r24 779 0688 0E94 0000 call LipoDetection 780 068c 8091 0000 lds r24,EE_Parameter+39 781 0690 0E94 0000 call LIBFC_ReceiverInit 782 0694 00D0 rcall . 783 0696 00D0 rcall . 784 0698 80E0 ldi r24,lo8(gs(uart_putchar)) 785 069a 90E0 ldi r25,hi8(gs(uart_putchar)) 786 069c ADB7 in r26,__SP_L__ 787 069e BEB7 in r27,__SP_H__ 788 06a0 1296 adiw r26,1+1 789 06a2 9C93 st X,r25 790 06a4 8E93 st -X,r24 791 06a6 1197 sbiw r26,1 792 06a8 80E0 ldi r24,lo8(__c.2315) 793 06aa 90E0 ldi r25,hi8(__c.2315) 794 06ac 1496 adiw r26,3+1 795 06ae 9C93 st X,r25 796 06b0 8E93 st -X,r24 797 06b2 1397 sbiw r26,3 798 06b4 E091 0000 lds r30,_printf_P 799 06b8 F091 0000 lds r31,(_printf_P)+1 800 06bc 0995 icall 801 06be 0F90 pop __tmp_reg__ 802 06c0 0F90 pop __tmp_reg__ 803 06c2 0F90 pop __tmp_reg__ 804 06c4 0F90 pop __tmp_reg__ 805 06c6 80ED ldi r24,lo8(2000) 806 06c8 97E0 ldi r25,hi8(2000) 807 06ca 0E94 0000 call SetDelay 808 06ce 8C01 movw r16,r24 809 06d0 8AEF ldi r24,lo8(250) 810 06d2 90E0 ldi r25,hi8(250) 811 06d4 0E94 0000 call SetDelay 812 06d8 7C01 movw r14,r24 813 06da 83E0 ldi r24,lo8(3) 814 06dc 8093 0000 sts DebugOut,r24 815 06e0 C0E0 ldi r28,lo8(0) 816 06e2 D0E0 ldi r29,hi8(0) 817 06e4 78E9 ldi r23,lo8(15000) 818 06e6 C72E mov r12,r23 819 06e8 7AE3 ldi r23,hi8(15000) 820 06ea D72E mov r13,r23 821 06ec 412C mov r4,__zero_reg__ 822 06ee 68EA ldi r22,hi8(-22528) 823 06f0 562E mov r5,r22 824 06f2 212C mov r2,__zero_reg__ 825 06f4 5CE0 ldi r21,hi8(3072) 826 06f6 352E mov r3,r21 827 06f8 40E1 ldi r20,lo8(10000) 828 06fa A42E mov r10,r20 829 06fc 47E2 ldi r20,hi8(10000) 830 06fe B42E mov r11,r20 831 0700 30E8 ldi r19,lo8(128) 832 0702 832E mov r8,r19 833 0704 912C mov r9,__zero_reg__ 834 0706 25E0 ldi r18,lo8(5) 835 0708 622E mov r6,r18 836 070a 712C mov r7,__zero_reg__ 837 .L96: 838 070c C701 movw r24,r14 839 070e 0E94 0000 call CheckDelay 840 0712 8823 tst r24 841 0714 01F0 breq .L52 842 0716 84E6 ldi r24,lo8(100) 843 0718 90E0 ldi r25,hi8(100) 844 071a 0E94 0000 call SetDelay 845 071e 7C01 movw r14,r24 846 0720 0E94 0000 call LIBFC_Polling 847 .L52: 848 0724 8091 0000 lds r24,UpdateMotor 849 0728 8823 tst r24 850 072a 01F4 brne .+2 851 072c 00C0 rjmp .L53 852 072e 8091 0000 lds r24,AdReady 853 0732 8823 tst r24 854 0734 01F4 brne .+2 855 0736 00C0 rjmp .L53 856 0738 1092 0000 sts UpdateMotor,__zero_reg__ 857 073c 8091 0000 lds r24,WinkelOut+6 858 0740 8823 tst r24 859 0742 01F0 breq .L54 860 0744 0E94 0000 call CalMk3Mag 861 0748 00C0 rjmp .L55 862 .L54: 863 074a 0E94 0000 call MotorRegler 864 .L55: 865 074e 0E94 0000 call SendMotorData 866 0752 8091 0000 lds r24,PlatinenVersion 867 0756 8A30 cpi r24,lo8(10) 868 0758 01F0 breq .L56 869 075a 8431 cpi r24,lo8(20) 870 075c 00F0 brlo .L57 871 .L56: 872 075e 2898 cbi 37-32,0 873 0760 00C0 rjmp .L58 874 .L57: 875 0762 289A sbi 37-32,0 876 .L58: 877 0764 8091 0000 lds r24,SenderOkay 878 0768 8823 tst r24 879 076a 01F0 breq .L59 880 076c 8091 0000 lds r24,SenderOkay 881 0770 8150 subi r24,lo8(-(-1)) 882 0772 8093 0000 sts SenderOkay,r24 883 0776 8091 0000 lds r24,VersionInfo+6 884 077a 877F andi r24,lo8(-9) 885 077c 00C0 rjmp .L100 886 .L59: 887 077e 8091 6F00 lds r24,111 888 0782 8062 ori r24,lo8(32) 889 0784 8093 6F00 sts 111,r24 890 0788 1092 0000 sts (PPM_in)+1,__zero_reg__ 891 078c 1092 0000 sts PPM_in,__zero_reg__ 892 0790 8091 0000 lds r24,VersionInfo+6 893 0794 8860 ori r24,lo8(8) 894 .L100: 895 0796 8093 0000 sts VersionInfo+6,r24 896 079a 8091 0000 lds r24,I2CTimeout 897 079e 9091 0000 lds r25,(I2CTimeout)+1 898 07a2 0197 sbiw r24,1 899 07a4 9093 0000 sts (I2CTimeout)+1,r25 900 07a8 8093 0000 sts I2CTimeout,r24 901 07ac 8091 0000 lds r24,I2CTimeout 902 07b0 9091 0000 lds r25,(I2CTimeout)+1 903 07b4 892B or r24,r25 904 07b6 01F0 breq .L61 905 07b8 8091 0000 lds r24,MissingMotor 906 07bc 8823 tst r24 907 07be 01F0 breq .L62 908 .L61: 909 07c0 8091 0000 lds r24,I2CTimeout 910 07c4 9091 0000 lds r25,(I2CTimeout)+1 911 07c8 892B or r24,r25 912 07ca 01F4 brne .L63 913 07cc 0E94 0000 call I2C_Reset 914 07d0 7092 0000 sts (I2CTimeout)+1,r7 915 07d4 6092 0000 sts I2CTimeout,r6 916 07d8 8091 0000 lds r24,DebugOut+58 917 07dc 9091 0000 lds r25,(DebugOut+58)+1 918 07e0 0196 adiw r24,1 919 07e2 9093 0000 sts (DebugOut+58)+1,r25 920 07e6 8093 0000 sts DebugOut+58,r24 921 07ea 8091 0000 lds r24,FCFlags 922 07ee 8068 ori r24,lo8(-128) 923 07f0 8093 0000 sts FCFlags,r24 924 07f4 8091 0000 lds r24,VersionInfo+6 925 07f8 8160 ori r24,lo8(1) 926 07fa 8093 0000 sts VersionInfo+6,r24 927 07fe 8091 0000 lds r24,DebugOut+1 928 0802 8260 ori r24,lo8(2) 929 0804 8093 0000 sts DebugOut+1,r24 930 .L63: 931 0808 8091 0000 lds r24,BeepMuster 932 080c 9091 0000 lds r25,(BeepMuster)+1 933 0810 8F5F subi r24,lo8(-1) 934 0812 9F4F sbci r25,hi8(-1) 935 0814 01F4 brne .L64 936 0816 8091 0000 lds r24,MotorenEin 937 081a 8823 tst r24 938 081c 01F0 breq .L64 939 081e B092 0000 sts (beeptime)+1,r11 940 0822 A092 0000 sts beeptime,r10 941 0826 9092 0000 sts (BeepMuster)+1,r9 942 082a 8092 0000 sts BeepMuster,r8 943 082e 00C0 rjmp .L64 944 .L62: 945 0830 8091 0000 lds r24,PlatinenVersion 946 0834 8A30 cpi r24,lo8(10) 947 0836 01F0 breq .L65 948 0838 8431 cpi r24,lo8(20) 949 083a 00F0 brlo .L66 950 .L65: 951 083c 2898 cbi 37-32,0 952 083e 00C0 rjmp .L67 953 .L66: 954 0840 289A sbi 37-32,0 955 .L67: 956 0842 8091 0000 lds r24,beeptime 957 0846 9091 0000 lds r25,(beeptime)+1 958 084a 892B or r24,r25 959 084c 01F4 brne .L64 960 084e 8091 0000 lds r24,FCFlags 961 0852 8F77 andi r24,lo8(127) 962 0854 8093 0000 sts FCFlags,r24 963 .L64: 964 0858 8091 0000 lds r24,UpdateMotor 965 085c 8823 tst r24 966 085e 01F0 breq .+2 967 0860 00C0 rjmp .L53 968 0862 0E94 0000 call DatenUebertragung 969 0866 0E94 0000 call BearbeiteRxDaten 970 086a C801 movw r24,r16 971 086c 0E94 0000 call CheckDelay 972 0870 8823 tst r24 973 0872 01F4 brne .+2 974 0874 00C0 rjmp .L68 975 0876 8091 0000 lds r24,MissingMotor 976 087a 8823 tst r24 977 087c 01F0 breq .L69 978 087e 8091 0000 lds r24,VersionInfo+6 979 0882 8260 ori r24,lo8(2) 980 0884 8093 0000 sts VersionInfo+6,r24 981 0888 8091 0000 lds r24,DebugOut+1 982 088c 8260 ori r24,lo8(2) 983 088e 00C0 rjmp .L101 984 .L69: 985 0890 8091 0000 lds r24,VersionInfo+6 986 0894 8D7F andi r24,lo8(-3) 987 0896 8093 0000 sts VersionInfo+6,r24 988 089a 8091 0000 lds r24,I2CTimeout 989 089e 9091 0000 lds r25,(I2CTimeout)+1 990 08a2 0797 sbiw r24,7 991 08a4 00F0 brlo .L70 992 08a6 8091 0000 lds r24,DebugOut+1 993 08aa 8D7F andi r24,lo8(-3) 994 .L101: 995 08ac 8093 0000 sts DebugOut+1,r24 996 .L70: 997 08b0 8091 0000 lds r24,I2CTimeout 998 08b4 9091 0000 lds r25,(I2CTimeout)+1 999 08b8 0797 sbiw r24,7 1000 08ba 00F0 brlo .L71 1001 08bc 8091 0000 lds r24,VersionInfo+6 1002 08c0 8E7F andi r24,lo8(-2) 1003 08c2 8093 0000 sts VersionInfo+6,r24 1004 .L71: 1005 08c6 8091 0000 lds r24,PcZugriff 1006 08ca 8823 tst r24 1007 08cc 01F0 breq .L72 1008 08ce 8150 subi r24,lo8(-(-1)) 1009 08d0 8093 0000 sts PcZugriff,r24 1010 08d4 00C0 rjmp .L73 1011 .L72: 1012 08d6 1092 0000 sts ExternControl+10,__zero_reg__ 1013 08da 1092 0000 sts (ExternStickNick)+1,__zero_reg__ 1014 08de 1092 0000 sts ExternStickNick,__zero_reg__ 1015 08e2 1092 0000 sts (ExternStickRoll)+1,__zero_reg__ 1016 08e6 1092 0000 sts ExternStickRoll,__zero_reg__ 1017 08ea 1092 0000 sts (ExternStickGier)+1,__zero_reg__ 1018 08ee 1092 0000 sts ExternStickGier,__zero_reg__ 1019 08f2 8091 0000 lds r24,BeepMuster 1020 08f6 9091 0000 lds r25,(BeepMuster)+1 1021 08fa 8F5F subi r24,lo8(-1) 1022 08fc 9F4F sbci r25,hi8(-1) 1023 08fe 01F4 brne .L73 1024 0900 8091 0000 lds r24,SenderOkay 1025 0904 8823 tst r24 1026 0906 01F4 brne .L73 1027 0908 D092 0000 sts (beeptime)+1,r13 1028 090c C092 0000 sts beeptime,r12 1029 0910 3092 0000 sts (BeepMuster)+1,r3 1030 0914 2092 0000 sts BeepMuster,r2 1031 .L73: 1032 0918 8091 0000 lds r24,NaviDataOkay 1033 091c 893C cpi r24,lo8(-55) 1034 091e 00F0 brlo .L74 1035 0920 8150 subi r24,lo8(-(-1)) 1036 0922 8093 0000 sts NaviDataOkay,r24 1037 0926 8091 0000 lds r24,FCFlags 1038 092a 8F7B andi r24,lo8(-65) 1039 092c 8093 0000 sts FCFlags,r24 1040 0930 8091 0000 lds r24,VersionInfo+6 1041 0934 8B7F andi r24,lo8(-5) 1042 0936 8093 0000 sts VersionInfo+6,r24 1043 093a 00C0 rjmp .L75 1044 .L74: 1045 093c 8091 0000 lds r24,NC_Version+3 1046 0940 8823 tst r24 1047 0942 01F0 breq .L76 1048 0944 8091 0000 lds r24,FCFlags 1049 0948 8064 ori r24,lo8(64) 1050 094a 8093 0000 sts FCFlags,r24 1051 094e 8091 0000 lds r24,VersionInfo+6 1052 0952 8460 ori r24,lo8(4) 1053 0954 8093 0000 sts VersionInfo+6,r24 1054 0958 8091 0000 lds r24,BeepMuster 1055 095c 9091 0000 lds r25,(BeepMuster)+1 1056 0960 8F5F subi r24,lo8(-1) 1057 0962 9F4F sbci r25,hi8(-1) 1058 0964 01F4 brne .L76 1059 0966 8091 0000 lds r24,MotorenEin 1060 096a 8823 tst r24 1061 096c 01F0 breq .L76 1062 096e D092 0000 sts (beeptime)+1,r13 1063 0972 C092 0000 sts beeptime,r12 1064 0976 5092 0000 sts (BeepMuster)+1,r5 1065 097a 4092 0000 sts BeepMuster,r4 1066 .L76: 1067 097e 1092 0000 sts (GPS_Nick)+1,__zero_reg__ 1068 0982 1092 0000 sts GPS_Nick,__zero_reg__ 1069 0986 1092 0000 sts (GPS_Roll)+1,__zero_reg__ 1070 098a 1092 0000 sts GPS_Roll,__zero_reg__ 1071 098e 8FEF ldi r24,lo8(-1) 1072 0990 9FEF ldi r25,hi8(-1) 1073 0992 9093 0000 sts (FromNaviCtrl+7)+1,r25 1074 0996 8093 0000 sts FromNaviCtrl+7,r24 1075 099a 1092 0000 sts NaviDataOkay,__zero_reg__ 1076 .L75: 1077 099e 2091 0000 lds r18,UBat 1078 09a2 3091 0000 lds r19,(UBat)+1 1079 09a6 8091 0000 lds r24,BattLowVoltageWarning 1080 09aa 90E0 ldi r25,lo8(0) 1081 09ac 2817 cp r18,r24 1082 09ae 3907 cpc r19,r25 1083 09b0 04F4 brge .L77 1084 09b2 8091 0000 lds r24,FCFlags 1085 09b6 8062 ori r24,lo8(32) 1086 09b8 8093 0000 sts FCFlags,r24 1087 09bc 8091 0000 lds r24,BeepMuster 1088 09c0 9091 0000 lds r25,(BeepMuster)+1 1089 09c4 8F5F subi r24,lo8(-1) 1090 09c6 9F4F sbci r25,hi8(-1) 1091 09c8 01F4 brne .L78 1092 09ca E0E7 ldi r30,lo8(6000) 1093 09cc F7E1 ldi r31,hi8(6000) 1094 09ce F093 0000 sts (beeptime)+1,r31 1095 09d2 E093 0000 sts beeptime,r30 1096 09d6 80E0 ldi r24,lo8(768) 1097 09d8 93E0 ldi r25,hi8(768) 1098 09da 9093 0000 sts (BeepMuster)+1,r25 1099 09de 8093 0000 sts BeepMuster,r24 1100 09e2 00C0 rjmp .L78 1101 .L77: 1102 09e4 8091 0000 lds r24,beeptime 1103 09e8 9091 0000 lds r25,(beeptime)+1 1104 09ec 892B or r24,r25 1105 09ee 01F4 brne .L78 1106 09f0 8091 0000 lds r24,FCFlags 1107 09f4 8F7D andi r24,lo8(-33) 1108 09f6 8093 0000 sts FCFlags,r24 1109 .L78: 1110 09fa 0E94 0000 call SPI_StartTransmitPacket 1111 09fe 94E0 ldi r25,lo8(4) 1112 0a00 9093 0000 sts SendSPI,r25 1113 0a04 8091 0000 lds r24,MotorenEin 1114 0a08 8823 tst r24 1115 0a0a 01F4 brne .L79 1116 0a0c CAEA ldi r28,lo8(1450) 1117 0a0e D5E0 ldi r29,hi8(1450) 1118 0a10 00C0 rjmp .L80 1119 .L79: 1120 0a12 8091 0000 lds r24,second.2317 1121 0a16 8F5F subi r24,lo8(-(1)) 1122 0a18 8093 0000 sts second.2317,r24 1123 0a1c 8133 cpi r24,lo8(49) 1124 0a1e 01F4 brne .L80 1125 0a20 1092 0000 sts second.2317,__zero_reg__ 1126 0a24 8091 0000 lds r24,FlugSekunden 1127 0a28 9091 0000 lds r25,(FlugSekunden)+1 1128 0a2c 0196 adiw r24,1 1129 0a2e 9093 0000 sts (FlugSekunden)+1,r25 1130 0a32 8093 0000 sts FlugSekunden,r24 1131 .L80: 1132 0a36 2196 adiw r28,1 1133 0a38 ABE0 ldi r26,hi8(2930) 1134 0a3a C237 cpi r28,lo8(2930) 1135 0a3c DA07 cpc r29,r26 1136 0a3e 01F0 breq .L81 1137 0a40 0C5E subi r16,lo8(-(20)) 1138 0a42 1F4F sbci r17,hi8(-(20)) 1139 0a44 00C0 rjmp .L68 1140 .L81: 1141 0a46 8091 0000 lds r24,FlugMinuten 1142 0a4a 9091 0000 lds r25,(FlugMinuten)+1 1143 0a4e 0196 adiw r24,1 1144 0a50 9093 0000 sts (FlugMinuten)+1,r25 1145 0a54 8093 0000 sts FlugMinuten,r24 1146 0a58 8091 0000 lds r24,FlugMinutenGesamt 1147 0a5c 9091 0000 lds r25,(FlugMinutenGesamt)+1 1148 0a60 0196 adiw r24,1 1149 0a62 9093 0000 sts (FlugMinutenGesamt)+1,r25 1150 0a66 8093 0000 sts FlugMinutenGesamt,r24 1151 0a6a 6091 0000 lds r22,FlugMinuten+1 1152 0a6e 8EE0 ldi r24,lo8(14) 1153 0a70 90E0 ldi r25,hi8(14) 1154 0a72 0E94 0000 call SetParamByte 1155 0a76 8FE0 ldi r24,lo8(15) 1156 0a78 90E0 ldi r25,hi8(15) 1157 0a7a 6091 0000 lds r22,FlugMinuten 1158 0a7e 0E94 0000 call SetParamByte 1159 0a82 6091 0000 lds r22,FlugMinutenGesamt+1 1160 0a86 8AE0 ldi r24,lo8(10) 1161 0a88 90E0 ldi r25,hi8(10) 1162 0a8a 0E94 0000 call SetParamByte 1163 0a8e 8BE0 ldi r24,lo8(11) 1164 0a90 90E0 ldi r25,hi8(11) 1165 0a92 6091 0000 lds r22,FlugMinutenGesamt 1166 0a96 0E94 0000 call SetParamByte 1167 0a9a 84E1 ldi r24,lo8(20) 1168 0a9c 90E0 ldi r25,hi8(20) 1169 0a9e 0E94 0000 call SetDelay 1170 0aa2 8C01 movw r16,r24 1171 0aa4 C0E0 ldi r28,lo8(0) 1172 0aa6 D0E0 ldi r29,hi8(0) 1173 .L68: 1174 0aa8 0E94 0000 call LED_Update 1175 0aac 0E94 0000 call Capacity_Update 1176 .L53: 1177 0ab0 8091 0000 lds r24,SendSPI 1178 0ab4 8823 tst r24 1179 0ab6 01F0 breq .+2 1180 0ab8 00C0 rjmp .L96 1181 0aba 0E94 0000 call SPI_TransmitByte 1182 0abe 00C0 rjmp .L96 1184 .global PlatinenVersion 1185 .data 1188 PlatinenVersion: 1189 0000 0A .byte 10 1190 .global SendVersionToNavi 1193 SendVersionToNavi: 1194 0001 01 .byte 1 1195 .global BattLowVoltageWarning 1198 BattLowVoltageWarning: 1199 0002 5E .byte 94 1200 .global FlugMinuten 1201 .global FlugMinuten 1202 .section .bss 1205 FlugMinuten: 1206 0000 0000 .skip 2,0 1207 .global FlugMinutenGesamt 1208 .global FlugMinutenGesamt 1211 FlugMinutenGesamt: 1212 0002 0000 .skip 2,0 1213 .global FlugSekunden 1214 .global FlugSekunden 1217 FlugSekunden: 1218 0004 0000 .skip 2,0 1219 .global FoundMotors 1220 .global FoundMotors 1223 FoundMotors: 1224 0006 00 .skip 1,0 1225 .lcomm second.2317,1 1226 .section .progmem.data,"a",@progbits 1229 __c.2315: 1230 0000 0A0D 3D3D .string "\n\r===================================\n\r" 1230 3D3D 3D3D 1230 3D3D 3D3D 1230 3D3D 3D3D 1230 3D3D 3D3D 1233 __c.2313: 1234 0028 4E6F 726D .string "Normal (ACC-Mode)" 1234 616C 2028 1234 4143 432D 1234 4D6F 6465 1234 2900 1237 __c.2311: 1238 003a 4865 6164 .string "HeadingHold" 1238 696E 6748 1238 6F6C 6400 1241 __c.2309: 1242 0046 0A0D 436F .string "\n\rControl: " 1242 6E74 726F 1242 6C3A 2000 1245 __c.2307: 1246 0052 0A0D 466C .string "\n\rFlight-time %u min Total:%u min" 1246 6967 6874 1246 2D74 696D 1246 6520 2575 1246 206D 696E 1249 __c.2305: 1250 0075 4F4B 0A0D .string "OK\n\r" 1250 00 1253 __c.2300: 1254 007a 0A0D 4361 .string "\n\rCalibrating pressure sensor.." 1254 6C69 6272 1254 6174 696E 1254 6720 7072 1254 6573 7375 1257 __c.2298: 1258 009a 0A0D 3D3D .string "\n\r===================================" 1258 3D3D 3D3D 1258 3D3D 3D3D 1258 3D3D 3D3D 1258 3D3D 3D3D 1261 __c.2293: 1262 00c0 0A0D 0A0D .string "\n\r\n\r!! MISSING BL-CTRL: %d !!" 1262 2121 204D 1262 4953 5349 1262 4E47 2042 1262 4C2D 4354 1265 __c.2288: 1266 00de 2564 00 .string "%d" 1269 __c.2277: 1270 00e1 0A0D 466F .string "\n\rFound BL-Ctrl: " 1270 756E 6420 1270 424C 2D43 1270 7472 6C3A 1270 2000 1273 __c.2246: 1274 00f3 204C 6F77 .string " Low warning level: %d.%d" 1274 2077 6172 1274 6E69 6E67 1274 206C 6576 1274 656C 3A20 1277 __c.2244: 1278 010d 2025 6420 .string " %d Cells " 1278 4365 6C6C 1278 7320 00 1281 __c.2236: 1282 0118 0A0D 4261 .string "\n\rBatt:" 1282 7474 3A00 1283 .data 1286 stick.2222: 1287 0003 01 .byte 1 1288 .comm _printf_P,2,1 1289 .global __do_copy_data 1290 .global __do_clear_bss DEFINED SYMBOLS *ABS*:00000000 main.c C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:2 *ABS*:0000003f __SREG__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:3 *ABS*:0000003e __SP_H__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:4 *ABS*:0000003d __SP_L__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:5 *ABS*:00000034 __CCP__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:6 *ABS*:00000000 __tmp_reg__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:7 *ABS*:00000001 __zero_reg__ C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:11 .text:00000000 LipoDetection C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1281 .progmem.data:00000118 __c.2236 *COM*:00000002 _printf_P C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1198 .data:00000002 BattLowVoltageWarning C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1277 .progmem.data:0000010d __c.2244 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1273 .progmem.data:000000f3 __c.2246 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:173 .text:0000014a CalMk3Mag C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1286 .data:00000003 stick.2222 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:228 .text:000001bc main C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1188 .data:00000000 PlatinenVersion C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1269 .progmem.data:000000e1 __c.2277 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1265 .progmem.data:000000de __c.2288 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1223 .bss:00000006 FoundMotors C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1261 .progmem.data:000000c0 __c.2293 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1257 .progmem.data:0000009a __c.2298 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1253 .progmem.data:0000007a __c.2300 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1249 .progmem.data:00000075 __c.2305 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1205 .bss:00000000 FlugMinuten C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1211 .bss:00000002 FlugMinutenGesamt C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1245 .progmem.data:00000052 __c.2307 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1241 .progmem.data:00000046 __c.2309 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1237 .progmem.data:0000003a __c.2311 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1233 .progmem.data:00000028 __c.2313 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1229 .progmem.data:00000000 __c.2315 .bss:00000007 second.2317 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1217 .bss:00000004 FlugSekunden C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccWNlXkL.s:1193 .data:00000001 SendVersionToNavi UNDEFINED SYMBOLS uart_putchar EE_Parameter SetDelay CheckDelay UBat Piep __udivmodqi4 PPM_in WinkelOut beeptime DebugOut __prologue_saves__ 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 __do_copy_data __do_clear_bss