Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
911 - 1
   1               		.file	"main.c"
2
   2               	__SREG__ = 0x3f
3
   3               	__SP_H__ = 0x3e
4
   4               	__SP_L__ = 0x3d
5
   5               	__tmp_reg__ = 0
6
   6               	__zero_reg__ = 1
7
   7               		.global __do_copy_data
8
   8               		.global __do_clear_bss
9
   9               		.text
10
  10               	.global	LipoDetection
11
  12               	LipoDetection:
12
  13               	/* prologue: frame size=0 */
13
  14 0000 1F93      		push r17
14
  15 0002 CF93      		push r28
15
  16 0004 DF93      		push r29
16
  17               	/* prologue end (size=3) */
17
  18 0006 182F      		mov r17,r24
18
  19 0008 8823      		tst r24
19
  20 000a 01F0      		breq .L2
20
  21 000c E091 0000 		lds r30,_printf_P
21
  22 0010 F091 0000 		lds r31,(_printf_P)+1
22
  23 0014 80E0      		ldi r24,lo8(__c.2504)
23
  24 0016 90E0      		ldi r25,hi8(__c.2504)
24
  25 0018 9F93      		push r25
25
  26 001a 8F93      		push r24
26
  27 001c 80E0      		ldi r24,lo8(gs(uart_putchar))
27
  28 001e 90E0      		ldi r25,hi8(gs(uart_putchar))
28
  29 0020 9F93      		push r25
29
  30 0022 8F93      		push r24
30
  31 0024 0995      		icall
31
  32 0026 0F90      		pop __tmp_reg__
32
  33 0028 0F90      		pop __tmp_reg__
33
  34 002a 0F90      		pop __tmp_reg__
34
  35 002c 0F90      		pop __tmp_reg__
35
  36               	.L2:
36
  37 002e 8091 0000 		lds r24,EE_Parameter+36
37
  38 0032 8233      		cpi r24,lo8(50)
38
  39 0034 00F0      		brlo .+2
39
  40 0036 00C0      		rjmp .L4
40
  41 0038 84EF      		ldi r24,lo8(500)
41
  42 003a 91E0      		ldi r25,hi8(500)
42
  43 003c 0E94 0000 		call SetDelay
43
  44 0040 EC01      		movw r28,r24
44
  45 0042 1123      		tst r17
45
  46 0044 01F0      		breq .L6
46
  47               	.L15:
47
  48 0046 CE01      		movw r24,r28
48
  49 0048 0E94 0000 		call CheckDelay
49
  50 004c 8823      		tst r24
50
  51 004e 01F0      		breq .L15
51
  52               	.L6:
52
  53 0050 C2E0      		ldi r28,lo8(2)
53
  54 0052 D0E0      		ldi r29,hi8(2)
54
  55 0054 26E5      		ldi r18,lo8(86)
55
  56 0056 30E0      		ldi r19,hi8(86)
56
  57               	.L8:
57
  58 0058 8091 0000 		lds r24,UBat
58
  59 005c 9091 0000 		lds r25,(UBat)+1
59
  60 0060 8217      		cp r24,r18
60
  61 0062 9307      		cpc r25,r19
61
  62 0064 00F0      		brlo .L9
62
  63 0066 2196      		adiw r28,1
63
  64 0068 255D      		subi r18,lo8(-(43))
64
  65 006a 3F4F      		sbci r19,hi8(-(43))
65
  66 006c C730      		cpi r28,7
66
  67 006e D105      		cpc r29,__zero_reg__
67
  68 0070 01F4      		brne .L8
68
  69               	.L9:
69
  70 0072 8091 0000 		lds r24,EE_Parameter+36
70
  71 0076 90E0      		ldi r25,lo8(0)
71
  72 0078 9C01      		movw r18,r24
72
  73 007a C29F      		mul r28,r18
73
  74 007c C001      		movw r24,r0
74
  75 007e C39F      		mul r28,r19
75
  76 0080 900D      		add r25,r0
76
  77 0082 D29F      		mul r29,r18
77
  78 0084 900D      		add r25,r0
78
  79 0086 1124      		clr r1
79
  80 0088 8093 0000 		sts BattLowVoltageWarning,r24
80
  81 008c 1123      		tst r17
81
  82 008e 01F4      		brne .+2
82
  83 0090 00C0      		rjmp .L14
83
  84 0092 68EC      		ldi r22,lo8(200)
84
  85 0094 70E0      		ldi r23,hi8(200)
85
  86 0096 8C2F      		mov r24,r28
86
  87 0098 0E94 0000 		call Piep
87
  88 009c E091 0000 		lds r30,_printf_P
88
  89 00a0 F091 0000 		lds r31,(_printf_P)+1
89
  90 00a4 DF93      		push r29
90
  91 00a6 CF93      		push r28
91
  92 00a8 80E0      		ldi r24,lo8(__c.2512)
92
  93 00aa 90E0      		ldi r25,hi8(__c.2512)
93
  94 00ac 9F93      		push r25
94
  95 00ae 8F93      		push r24
95
  96 00b0 80E0      		ldi r24,lo8(gs(uart_putchar))
96
  97 00b2 90E0      		ldi r25,hi8(gs(uart_putchar))
97
  98 00b4 9F93      		push r25
98
  99 00b6 8F93      		push r24
99
 100 00b8 0995      		icall
100
 101 00ba 8DB7      		in r24,__SP_L__
101
 102 00bc 9EB7      		in r25,__SP_H__
102
 103 00be 0696      		adiw r24,6
103
 104 00c0 8DBF      		out __SP_L__,r24
104
 105 00c2 00C0      		rjmp .L13
105
 106               	.L4:
106
 107 00c4 8093 0000 		sts BattLowVoltageWarning,r24
107
 108 00c8 1123      		tst r17
108
 109 00ca 01F0      		breq .L14
109
 110               	.L13:
110
 111 00cc E091 0000 		lds r30,_printf_P
111
 112 00d0 F091 0000 		lds r31,(_printf_P)+1
112
 113 00d4 4091 0000 		lds r20,BattLowVoltageWarning
113
 114 00d8 842F      		mov r24,r20
114
 115 00da 6AE0      		ldi r22,lo8(10)
115
 116 00dc 0E94 0000 		call __udivmodqi4
116
 117 00e0 292F      		mov r18,r25
117
 118 00e2 30E0      		ldi r19,lo8(0)
118
 119 00e4 842F      		mov r24,r20
119
 120 00e6 0E94 0000 		call __udivmodqi4
120
 121 00ea 90E0      		ldi r25,lo8(0)
121
 122 00ec 3F93      		push r19
122
 123 00ee 2F93      		push r18
123
 124 00f0 9F93      		push r25
124
 125 00f2 8F93      		push r24
125
 126 00f4 80E0      		ldi r24,lo8(__c.2514)
126
 127 00f6 90E0      		ldi r25,hi8(__c.2514)
127
 128 00f8 9F93      		push r25
128
 129 00fa 8F93      		push r24
129
 130 00fc 80E0      		ldi r24,lo8(gs(uart_putchar))
130
 131 00fe 90E0      		ldi r25,hi8(gs(uart_putchar))
131
 132 0100 9F93      		push r25
132
 133 0102 8F93      		push r24
133
 134 0104 0995      		icall
134
 135 0106 2DB7      		in r18,__SP_L__
135
 136 0108 3EB7      		in r19,__SP_H__
136
 137 010a 285F      		subi r18,lo8(-(8))
137
 138 010c 3F4F      		sbci r19,hi8(-(8))
138
 139 010e 2DBF      		out __SP_L__,r18
139
 140               	.L14:
140
 141               	/* epilogue: frame size=0 */
141
 142 0110 DF91      		pop r29
142
 143 0112 CF91      		pop r28
143
 144 0114 1F91      		pop r17
144
 145 0116 0895      		ret
145
 146               	/* epilogue end (size=4) */
146
 147               	/* function LipoDetection size 139 (132) */
147
 149               	.global	CalMk3Mag
148
 151               	CalMk3Mag:
149
 152               	/* prologue: frame size=0 */
150
 153               	/* prologue end (size=0) */
151
 154 0118 8091 0000 		lds r24,EE_Parameter+1
152
 155 011c E82F      		mov r30,r24
153
 156 011e F0E0      		ldi r31,lo8(0)
154
 157 0120 EE0F      		lsl r30
155
 158 0122 FF1F      		rol r31
156
 159 0124 E050      		subi r30,lo8(-(PPM_in))
157
 160 0126 F040      		sbci r31,hi8(-(PPM_in))
158
 161 0128 8081      		ld r24,Z
159
 162 012a 9181      		ldd r25,Z+1
160
 163 012c 8D5E      		subi r24,lo8(-19)
161
 164 012e 9F4F      		sbci r25,hi8(-19)
162
 165 0130 04F0      		brlt .L19
163
 166 0132 1092 0000 		sts stick.2490,__zero_reg__
164
 167               	.L19:
165
 168 0136 8081      		ld r24,Z
166
 169 0138 9181      		ldd r25,Z+1
167
 170 013a 8A5B      		subi r24,lo8(-70)
168
 171 013c 9F4F      		sbci r25,hi8(-70)
169
 172 013e 04F4      		brge .L21
170
 173 0140 8091 0000 		lds r24,stick.2490
171
 174 0144 8823      		tst r24
172
 175 0146 01F4      		brne .L21
173
 176 0148 81E0      		ldi r24,lo8(1)
174
 177 014a 8093 0000 		sts stick.2490,r24
175
 178 014e 8091 0000 		lds r24,WinkelOut+6
176
 179 0152 8F5F      		subi r24,lo8(-(1))
177
 180 0154 8093 0000 		sts WinkelOut+6,r24
178
 181 0158 8530      		cpi r24,lo8(5)
179
 182 015a 00F0      		brlo .L24
180
 183 015c 88EE      		ldi r24,lo8(1000)
181
 184 015e 93E0      		ldi r25,hi8(1000)
182
 185 0160 9093 0000 		sts (beeptime)+1,r25
183
 186 0164 8093 0000 		sts beeptime,r24
184
 187 0168 00C0      		rjmp .L21
185
 188               	.L24:
186
 189 016a 66E9      		ldi r22,lo8(150)
187
 190 016c 70E0      		ldi r23,hi8(150)
188
 191 016e 0E94 0000 		call Piep
189
 192               	.L21:
190
 193 0172 8091 0000 		lds r24,WinkelOut+6
191
 194 0176 90E0      		ldi r25,lo8(0)
192
 195 0178 9093 0000 		sts (DebugOut+40)+1,r25
193
 196 017c 8093 0000 		sts DebugOut+40,r24
194
 197               	/* epilogue: frame size=0 */
195
 198 0180 0895      		ret
196
 199               	/* epilogue end (size=1) */
197
 200               	/* function CalMk3Mag size 55 (54) */
198
 202               	.global	main
199
 204               	main:
200
 205               	/* prologue: frame size=0 */
201
 206 0182 A0E0      		ldi r26,lo8(0)
202
 207 0184 B0E0      		ldi r27,hi8(0)
203
 208 0186 E0E0      		ldi r30,pm_lo8(1f)
204
 209 0188 F0E0      		ldi r31,pm_hi8(1f)
205
 210 018a 0C94 0000 		jmp __prologue_saves__+4
206
 211               	1:
207
 212               	/* prologue end (size=6) */
208
 213 018e 14B8      		out 36-0x20,__zero_reg__
209
 214 0190 15B8      		out 37-0x20,__zero_reg__
210
 215 0192 189B      		sbis 35-0x20,0
211
 216 0194 00C0      		rjmp .L28
212
 217 0196 199B      		sbis 35-0x20,1
213
 218 0198 00C0      		rjmp .L30
214
 219 019a 8DE0      		ldi r24,lo8(13)
215
 220 019c 00C0      		rjmp .L164
216
 221               	.L30:
217
 222 019e 8BE0      		ldi r24,lo8(11)
218
 223 01a0 00C0      		rjmp .L164
219
 224               	.L28:
220
 225 01a2 199B      		sbis 35-0x20,1
221
 226 01a4 00C0      		rjmp .L33
222
 227 01a6 84E1      		ldi r24,lo8(20)
223
 228 01a8 00C0      		rjmp .L164
224
 229               	.L33:
225
 230 01aa 8AE0      		ldi r24,lo8(10)
226
 231               	.L164:
227
 232 01ac 8093 0000 		sts PlatinenVersion,r24
228
 233 01b0 81E8      		ldi r24,lo8(-127)
229
 234 01b2 87B9      		out 39-0x20,r24
230
 235 01b4 3E9A      		sbi 39-0x20,6
231
 236 01b6 8FEF      		ldi r24,lo8(-1)
232
 237 01b8 88B9      		out 40-0x20,r24
233
 238 01ba 8BE1      		ldi r24,lo8(27)
234
 239 01bc 84B9      		out 36-0x20,r24
235
 240 01be 81E0      		ldi r24,lo8(1)
236
 241 01c0 85B9      		out 37-0x20,r24
237
 242 01c2 8EE3      		ldi r24,lo8(62)
238
 243 01c4 8AB9      		out 42-0x20,r24
239
 244 01c6 87E4      		ldi r24,lo8(71)
240
 245 01c8 8BB9      		out 43-0x20,r24
241
 246 01ca 469A      		sbi 40-0x20,6
242
 247 01cc 84B7      		in r24,84-0x20
243
 248 01ce 877F      		andi r24,lo8(-9)
244
 249 01d0 84BF      		out 84-0x20,r24
245
 250 01d2 8091 6000 		lds r24,96
246
 251 01d6 8861      		ori r24,lo8(24)
247
 252 01d8 8093 6000 		sts 96,r24
248
 253 01dc 1092 6000 		sts 96,__zero_reg__
249
 254 01e0 84EC      		ldi r24,lo8(2500)
250
 255 01e2 99E0      		ldi r25,hi8(2500)
251
 256 01e4 9093 0000 		sts (beeptime)+1,r25
252
 257 01e8 8093 0000 		sts beeptime,r24
253
 258 01ec 1092 0000 		sts (StickGier)+1,__zero_reg__
254
 259 01f0 1092 0000 		sts StickGier,__zero_reg__
255
 260 01f4 1092 0000 		sts (PPM_in+4)+1,__zero_reg__
256
 261 01f8 1092 0000 		sts PPM_in+4,__zero_reg__
257
 262 01fc 1092 0000 		sts (StickRoll)+1,__zero_reg__
258
 263 0200 1092 0000 		sts StickRoll,__zero_reg__
259
 264 0204 1092 0000 		sts (StickNick)+1,__zero_reg__
260
 265 0208 1092 0000 		sts StickNick,__zero_reg__
261
 266 020c 2091 0000 		lds r18,PlatinenVersion
262
 267 0210 2431      		cpi r18,lo8(20)
263
 268 0212 00F0      		brlo .L35
264
 269 0214 84EC      		ldi r24,lo8(1220)
265
 270 0216 94E0      		ldi r25,hi8(1220)
266
 271 0218 A0E0      		ldi r26,hlo8(1220)
267
 272 021a B0E0      		ldi r27,hhi8(1220)
268
 273 021c 00C0      		rjmp .L165
269
 274               	.L35:
270
 275 021e 8BE0      		ldi r24,lo8(1291)
271
 276 0220 95E0      		ldi r25,hi8(1291)
272
 277 0222 A0E0      		ldi r26,hlo8(1291)
273
 278 0224 B0E0      		ldi r27,hhi8(1291)
274
 279               	.L165:
275
 280 0226 8093 0000 		sts GIER_GRAD_FAKTOR,r24
276
 281 022a 9093 0000 		sts (GIER_GRAD_FAKTOR)+1,r25
277
 282 022e A093 0000 		sts (GIER_GRAD_FAKTOR)+2,r26
278
 283 0232 B093 0000 		sts (GIER_GRAD_FAKTOR)+3,r27
279
 284 0236 2A30      		cpi r18,lo8(10)
280
 285 0238 01F0      		breq .L38
281
 286 023a 2431      		cpi r18,lo8(20)
282
 287 023c 00F0      		brlo .L40
283
 288               	.L38:
284
 289 023e 2898      		cbi 37-0x20,0
285
 290 0240 00C0      		rjmp .L41
286
 291               	.L40:
287
 292 0242 289A      		sbi 37-0x20,0
288
 293               	.L41:
289
 294 0244 0E94 0000 		call Timer_Init
290
 295 0248 0E94 0000 		call TIMER2_Init
291
 296 024c 0E94 0000 		call UART_Init
292
 297 0250 0E94 0000 		call rc_sum_init
293
 298 0254 0E94 0000 		call ADC_Init
294
 299 0258 81E0      		ldi r24,lo8(1)
295
 300 025a 0E94 0000 		call I2C_Init
296
 301 025e 0E94 0000 		call SPI_MasterInit
297
 302 0262 0E94 0000 		call Capacity_Init
298
 303 0266 0E94 0000 		call LIBFC_Init
299
 304 026a 8091 0000 		lds r24,PlatinenVersion
300
 305 026e 8C30      		cpi r24,lo8(12)
301
 306 0270 00F4      		brsh .L42
302
 307 0272 299A      		sbi 37-0x20,1
303
 308 0274 00C0      		rjmp .L44
304
 309               	.L42:
305
 310 0276 2998      		cbi 37-0x20,1
306
 311               	.L44:
307
 312               	/* #APP */
308
 313 0278 7894      		sei
309
 314               	/* #NOAPP */
310
 315 027a 0E94 0000 		call ParamSet_Init
311
 316 027e E091 0000 		lds r30,_printf_P
312
 317 0282 F091 0000 		lds r31,(_printf_P)+1
313
 318 0286 80E0      		ldi r24,lo8(__c.2542)
314
 319 0288 90E0      		ldi r25,hi8(__c.2542)
315
 320 028a 9F93      		push r25
316
 321 028c 8F93      		push r24
317
 322 028e 80E0      		ldi r24,lo8(gs(uart_putchar))
318
 323 0290 90E0      		ldi r25,hi8(gs(uart_putchar))
319
 324 0292 9F93      		push r25
320
 325 0294 8F93      		push r24
321
 326 0296 0995      		icall
322
 327 0298 8091 0000 		lds r24,BLFlags
323
 328 029c 8260      		ori r24,lo8(2)
324
 329 029e 8093 0000 		sts BLFlags,r24
325
 330 02a2 1092 0000 		sts motor_read,__zero_reg__
326
 331 02a6 0E94 0000 		call SendMotorData
327
 332 02aa 84EF      		ldi r24,lo8(500)
328
 333 02ac 91E0      		ldi r25,hi8(500)
329
 334 02ae 0E94 0000 		call SetDelay
330
 335 02b2 EC01      		movw r28,r24
331
 336 02b4 0F90      		pop __tmp_reg__
332
 337 02b6 0F90      		pop __tmp_reg__
333
 338 02b8 0F90      		pop __tmp_reg__
334
 339 02ba 0F90      		pop __tmp_reg__
335
 340               	.L45:
336
 341 02bc 8091 0000 		lds r24,BLFlags
337
 342 02c0 80FD      		sbrc r24,0
338
 343 02c2 00C0      		rjmp .L46
339
 344 02c4 CE01      		movw r24,r28
340
 345 02c6 0E94 0000 		call CheckDelay
341
 346 02ca 8823      		tst r24
342
 347 02cc 01F0      		breq .L45
343
 348               	.L46:
344
 349 02ce E091 0000 		lds r30,_printf_P
345
 350 02d2 F091 0000 		lds r31,(_printf_P)+1
346
 351 02d6 80E0      		ldi r24,lo8(__c.2547)
347
 352 02d8 90E0      		ldi r25,hi8(__c.2547)
348
 353 02da 9F93      		push r25
349
 354 02dc 8F93      		push r24
350
 355 02de 00E0      		ldi r16,lo8(gs(uart_putchar))
351
 356 02e0 10E0      		ldi r17,hi8(gs(uart_putchar))
352
 357 02e2 1F93      		push r17
353
 358 02e4 0F93      		push r16
354
 359 02e6 0995      		icall
355
 360 02e8 80EA      		ldi r24,lo8(4000)
356
 361 02ea 9FE0      		ldi r25,hi8(4000)
357
 362 02ec 0E94 0000 		call SetDelay
358
 363 02f0 EC01      		movw r28,r24
359
 364 02f2 F0E0      		ldi r31,lo8(Motor+3)
360
 365 02f4 AF2E      		mov r10,r31
361
 366 02f6 F0E0      		ldi r31,hi8(Motor+3)
362
 367 02f8 BF2E      		mov r11,r31
363
 368 02fa E0E0      		ldi r30,lo8(Mixer+13)
364
 369 02fc 6E2E      		mov r6,r30
365
 370 02fe E0E0      		ldi r30,hi8(Mixer+13)
366
 371 0300 7E2E      		mov r7,r30
367
 372 0302 6501      		movw r12,r10
368
 373 0304 4301      		movw r8,r6
369
 374 0306 71E0      		ldi r23,lo8(1)
370
 375 0308 E72E      		mov r14,r23
371
 376 030a F12C      		mov r15,__zero_reg__
372
 377 030c 0F90      		pop __tmp_reg__
373
 378 030e 0F90      		pop __tmp_reg__
374
 379 0310 0F90      		pop __tmp_reg__
375
 380 0312 0F90      		pop __tmp_reg__
376
 381 0314 60E0      		ldi r22,lo8(__c.2558)
377
 382 0316 462E      		mov r4,r22
378
 383 0318 60E0      		ldi r22,hi8(__c.2558)
379
 384 031a 562E      		mov r5,r22
380
 385               	.L48:
381
 386 031c 0E94 0000 		call SendMotorData
382
 387               	.L49:
383
 388 0320 8091 0000 		lds r24,BLFlags
384
 389 0324 80FD      		sbrc r24,0
385
 390 0326 00C0      		rjmp .L50
386
 391 0328 CE01      		movw r24,r28
387
 392 032a 0E94 0000 		call CheckDelay
388
 393 032e 8823      		tst r24
389
 394 0330 01F0      		breq .L49
390
 395               	.L50:
391
 396 0332 F401      		movw r30,r8
392
 397 0334 8081      		ld r24,Z
393
 398 0336 1816      		cp __zero_reg__,r24
394
 399 0338 04F0      		brlt .L169
395
 400 033a 00C0      		rjmp .L53
396
 401               	.L54:
397
 402 033c 0E94 0000 		call SendMotorData
398
 403               	.L55:
399
 404 0340 8091 0000 		lds r24,BLFlags
400
 405 0344 80FD      		sbrc r24,0
401
 406 0346 00C0      		rjmp .L169
402
 407 0348 CE01      		movw r24,r28
403
 408 034a 0E94 0000 		call CheckDelay
404
 409 034e 8823      		tst r24
405
 410 0350 01F0      		breq .L55
406
 411               	.L169:
407
 412 0352 CE01      		movw r24,r28
408
 413 0354 0E94 0000 		call CheckDelay
409
 414 0358 8823      		tst r24
410
 415 035a 01F4      		brne .L53
411
 416 035c F601      		movw r30,r12
412
 417 035e 8081      		ld r24,Z
413
 418 0360 87FF      		sbrs r24,7
414
 419 0362 00C0      		rjmp .L54
415
 420               	.L53:
416
 421 0364 F601      		movw r30,r12
417
 422 0366 8081      		ld r24,Z
418
 423 0368 87FF      		sbrs r24,7
419
 424 036a 00C0      		rjmp .L58
420
 425 036c E091 0000 		lds r30,_printf_P
421
 426 0370 F091 0000 		lds r31,(_printf_P)+1
422
 427 0374 FF92      		push r15
423
 428 0376 EF92      		push r14
424
 429 0378 5F92      		push r5
425
 430 037a 4F92      		push r4
426
 431 037c 1F93      		push r17
427
 432 037e 0F93      		push r16
428
 433 0380 0995      		icall
429
 434 0382 8091 0000 		lds r24,FoundMotors
430
 435 0386 8F5F      		subi r24,lo8(-(1))
431
 436 0388 8093 0000 		sts FoundMotors,r24
432
 437 038c 2DB7      		in r18,__SP_L__
433
 438 038e 3EB7      		in r19,__SP_H__
434
 439 0390 2A5F      		subi r18,lo8(-(6))
435
 440 0392 3F4F      		sbci r19,hi8(-(6))
436
 441 0394 2DBF      		out __SP_L__,r18
437
 442               	.L58:
438
 443 0396 0894      		sec
439
 444 0398 E11C      		adc r14,__zero_reg__
440
 445 039a F11C      		adc r15,__zero_reg__
441
 446 039c 88E0      		ldi r24,lo8(8)
442
 447 039e 90E0      		ldi r25,hi8(8)
443
 448 03a0 C80E      		add r12,r24
444
 449 03a2 D91E      		adc r13,r25
445
 450 03a4 E4E0      		ldi r30,lo8(4)
446
 451 03a6 F0E0      		ldi r31,hi8(4)
447
 452 03a8 8E0E      		add r8,r30
448
 453 03aa 9F1E      		adc r9,r31
449
 454 03ac FDE0      		ldi r31,lo8(13)
450
 455 03ae EF16      		cp r14,r31
451
 456 03b0 F104      		cpc r15,__zero_reg__
452
 457 03b2 01F0      		breq .+2
453
 458 03b4 00C0      		rjmp .L48
454
 459 03b6 C1E0      		ldi r28,lo8(1)
455
 460 03b8 D0E0      		ldi r29,hi8(1)
456
 461 03ba 50E0      		ldi r21,lo8(__c.2563)
457
 462 03bc E52E      		mov r14,r21
458
 463 03be 50E0      		ldi r21,hi8(__c.2563)
459
 464 03c0 F52E      		mov r15,r21
460
 465 03c2 00E0      		ldi r16,lo8(gs(uart_putchar))
461
 466 03c4 10E0      		ldi r17,hi8(gs(uart_putchar))
462
 467               	.L61:
463
 468 03c6 F501      		movw r30,r10
464
 469 03c8 8081      		ld r24,Z
465
 470 03ca 87FD      		sbrc r24,7
466
 471 03cc 00C0      		rjmp .L62
467
 472 03ce F301      		movw r30,r6
468
 473 03d0 8081      		ld r24,Z
469
 474 03d2 1816      		cp __zero_reg__,r24
470
 475 03d4 04F4      		brge .L62
471
 476 03d6 E091 0000 		lds r30,_printf_P
472
 477 03da F091 0000 		lds r31,(_printf_P)+1
473
 478 03de DF93      		push r29
474
 479 03e0 CF93      		push r28
475
 480 03e2 FF92      		push r15
476
 481 03e4 EF92      		push r14
477
 482 03e6 1F93      		push r17
478
 483 03e8 0F93      		push r16
479
 484 03ea 0995      		icall
480
 485 03ec 82E0      		ldi r24,lo8(2)
481
 486 03ee 8093 0000 		sts ServoActive,r24
482
 487 03f2 2DB7      		in r18,__SP_L__
483
 488 03f4 3EB7      		in r19,__SP_H__
484
 489 03f6 2A5F      		subi r18,lo8(-(6))
485
 490 03f8 3F4F      		sbci r19,hi8(-(6))
486
 491 03fa 2DBF      		out __SP_L__,r18
487
 492               	.L62:
488
 493 03fc F501      		movw r30,r10
489
 494 03fe 8081      		ld r24,Z
490
 495 0400 8078      		andi r24,lo8(-128)
491
 496 0402 8083      		st Z,r24
492
 497 0404 2196      		adiw r28,1
493
 498 0406 28E0      		ldi r18,lo8(8)
494
 499 0408 30E0      		ldi r19,hi8(8)
495
 500 040a A20E      		add r10,r18
496
 501 040c B31E      		adc r11,r19
497
 502 040e 84E0      		ldi r24,lo8(4)
498
 503 0410 90E0      		ldi r25,hi8(4)
499
 504 0412 680E      		add r6,r24
500
 505 0414 791E      		adc r7,r25
501
 506 0416 CD30      		cpi r28,13
502
 507 0418 D105      		cpc r29,__zero_reg__
503
 508 041a 01F4      		brne .L61
504
 509 041c E091 0000 		lds r30,_printf_P
505
 510 0420 F091 0000 		lds r31,(_printf_P)+1
506
 511 0424 80E0      		ldi r24,lo8(__c.2568)
507
 512 0426 90E0      		ldi r25,hi8(__c.2568)
508
 513 0428 9F93      		push r25
509
 514 042a 8F93      		push r24
510
 515 042c C0E0      		ldi r28,lo8(gs(uart_putchar))
511
 516 042e D0E0      		ldi r29,hi8(gs(uart_putchar))
512
 517 0430 DF93      		push r29
513
 518 0432 CF93      		push r28
514
 519 0434 0995      		icall
515
 520 0436 0F90      		pop __tmp_reg__
516
 521 0438 0F90      		pop __tmp_reg__
517
 522 043a 0F90      		pop __tmp_reg__
518
 523 043c 0F90      		pop __tmp_reg__
519
 524 043e 9091 0000 		lds r25,RequiredMotors
520
 525 0442 8091 0000 		lds r24,FoundMotors
521
 526 0446 9817      		cp r25,r24
522
 527 0448 00F4      		brsh .L66
523
 528 044a 8091 0000 		lds r24,VersionInfo+6
524
 529 044e 8061      		ori r24,lo8(16)
525
 530 0450 8093 0000 		sts VersionInfo+6,r24
526
 531               	.L66:
527
 532 0454 E091 0000 		lds r30,_printf_P
528
 533 0458 F091 0000 		lds r31,(_printf_P)+1
529
 534 045c 80E0      		ldi r24,lo8(__c.2570)
530
 535 045e 90E0      		ldi r25,hi8(__c.2570)
531
 536 0460 9F93      		push r25
532
 537 0462 8F93      		push r24
533
 538 0464 DF93      		push r29
534
 539 0466 CF93      		push r28
535
 540 0468 0995      		icall
536
 541 046a 88EE      		ldi r24,lo8(1000)
537
 542 046c 93E0      		ldi r25,hi8(1000)
538
 543 046e 0E94 0000 		call SetDelay
539
 544 0472 EC01      		movw r28,r24
540
 545 0474 0F90      		pop __tmp_reg__
541
 546 0476 0F90      		pop __tmp_reg__
542
 547 0478 0F90      		pop __tmp_reg__
543
 548 047a 0F90      		pop __tmp_reg__
544
 549               	.L68:
545
 550 047c CE01      		movw r24,r28
546
 551 047e 0E94 0000 		call CheckDelay
547
 552 0482 8823      		tst r24
548
 553 0484 01F0      		breq .L68
549
 554 0486 E091 0000 		lds r30,_printf_P
550
 555 048a F091 0000 		lds r31,(_printf_P)+1
551
 556 048e 80E0      		ldi r24,lo8(__c.2575)
552
 557 0490 90E0      		ldi r25,hi8(__c.2575)
553
 558 0492 9F93      		push r25
554
 559 0494 8F93      		push r24
555
 560 0496 80E0      		ldi r24,lo8(gs(uart_putchar))
556
 561 0498 90E0      		ldi r25,hi8(gs(uart_putchar))
557
 562 049a 9F93      		push r25
558
 563 049c 8F93      		push r24
559
 564 049e 0995      		icall
560
 565 04a0 80E0      		ldi r24,lo8(0)
561
 566 04a2 0E94 0000 		call SetNeutral
562
 567 04a6 8091 0000 		lds r24,PlatinenVersion
563
 568 04aa 0F90      		pop __tmp_reg__
564
 569 04ac 0F90      		pop __tmp_reg__
565
 570 04ae 0F90      		pop __tmp_reg__
566
 571 04b0 0F90      		pop __tmp_reg__
567
 572 04b2 8A30      		cpi r24,lo8(10)
568
 573 04b4 01F0      		breq .L70
569
 574 04b6 8431      		cpi r24,lo8(20)
570
 575 04b8 00F0      		brlo .L72
571
 576               	.L70:
572
 577 04ba 2898      		cbi 37-0x20,0
573
 578 04bc 00C0      		rjmp .L73
574
 579               	.L72:
575
 580 04be 289A      		sbi 37-0x20,0
576
 581               	.L73:
577
 582 04c0 80ED      		ldi r24,lo8(2000)
578
 583 04c2 97E0      		ldi r25,hi8(2000)
579
 584 04c4 9093 0000 		sts (beeptime)+1,r25
580
 585 04c8 8093 0000 		sts beeptime,r24
581
 586 04cc 85E5      		ldi r24,lo8(85)
582
 587 04ce 8093 0000 		sts ExternControl,r24
583
 588 04d2 8EE0      		ldi r24,lo8(14)
584
 589 04d4 90E0      		ldi r25,hi8(14)
585
 590 04d6 0E94 0000 		call GetParamByte
586
 591 04da 082F      		mov r16,r24
587
 592 04dc 8FE0      		ldi r24,lo8(15)
588
 593 04de 90E0      		ldi r25,hi8(15)
589
 594 04e0 0E94 0000 		call GetParamByte
590
 595 04e4 10E0      		ldi r17,lo8(0)
591
 596 04e6 102F      		mov r17,r16
592
 597 04e8 0027      		clr r16
593
 598 04ea 080F      		add r16,r24
594
 599 04ec 111D      		adc r17,__zero_reg__
595
 600 04ee 1093 0000 		sts (FlugMinuten)+1,r17
596
 601 04f2 0093 0000 		sts FlugMinuten,r16
597
 602 04f6 8AE0      		ldi r24,lo8(10)
598
 603 04f8 90E0      		ldi r25,hi8(10)
599
 604 04fa 0E94 0000 		call GetParamByte
600
 605 04fe 082F      		mov r16,r24
601
 606 0500 8BE0      		ldi r24,lo8(11)
602
 607 0502 90E0      		ldi r25,hi8(11)
603
 608 0504 0E94 0000 		call GetParamByte
604
 609 0508 10E0      		ldi r17,lo8(0)
605
 610 050a 102F      		mov r17,r16
606
 611 050c 0027      		clr r16
607
 612 050e 080F      		add r16,r24
608
 613 0510 111D      		adc r17,__zero_reg__
609
 614 0512 1093 0000 		sts (FlugMinutenGesamt)+1,r17
610
 615 0516 0093 0000 		sts FlugMinutenGesamt,r16
611
 616 051a 0F5F      		subi r16,lo8(-1)
612
 617 051c 1F4F      		sbci r17,hi8(-1)
613
 618 051e 01F0      		breq .L74
614
 619 0520 8091 0000 		lds r24,FlugMinuten
615
 620 0524 9091 0000 		lds r25,(FlugMinuten)+1
616
 621 0528 8F5F      		subi r24,lo8(-1)
617
 622 052a 9F4F      		sbci r25,hi8(-1)
618
 623 052c 01F4      		brne .L76
619
 624               	.L74:
620
 625 052e 1092 0000 		sts (FlugMinuten)+1,__zero_reg__
621
 626 0532 1092 0000 		sts FlugMinuten,__zero_reg__
622
 627 0536 1092 0000 		sts (FlugMinutenGesamt)+1,__zero_reg__
623
 628 053a 1092 0000 		sts FlugMinutenGesamt,__zero_reg__
624
 629               	.L76:
625
 630 053e E091 0000 		lds r30,_printf_P
626
 631 0542 F091 0000 		lds r31,(_printf_P)+1
627
 632 0546 8091 0000 		lds r24,FlugMinutenGesamt
628
 633 054a 9091 0000 		lds r25,(FlugMinutenGesamt)+1
629
 634 054e 2091 0000 		lds r18,FlugMinuten
630
 635 0552 3091 0000 		lds r19,(FlugMinuten)+1
631
 636 0556 9F93      		push r25
632
 637 0558 8F93      		push r24
633
 638 055a 3F93      		push r19
634
 639 055c 2F93      		push r18
635
 640 055e 80E0      		ldi r24,lo8(__c.2577)
636
 641 0560 90E0      		ldi r25,hi8(__c.2577)
637
 642 0562 9F93      		push r25
638
 643 0564 8F93      		push r24
639
 644 0566 C0E0      		ldi r28,lo8(gs(uart_putchar))
640
 645 0568 D0E0      		ldi r29,hi8(gs(uart_putchar))
641
 646 056a DF93      		push r29
642
 647 056c CF93      		push r28
643
 648 056e 0995      		icall
644
 649 0570 E091 0000 		lds r30,_printf_P
645
 650 0574 F091 0000 		lds r31,(_printf_P)+1
646
 651 0578 80E0      		ldi r24,lo8(__c.2579)
647
 652 057a 90E0      		ldi r25,hi8(__c.2579)
648
 653 057c 9F93      		push r25
649
 654 057e 8F93      		push r24
650
 655 0580 DF93      		push r29
651
 656 0582 CF93      		push r28
652
 657 0584 0995      		icall
653
 658 0586 8091 0000 		lds r24,EE_Parameter+13
654
 659 058a 2DB7      		in r18,__SP_L__
655
 660 058c 3EB7      		in r19,__SP_H__
656
 661 058e 245F      		subi r18,lo8(-(12))
657
 662 0590 3F4F      		sbci r19,hi8(-(12))
658
 663 0592 2DBF      		out __SP_L__,r18
659
 664 0594 E091 0000 		lds r30,_printf_P
660
 665 0598 F091 0000 		lds r31,(_printf_P)+1
661
 666 059c 82FF      		sbrs r24,2
662
 667 059e 00C0      		rjmp .L77
663
 668 05a0 80E0      		ldi r24,lo8(__c.2581)
664
 669 05a2 90E0      		ldi r25,hi8(__c.2581)
665
 670 05a4 00C0      		rjmp .L166
666
 671               	.L77:
667
 672 05a6 80E0      		ldi r24,lo8(__c.2583)
668
 673 05a8 90E0      		ldi r25,hi8(__c.2583)
669
 674               	.L166:
670
 675 05aa 9F93      		push r25
671
 676 05ac 8F93      		push r24
672
 677 05ae DF93      		push r29
673
 678 05b0 CF93      		push r28
674
 679 05b2 0995      		icall
675
 680 05b4 0F90      		pop __tmp_reg__
676
 681 05b6 0F90      		pop __tmp_reg__
677
 682 05b8 0F90      		pop __tmp_reg__
678
 683 05ba 0F90      		pop __tmp_reg__
679
 684 05bc 0E94 0000 		call LcdClear
680
 685 05c0 88E8      		ldi r24,lo8(5000)
681
 686 05c2 93E1      		ldi r25,hi8(5000)
682
 687 05c4 9093 0000 		sts (I2CTimeout)+1,r25
683
 688 05c8 8093 0000 		sts I2CTimeout,r24
684
 689 05cc 81E0      		ldi r24,lo8(1)
685
 690 05ce 8093 0000 		sts WinkelOut+7,r24
686
 691 05d2 0E94 0000 		call LipoDetection
687
 692 05d6 8091 0000 		lds r24,EE_Parameter+39
688
 693 05da 0E94 0000 		call LIBFC_ReceiverInit
689
 694 05de E091 0000 		lds r30,_printf_P
690
 695 05e2 F091 0000 		lds r31,(_printf_P)+1
691
 696 05e6 80E0      		ldi r24,lo8(__c.2585)
692
 697 05e8 90E0      		ldi r25,hi8(__c.2585)
693
 698 05ea 9F93      		push r25
694
 699 05ec 8F93      		push r24
695
 700 05ee 80E0      		ldi r24,lo8(gs(uart_putchar))
696
 701 05f0 90E0      		ldi r25,hi8(gs(uart_putchar))
697
 702 05f2 9F93      		push r25
698
 703 05f4 8F93      		push r24
699
 704 05f6 0995      		icall
700
 705 05f8 80ED      		ldi r24,lo8(2000)
701
 706 05fa 97E0      		ldi r25,hi8(2000)
702
 707 05fc 0E94 0000 		call SetDelay
703
 708 0600 EC01      		movw r28,r24
704
 709 0602 8AEF      		ldi r24,lo8(250)
705
 710 0604 90E0      		ldi r25,hi8(250)
706
 711 0606 0E94 0000 		call SetDelay
707
 712 060a 7C01      		movw r14,r24
708
 713 060c 83E0      		ldi r24,lo8(3)
709
 714 060e 8093 0000 		sts DebugOut,r24
710
 715 0612 00E0      		ldi r16,lo8(0)
711
 716 0614 10E0      		ldi r17,hi8(0)
712
 717 0616 0F90      		pop __tmp_reg__
713
 718 0618 0F90      		pop __tmp_reg__
714
 719 061a 0F90      		pop __tmp_reg__
715
 720 061c 0F90      		pop __tmp_reg__
716
 721               	.L170:
717
 722 061e 8091 0000 		lds r24,JetiUpdateModeActive
718
 723 0622 8111      		cpse r24,__zero_reg__
719
 724               	.L161:
720
 725 0624 00C0      		rjmp .L161
721
 726               	.L81:
722
 727 0626 C701      		movw r24,r14
723
 728 0628 0E94 0000 		call CheckDelay
724
 729 062c 8823      		tst r24
725
 730 062e 01F0      		breq .L83
726
 731 0630 84E6      		ldi r24,lo8(100)
727
 732 0632 90E0      		ldi r25,hi8(100)
728
 733 0634 0E94 0000 		call SetDelay
729
 734 0638 7C01      		movw r14,r24
730
 735 063a 0E94 0000 		call LIBFC_Polling
731
 736               	.L83:
732
 737 063e 8091 0000 		lds r24,UpdateMotor
733
 738 0642 8823      		tst r24
734
 739 0644 01F4      		brne .+2
735
 740 0646 00C0      		rjmp .L85
736
 741 0648 8091 0000 		lds r24,AdReady
737
 742 064c 8823      		tst r24
738
 743 064e 01F4      		brne .+2
739
 744 0650 00C0      		rjmp .L85
740
 745 0652 1092 0000 		sts UpdateMotor,__zero_reg__
741
 746 0656 8091 0000 		lds r24,WinkelOut+6
742
 747 065a 8823      		tst r24
743
 748 065c 01F0      		breq .L88
744
 749 065e 0E94 0000 		call CalMk3Mag
745
 750 0662 00C0      		rjmp .L90
746
 751               	.L88:
747
 752 0664 0E94 0000 		call MotorRegler
748
 753               	.L90:
749
 754 0668 0E94 0000 		call SendMotorData
750
 755 066c 2091 0000 		lds r18,PlatinenVersion
751
 756 0670 2A30      		cpi r18,lo8(10)
752
 757 0672 01F0      		breq .L91
753
 758 0674 2431      		cpi r18,lo8(20)
754
 759 0676 00F0      		brlo .L93
755
 760               	.L91:
756
 761 0678 2898      		cbi 37-0x20,0
757
 762 067a 00C0      		rjmp .L94
758
 763               	.L93:
759
 764 067c 289A      		sbi 37-0x20,0
760
 765               	.L94:
761
 766 067e 8091 0000 		lds r24,SenderOkay
762
 767 0682 9091 0000 		lds r25,VersionInfo+6
763
 768 0686 8823      		tst r24
764
 769 0688 01F0      		breq .L95
765
 770 068a 8091 0000 		lds r24,SenderOkay
766
 771 068e 8150      		subi r24,lo8(-(-1))
767
 772 0690 8093 0000 		sts SenderOkay,r24
768
 773 0694 977F      		andi r25,lo8(-9)
769
 774 0696 00C0      		rjmp .L167
770
 775               	.L95:
771
 776 0698 8091 6F00 		lds r24,111
772
 777 069c 8062      		ori r24,lo8(32)
773
 778 069e 8093 6F00 		sts 111,r24
774
 779 06a2 1092 0000 		sts (PPM_in)+1,__zero_reg__
775
 780 06a6 1092 0000 		sts PPM_in,__zero_reg__
776
 781 06aa 9860      		ori r25,lo8(8)
777
 782               	.L167:
778
 783 06ac 9093 0000 		sts VersionInfo+6,r25
779
 784 06b0 8091 0000 		lds r24,I2CTimeout
780
 785 06b4 9091 0000 		lds r25,(I2CTimeout)+1
781
 786 06b8 0197      		sbiw r24,1
782
 787 06ba 9093 0000 		sts (I2CTimeout)+1,r25
783
 788 06be 8093 0000 		sts I2CTimeout,r24
784
 789 06c2 8091 0000 		lds r24,I2CTimeout
785
 790 06c6 9091 0000 		lds r25,(I2CTimeout)+1
786
 791 06ca 892B      		or r24,r25
787
 792 06cc 01F0      		breq .L98
788
 793 06ce 8091 0000 		lds r24,MissingMotor
789
 794 06d2 8823      		tst r24
790
 795 06d4 01F0      		breq .L100
791
 796               	.L98:
792
 797 06d6 8091 0000 		lds r24,I2CTimeout
793
 798 06da 9091 0000 		lds r25,(I2CTimeout)+1
794
 799 06de 892B      		or r24,r25
795
 800 06e0 01F4      		brne .L101
796
 801 06e2 0E94 0000 		call I2C_Reset
797
 802 06e6 85E0      		ldi r24,lo8(5)
798
 803 06e8 90E0      		ldi r25,hi8(5)
799
 804 06ea 9093 0000 		sts (I2CTimeout)+1,r25
800
 805 06ee 8093 0000 		sts I2CTimeout,r24
801
 806 06f2 8091 0000 		lds r24,DebugOut+58
802
 807 06f6 9091 0000 		lds r25,(DebugOut+58)+1
803
 808 06fa 0196      		adiw r24,1
804
 809 06fc 9093 0000 		sts (DebugOut+58)+1,r25
805
 810 0700 8093 0000 		sts DebugOut+58,r24
806
 811 0704 8091 0000 		lds r24,VersionInfo+6
807
 812 0708 8160      		ori r24,lo8(1)
808
 813 070a 8093 0000 		sts VersionInfo+6,r24
809
 814 070e 8091 0000 		lds r24,DebugOut+1
810
 815 0712 8260      		ori r24,lo8(2)
811
 816 0714 8093 0000 		sts DebugOut+1,r24
812
 817               	.L101:
813
 818 0718 8091 0000 		lds r24,BeepMuster
814
 819 071c 9091 0000 		lds r25,(BeepMuster)+1
815
 820 0720 8F5F      		subi r24,lo8(-1)
816
 821 0722 9F4F      		sbci r25,hi8(-1)
817
 822 0724 01F4      		brne .L103
818
 823 0726 8091 0000 		lds r24,MotorenEin
819
 824 072a 8823      		tst r24
820
 825 072c 01F0      		breq .L103
821
 826 072e 80E1      		ldi r24,lo8(10000)
822
 827 0730 97E2      		ldi r25,hi8(10000)
823
 828 0732 9093 0000 		sts (beeptime)+1,r25
824
 829 0736 8093 0000 		sts beeptime,r24
825
 830 073a 80E8      		ldi r24,lo8(128)
826
 831 073c 90E0      		ldi r25,hi8(128)
827
 832 073e 9093 0000 		sts (BeepMuster)+1,r25
828
 833 0742 8093 0000 		sts BeepMuster,r24
829
 834 0746 00C0      		rjmp .L103
830
 835               	.L100:
831
 836 0748 2A30      		cpi r18,lo8(10)
832
 837 074a 01F0      		breq .L106
833
 838 074c 2431      		cpi r18,lo8(20)
834
 839 074e 00F0      		brlo .L108
835
 840               	.L106:
836
 841 0750 2898      		cbi 37-0x20,0
837
 842 0752 00C0      		rjmp .L109
838
 843               	.L108:
839
 844 0754 289A      		sbi 37-0x20,0
840
 845               	.L109:
841
 846 0756 8091 0000 		lds r24,beeptime
842
 847 075a 9091 0000 		lds r25,(beeptime)+1
843
 848 075e 892B      		or r24,r25
844
 849 0760 01F4      		brne .L103
845
 850 0762 8091 0000 		lds r24,VersionInfo+6
846
 851 0766 8E7F      		andi r24,lo8(-2)
847
 852 0768 8093 0000 		sts VersionInfo+6,r24
848
 853               	.L103:
849
 854 076c 8091 0000 		lds r24,UpdateMotor
850
 855 0770 8823      		tst r24
851
 856 0772 01F0      		breq .+2
852
 857 0774 00C0      		rjmp .L85
853
 858 0776 8091 0000 		lds r24,CalculateServoSignals
854
 859 077a 8823      		tst r24
855
 860 077c 01F0      		breq .L112
856
 861 077e 0E94 0000 		call CalculateServo
857
 862               	.L112:
858
 863 0782 0E94 0000 		call DatenUebertragung
859
 864 0786 0E94 0000 		call BearbeiteRxDaten
860
 865 078a CE01      		movw r24,r28
861
 866 078c 0E94 0000 		call CheckDelay
862
 867 0790 8823      		tst r24
863
 868 0792 01F4      		brne .+2
864
 869 0794 00C0      		rjmp .L114
865
 870 0796 8091 0000 		lds r24,MissingMotor
866
 871 079a 9091 0000 		lds r25,VersionInfo+6
867
 872 079e 8823      		tst r24
868
 873 07a0 01F0      		breq .L116
869
 874 07a2 9260      		ori r25,lo8(2)
870
 875 07a4 9093 0000 		sts VersionInfo+6,r25
871
 876 07a8 8091 0000 		lds r24,DebugOut+1
872
 877 07ac 8260      		ori r24,lo8(2)
873
 878 07ae 00C0      		rjmp .L168
874
 879               	.L116:
875
 880 07b0 9D7F      		andi r25,lo8(-3)
876
 881 07b2 9093 0000 		sts VersionInfo+6,r25
877
 882 07b6 8091 0000 		lds r24,I2CTimeout
878
 883 07ba 9091 0000 		lds r25,(I2CTimeout)+1
879
 884 07be 0797      		sbiw r24,7
880
 885 07c0 00F0      		brlo .L118
881
 886 07c2 8091 0000 		lds r24,DebugOut+1
882
 887 07c6 8D7F      		andi r24,lo8(-3)
883
 888               	.L168:
884
 889 07c8 8093 0000 		sts DebugOut+1,r24
885
 890               	.L118:
886
 891 07cc 8091 0000 		lds r24,I2CTimeout
887
 892 07d0 9091 0000 		lds r25,(I2CTimeout)+1
888
 893 07d4 0797      		sbiw r24,7
889
 894 07d6 00F0      		brlo .L120
890
 895 07d8 8091 0000 		lds r24,VersionInfo+6
891
 896 07dc 8E7F      		andi r24,lo8(-2)
892
 897 07de 8093 0000 		sts VersionInfo+6,r24
893
 898               	.L120:
894
 899 07e2 8091 0000 		lds r24,PcZugriff
895
 900 07e6 8823      		tst r24
896
 901 07e8 01F0      		breq .L122
897
 902 07ea 8150      		subi r24,lo8(-(-1))
898
 903 07ec 8093 0000 		sts PcZugriff,r24
899
 904 07f0 00C0      		rjmp .L124
900
 905               	.L122:
901
 906 07f2 1092 0000 		sts ExternControl+10,__zero_reg__
902
 907 07f6 1092 0000 		sts (ExternStickNick)+1,__zero_reg__
903
 908 07fa 1092 0000 		sts ExternStickNick,__zero_reg__
904
 909 07fe 1092 0000 		sts (ExternStickRoll)+1,__zero_reg__
905
 910 0802 1092 0000 		sts ExternStickRoll,__zero_reg__
906
 911 0806 1092 0000 		sts (ExternStickGier)+1,__zero_reg__
907
 912 080a 1092 0000 		sts ExternStickGier,__zero_reg__
908
 913 080e 8091 0000 		lds r24,BeepMuster
909
 914 0812 9091 0000 		lds r25,(BeepMuster)+1
910
 915 0816 8F5F      		subi r24,lo8(-1)
911
 916 0818 9F4F      		sbci r25,hi8(-1)
912
 917 081a 01F4      		brne .L124
913
 918 081c 8091 0000 		lds r24,SenderOkay
914
 919 0820 8823      		tst r24
915
 920 0822 01F4      		brne .L124
916
 921 0824 88E9      		ldi r24,lo8(15000)
917
 922 0826 9AE3      		ldi r25,hi8(15000)
918
 923 0828 9093 0000 		sts (beeptime)+1,r25
919
 924 082c 8093 0000 		sts beeptime,r24
920
 925 0830 80E0      		ldi r24,lo8(3072)
921
 926 0832 9CE0      		ldi r25,hi8(3072)
922
 927 0834 9093 0000 		sts (BeepMuster)+1,r25
923
 928 0838 8093 0000 		sts BeepMuster,r24
924
 929               	.L124:
925
 930 083c 8091 0000 		lds r24,NaviDataOkay
926
 931 0840 893C      		cpi r24,lo8(-55)
927
 932 0842 00F0      		brlo .L127
928
 933 0844 8150      		subi r24,lo8(-(-1))
929
 934 0846 8093 0000 		sts NaviDataOkay,r24
930
 935 084a 8091 0000 		lds r24,VersionInfo+6
931
 936 084e 8B7F      		andi r24,lo8(-5)
932
 937 0850 8093 0000 		sts VersionInfo+6,r24
933
 938 0854 00C0      		rjmp .L129
934
 939               	.L127:
935
 940 0856 8091 0000 		lds r24,NC_Version+3
936
 941 085a 8823      		tst r24
937
 942 085c 01F0      		breq .L130
938
 943 085e 8091 0000 		lds r24,VersionInfo+6
939
 944 0862 8460      		ori r24,lo8(4)
940
 945 0864 8093 0000 		sts VersionInfo+6,r24
941
 946 0868 8091 0000 		lds r24,BeepMuster
942
 947 086c 9091 0000 		lds r25,(BeepMuster)+1
943
 948 0870 8F5F      		subi r24,lo8(-1)
944
 949 0872 9F4F      		sbci r25,hi8(-1)
945
 950 0874 01F4      		brne .L130
946
 951 0876 8091 0000 		lds r24,MotorenEin
947
 952 087a 8823      		tst r24
948
 953 087c 01F0      		breq .L130
949
 954 087e 88E9      		ldi r24,lo8(15000)
950
 955 0880 9AE3      		ldi r25,hi8(15000)
951
 956 0882 9093 0000 		sts (beeptime)+1,r25
952
 957 0886 8093 0000 		sts beeptime,r24
953
 958 088a 80E0      		ldi r24,lo8(-22528)
954
 959 088c 98EA      		ldi r25,hi8(-22528)
955
 960 088e 9093 0000 		sts (BeepMuster)+1,r25
956
 961 0892 8093 0000 		sts BeepMuster,r24
957
 962               	.L130:
958
 963 0896 1092 0000 		sts (GPS_Nick)+1,__zero_reg__
959
 964 089a 1092 0000 		sts GPS_Nick,__zero_reg__
960
 965 089e 1092 0000 		sts (GPS_Roll)+1,__zero_reg__
961
 966 08a2 1092 0000 		sts GPS_Roll,__zero_reg__
962
 967 08a6 8FEF      		ldi r24,lo8(-1)
963
 968 08a8 9FEF      		ldi r25,hi8(-1)
964
 969 08aa 9093 0000 		sts (FromNaviCtrl+7)+1,r25
965
 970 08ae 8093 0000 		sts FromNaviCtrl+7,r24
966
 971 08b2 1092 0000 		sts NaviDataOkay,__zero_reg__
967
 972               	.L129:
968
 973 08b6 2091 0000 		lds r18,UBat
969
 974 08ba 3091 0000 		lds r19,(UBat)+1
970
 975 08be 8091 0000 		lds r24,BattLowVoltageWarning
971
 976 08c2 90E0      		ldi r25,lo8(0)
972
 977 08c4 2817      		cp r18,r24
973
 978 08c6 3907      		cpc r19,r25
974
 979 08c8 04F4      		brge .L134
975
 980 08ca 8091 0000 		lds r24,FC_StatusFlags
976
 981 08ce 8062      		ori r24,lo8(32)
977
 982 08d0 8093 0000 		sts FC_StatusFlags,r24
978
 983 08d4 8091 0000 		lds r24,BeepMuster
979
 984 08d8 9091 0000 		lds r25,(BeepMuster)+1
980
 985 08dc 8F5F      		subi r24,lo8(-1)
981
 986 08de 9F4F      		sbci r25,hi8(-1)
982
 987 08e0 01F4      		brne .L136
983
 988 08e2 80E7      		ldi r24,lo8(6000)
984
 989 08e4 97E1      		ldi r25,hi8(6000)
985
 990 08e6 9093 0000 		sts (beeptime)+1,r25
986
 991 08ea 8093 0000 		sts beeptime,r24
987
 992 08ee 80E0      		ldi r24,lo8(768)
988
 993 08f0 93E0      		ldi r25,hi8(768)
989
 994 08f2 9093 0000 		sts (BeepMuster)+1,r25
990
 995 08f6 8093 0000 		sts BeepMuster,r24
991
 996 08fa 00C0      		rjmp .L136
992
 997               	.L134:
993
 998 08fc 8091 0000 		lds r24,beeptime
994
 999 0900 9091 0000 		lds r25,(beeptime)+1
995
 1000 0904 892B      		or r24,r25
996
 1001 0906 01F4      		brne .L136
997
 1002 0908 8091 0000 		lds r24,FC_StatusFlags
998
 1003 090c 8F7D      		andi r24,lo8(-33)
999
 1004 090e 8093 0000 		sts FC_StatusFlags,r24
1000
 1005               	.L136:
1001
 1006 0912 0E94 0000 		call SPI_StartTransmitPacket
1002
 1007 0916 84E0      		ldi r24,lo8(4)
1003
 1008 0918 8093 0000 		sts SendSPI,r24
1004
 1009 091c 8091 0000 		lds r24,MotorenEin
1005
 1010 0920 8823      		tst r24
1006
 1011 0922 01F4      		brne .L139
1007
 1012 0924 0AEA      		ldi r16,lo8(1450)
1008
 1013 0926 15E0      		ldi r17,hi8(1450)
1009
 1014 0928 00C0      		rjmp .L141
1010
 1015               	.L139:
1011
 1016 092a 8091 0000 		lds r24,second.2588
1012
 1017 092e 8F5F      		subi r24,lo8(-(1))
1013
 1018 0930 8093 0000 		sts second.2588,r24
1014
 1019 0934 8133      		cpi r24,lo8(49)
1015
 1020 0936 01F4      		brne .L141
1016
 1021 0938 1092 0000 		sts second.2588,__zero_reg__
1017
 1022 093c 8091 0000 		lds r24,FlugSekunden
1018
 1023 0940 9091 0000 		lds r25,(FlugSekunden)+1
1019
 1024 0944 0196      		adiw r24,1
1020
 1025 0946 9093 0000 		sts (FlugSekunden)+1,r25
1021
 1026 094a 8093 0000 		sts FlugSekunden,r24
1022
 1027               	.L141:
1023
 1028 094e 0F5F      		subi r16,lo8(-(1))
1024
 1029 0950 1F4F      		sbci r17,hi8(-(1))
1025
 1030 0952 3BE0      		ldi r19,hi8(2930)
1026
 1031 0954 0237      		cpi r16,lo8(2930)
1027
 1032 0956 1307      		cpc r17,r19
1028
 1033 0958 01F0      		breq .L143
1029
 1034 095a 6496      		adiw r28,20
1030
 1035 095c 00C0      		rjmp .L114
1031
 1036               	.L143:
1032
 1037 095e 6091 0000 		lds r22,FlugMinuten
1033
 1038 0962 7091 0000 		lds r23,(FlugMinuten)+1
1034
 1039 0966 6F5F      		subi r22,lo8(-(1))
1035
 1040 0968 7F4F      		sbci r23,hi8(-(1))
1036
 1041 096a 7093 0000 		sts (FlugMinuten)+1,r23
1037
 1042 096e 6093 0000 		sts FlugMinuten,r22
1038
 1043 0972 8091 0000 		lds r24,FlugMinutenGesamt
1039
 1044 0976 9091 0000 		lds r25,(FlugMinutenGesamt)+1
1040
 1045 097a 0196      		adiw r24,1
1041
 1046 097c 9093 0000 		sts (FlugMinutenGesamt)+1,r25
1042
 1047 0980 8093 0000 		sts FlugMinutenGesamt,r24
1043
 1048 0984 672F      		mov r22,r23
1044
 1049 0986 7727      		clr r23
1045
 1050 0988 8EE0      		ldi r24,lo8(14)
1046
 1051 098a 90E0      		ldi r25,hi8(14)
1047
 1052 098c 0E94 0000 		call SetParamByte
1048
 1053 0990 6091 0000 		lds r22,FlugMinuten
1049
 1054 0994 8FE0      		ldi r24,lo8(15)
1050
 1055 0996 90E0      		ldi r25,hi8(15)
1051
 1056 0998 0E94 0000 		call SetParamByte
1052
 1057 099c 6091 0000 		lds r22,FlugMinutenGesamt
1053
 1058 09a0 7091 0000 		lds r23,(FlugMinutenGesamt)+1
1054
 1059 09a4 672F      		mov r22,r23
1055
 1060 09a6 7727      		clr r23
1056
 1061 09a8 8AE0      		ldi r24,lo8(10)
1057
 1062 09aa 90E0      		ldi r25,hi8(10)
1058
 1063 09ac 0E94 0000 		call SetParamByte
1059
 1064 09b0 6091 0000 		lds r22,FlugMinutenGesamt
1060
 1065 09b4 8BE0      		ldi r24,lo8(11)
1061
 1066 09b6 90E0      		ldi r25,hi8(11)
1062
 1067 09b8 0E94 0000 		call SetParamByte
1063
 1068 09bc 84E1      		ldi r24,lo8(20)
1064
 1069 09be 90E0      		ldi r25,hi8(20)
1065
 1070 09c0 0E94 0000 		call SetDelay
1066
 1071 09c4 EC01      		movw r28,r24
1067
 1072 09c6 00E0      		ldi r16,lo8(0)
1068
 1073 09c8 10E0      		ldi r17,hi8(0)
1069
 1074               	.L114:
1070
 1075 09ca 0E94 0000 		call LED_Update
1071
 1076 09ce 0E94 0000 		call Capacity_Update
1072
 1077               	.L85:
1073
 1078 09d2 8091 0000 		lds r24,SendSPI
1074
 1079 09d6 8823      		tst r24
1075
 1080 09d8 01F0      		breq .+2
1076
 1081 09da 00C0      		rjmp .L170
1077
 1082 09dc 0E94 0000 		call SPI_TransmitByte
1078
 1083 09e0 00C0      		rjmp .L170
1079
 1084               	/* epilogue: frame size=0 */
1080
 1085               	/* epilogue: noreturn */
1081
 1086               	/* epilogue end (size=0) */
1082
 1087               	/* function main size 1082 (1076) */
1083
 1089               	.global	PlatinenVersion
1084
 1090               		.data
1085
 1093               	PlatinenVersion:
1086
 1094 0000 0A        		.byte	10
1087
 1095               	.global	SendVersionToNavi
1088
 1098               	SendVersionToNavi:
1089
 1099 0001 01        		.byte	1
1090
 1100               	.global	BattLowVoltageWarning
1091
 1103               	BattLowVoltageWarning:
1092
 1104 0002 5E        		.byte	94
1093
 1105               	.global	FlugMinuten
1094
 1106               	.global	FlugMinuten
1095
 1107               		.section .bss
1096
 1110               	FlugMinuten:
1097
 1111 0000 0000      		.skip 2,0
1098
 1112               	.global	FlugMinutenGesamt
1099
 1113               	.global	FlugMinutenGesamt
1100
 1116               	FlugMinutenGesamt:
1101
 1117 0002 0000      		.skip 2,0
1102
 1118               	.global	FlugSekunden
1103
 1119               	.global	FlugSekunden
1104
 1122               	FlugSekunden:
1105
 1123 0004 0000      		.skip 2,0
1106
 1124               	.global	FoundMotors
1107
 1125               	.global	FoundMotors
1108
 1128               	FoundMotors:
1109
 1129 0006 00        		.skip 1,0
1110
 1130               		.lcomm second.2588,1
1111
 1131               		.section	.progmem.data,"a",@progbits
1112
 1134               	__c.2585:
1113
 1135 0000 0A0D 3D3D 		.string	"\n\r===================================\n\r"
1114
 1135      3D3D 3D3D
1115
 1135      3D3D 3D3D
1116
 1135      3D3D 3D3D
1117
 1135      3D3D 3D3D
1118
 1138               	__c.2583:
1119
 1139 0028 4E6F 726D 		.string	"Normal (ACC-Mode)"
1120
 1139      616C 2028
1121
 1139      4143 432D
1122
 1139      4D6F 6465
1123
 1139      2900
1124
 1142               	__c.2581:
1125
 1143 003a 4865 6164 		.string	"HeadingHold"
1126
 1143      696E 6748
1127
 1143      6F6C 6400
1128
 1146               	__c.2579:
1129
 1147 0046 0A0D 436F 		.string	"\n\rControl: "
1130
 1147      6E74 726F
1131
 1147      6C3A 2000
1132
 1150               	__c.2577:
1133
 1151 0052 0A0D 466C 		.string	"\n\rFlight-time %u min  Total:%u min"
1134
 1151      6967 6874
1135
 1151      2D74 696D
1136
 1151      6520 2575
1137
 1151      206D 696E
1138
 1154               	__c.2575:
1139
 1155 0075 4F4B 0A0D 		.string	"OK\n\r"
1140
 1155      00
1141
 1158               	__c.2570:
1142
 1159 007a 0A0D 4361 		.string	"\n\rCalibrating IR sensor.."
1143
 1159      6C69 6272
1144
 1159      6174 696E
1145
 1159      6720 4952
1146
 1159      2073 656E
1147
 1162               	__c.2568:
1148
 1163 0094 0A0D 3D3D 		.string	"\n\r==================================="
1149
 1163      3D3D 3D3D
1150
 1163      3D3D 3D3D
1151
 1163      3D3D 3D3D
1152
 1163      3D3D 3D3D
1153
 1166               	__c.2563:
1154
 1167 00ba 0A0D 0A0D 		.string	"\n\r\n\r!! MISSING BL-CTRL: %d !!"
1155
 1167      2121 204D
1156
 1167      4953 5349
1157
 1167      4E47 2042
1158
 1167      4C2D 4354
1159
 1170               	__c.2558:
1160
 1171 00d8 2564 00   		.string	"%d"
1161
 1174               	__c.2547:
1162
 1175 00db 0A0D 466F 		.string	"\n\rFound BL-Ctrl: "
1163
 1175      756E 6420
1164
 1175      424C 2D43
1165
 1175      7472 6C3A
1166
 1175      2000
1167
 1178               	__c.2542:
1168
 1179 00ed 0A0D 496E 		.string	"\n\rInitialised:\n\r"
1169
 1179      6974 6961
1170
 1179      6C69 7365
1171
 1179      643A 0A0D
1172
 1179      00
1173
 1182               	__c.2514:
1174
 1183 00fe 204C 6F77 		.string	" Low warning level: %d.%d"
1175
 1183      2077 6172
1176
 1183      6E69 6E67
1177
 1183      206C 6576
1178
 1183      656C 3A20
1179
 1186               	__c.2512:
1180
 1187 0118 2025 6420 		.string	" %d Cells "
1181
 1187      4365 6C6C
1182
 1187      7320 00
1183
 1190               	__c.2504:
1184
 1191 0123 0A0D 4261 		.string	"\n\rBatt:"
1185
 1191      7474 3A00
1186
 1192               		.data
1187
 1195               	stick.2490:
1188
 1196 0003 01        		.byte	1
1189
 1197               		.comm _printf_P,2,1
1190
 1198               	/* File "main.c": code 1276 = 0x04fc (1262), prologues   9, epilogues   5 */
1191
DEFINED SYMBOLS
1192
                            *ABS*:00000000 main.c
1193
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:2      *ABS*:0000003f __SREG__
1194
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:3      *ABS*:0000003e __SP_H__
1195
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:4      *ABS*:0000003d __SP_L__
1196
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:5      *ABS*:00000000 __tmp_reg__
1197
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:6      *ABS*:00000001 __zero_reg__
1198
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:12     .text:00000000 LipoDetection
1199
                            *COM*:00000002 _printf_P
1200
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1190   .progmem.data:00000123 __c.2504
1201
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1103   .data:00000002 BattLowVoltageWarning
1202
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1186   .progmem.data:00000118 __c.2512
1203
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1182   .progmem.data:000000fe __c.2514
1204
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:151    .text:00000118 CalMk3Mag
1205
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1195   .data:00000003 stick.2490
1206
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:204    .text:00000182 main
1207
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1093   .data:00000000 PlatinenVersion
1208
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1178   .progmem.data:000000ed __c.2542
1209
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1174   .progmem.data:000000db __c.2547
1210
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1170   .progmem.data:000000d8 __c.2558
1211
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1128   .bss:00000006 FoundMotors
1212
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1166   .progmem.data:000000ba __c.2563
1213
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1162   .progmem.data:00000094 __c.2568
1214
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1158   .progmem.data:0000007a __c.2570
1215
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1154   .progmem.data:00000075 __c.2575
1216
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1110   .bss:00000000 FlugMinuten
1217
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1116   .bss:00000002 FlugMinutenGesamt
1218
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1150   .progmem.data:00000052 __c.2577
1219
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1146   .progmem.data:00000046 __c.2579
1220
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1142   .progmem.data:0000003a __c.2581
1221
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1138   .progmem.data:00000028 __c.2583
1222
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1134   .progmem.data:00000000 __c.2585
1223
                             .bss:00000007 second.2588
1224
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1122   .bss:00000004 FlugSekunden
1225
C:\DOCUME~1\Owner\LOCALS~1\Temp/cczHFcZA.s:1098   .data:00000001 SendVersionToNavi
1226
 
1227
UNDEFINED SYMBOLS
1228
__do_copy_data
1229
__do_clear_bss
1230
uart_putchar
1231
EE_Parameter
1232
SetDelay
1233
CheckDelay
1234
UBat
1235
Piep
1236
__udivmodqi4
1237
PPM_in
1238
WinkelOut
1239
beeptime
1240
DebugOut
1241
__prologue_saves__
1242
StickGier
1243
StickRoll
1244
StickNick
1245
GIER_GRAD_FAKTOR
1246
Timer_Init
1247
TIMER2_Init
1248
UART_Init
1249
rc_sum_init
1250
ADC_Init
1251
I2C_Init
1252
SPI_MasterInit
1253
Capacity_Init
1254
LIBFC_Init
1255
ParamSet_Init
1256
BLFlags
1257
motor_read
1258
SendMotorData
1259
Motor
1260
Mixer
1261
ServoActive
1262
RequiredMotors
1263
VersionInfo
1264
SetNeutral
1265
ExternControl
1266
GetParamByte
1267
LcdClear
1268
I2CTimeout
1269
LIBFC_ReceiverInit
1270
JetiUpdateModeActive
1271
LIBFC_Polling
1272
UpdateMotor
1273
AdReady
1274
MotorRegler
1275
SenderOkay
1276
MissingMotor
1277
I2C_Reset
1278
BeepMuster
1279
MotorenEin
1280
CalculateServoSignals
1281
CalculateServo
1282
DatenUebertragung
1283
BearbeiteRxDaten
1284
PcZugriff
1285
ExternStickNick
1286
ExternStickRoll
1287
ExternStickGier
1288
NaviDataOkay
1289
NC_Version
1290
GPS_Nick
1291
GPS_Roll
1292
FromNaviCtrl
1293
FC_StatusFlags
1294
SPI_StartTransmitPacket
1295
SendSPI
1296
SetParamByte
1297
LED_Update
1298
Capacity_Update
1299
SPI_TransmitByte