Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1754 - 1
   1               		.file	"uart.c"
2
   2               		.arch atmega644p
3
   3               	__SREG__ = 0x3f
4
   4               	__SP_H__ = 0x3e
5
   5               	__SP_L__ = 0x3d
6
   6               	__tmp_reg__ = 0
7
   7               	__zero_reg__ = 1
8
   8               		.global __do_copy_data
9
   9               		.global __do_clear_bss
10
  10               	.global	ANALOG_TEXT
11
  11               		.section	.progmem.data,"a",@progbits
12
  14               	ANALOG_TEXT:
13
  15 0000 416E 676C 		.ascii	"AngleNick       "
14
  15      654E 6963
15
  15      6B20 2020
16
  15      2020 2020
17
  16 0010 416E 676C 		.ascii	"AngleRoll       "
18
  16      6552 6F6C
19
  16      6C20 2020
20
  16      2020 2020
21
  17 0020 4163 634E 		.ascii	"AccNick         "
22
  17      6963 6B20
23
  17      2020 2020
24
  17      2020 2020
25
  18 0030 4163 6352 		.ascii	"AccRoll         "
26
  18      6F6C 6C20
27
  18      2020 2020
28
  18      2020 2020
29
  19 0040 5961 7747 		.ascii	"YawGyro         "
30
  19      7972 6F20
31
  19      2020 2020
32
  19      2020 2020
33
  20 0050 4865 6967 		.ascii	"Height Value    "
34
  20      6874 2056
35
  20      616C 7565
36
  20      2020 2020
37
  21 0060 4163 635A 		.ascii	"AccZ            "
38
  21      2020 2020
39
  21      2020 2020
40
  21      2020 2020
41
  22 0070 4761 7320 		.ascii	"Gas             "
42
  22      2020 2020
43
  22      2020 2020
44
  22      2020 2020
45
  23 0080 436F 6D70 		.ascii	"Compass Value   "
46
  23      6173 7320
47
  23      5661 6C75
48
  23      6520 2020
49
  24 0090 566F 6C74 		.ascii	"Voltage [0.1V]  "
50
  24      6167 6520
51
  24      5B30 2E31
52
  24      565D 2020
53
  25 00a0 5265 6365 		.ascii	"Receiver Level  "
54
  25      6976 6572
55
  25      204C 6576
56
  25      656C 2020
57
  26 00b0 4779 726F 		.ascii	"Gyro Compass    "
58
  26      2043 6F6D
59
  26      7061 7373
60
  26      2020 2020
61
  27 00c0 4D6F 746F 		.ascii	"Motor 1         "
62
  27      7220 3120
63
  27      2020 2020
64
  27      2020 2020
65
  28 00d0 4D6F 746F 		.ascii	"Motor 2         "
66
  28      7220 3220
67
  28      2020 2020
68
  28      2020 2020
69
  29 00e0 4D6F 746F 		.ascii	"Motor 3         "
70
  29      7220 3320
71
  29      2020 2020
72
  29      2020 2020
73
  30 00f0 4D6F 746F 		.ascii	"Motor 4         "
74
  30      7220 3420
75
  30      2020 2020
76
  30      2020 2020
77
  31 0100 3136 2020 		.ascii	"16              "
78
  31      2020 2020
79
  31      2020 2020
80
  31      2020 2020
81
  32 0110 3137 2020 		.ascii	"17              "
82
  32      2020 2020
83
  32      2020 2020
84
  32      2020 2020
85
  33 0120 3138 2020 		.ascii	"18              "
86
  33      2020 2020
87
  33      2020 2020
88
  33      2020 2020
89
  34 0130 3139 2020 		.ascii	"19              "
90
  34      2020 2020
91
  34      2020 2020
92
  34      2020 2020
93
  35 0140 5365 7276 		.ascii	"Servo           "
94
  35      6F20 2020
95
  35      2020 2020
96
  35      2020 2020
97
  36 0150 486F 7665 		.ascii	"Hovergas        "
98
  36      7267 6173
99
  36      2020 2020
100
  36      2020 2020
101
  37 0160 4375 7272 		.ascii	"Current [0.1A]  "
102
  37      656E 7420
103
  37      5B30 2E31
104
  37      415D 2020
105
  38 0170 4361 7061 		.ascii	"Capacity [mAh]  "
106
  38      6369 7479
107
  38      205B 6D41
108
  38      685D 2020
109
  39 0180 3234 2020 		.ascii	"24              "
110
  39      2020 2020
111
  39      2020 2020
112
  39      2020 2020
113
  40 0190 3235 2020 		.ascii	"25              "
114
  40      2020 2020
115
  40      2020 2020
116
  40      2020 2020
117
  41 01a0 3236 2020 		.ascii	"26              "
118
  41      2020 2020
119
  41      2020 2020
120
  41      2020 2020
121
  42 01b0 3237 2020 		.ascii	"27              "
122
  42      2020 2020
123
  42      2020 2020
124
  42      2020 2020
125
  43 01c0 4932 432D 		.ascii	"I2C-Error       "
126
  43      4572 726F
127
  43      7220 2020
128
  43      2020 2020
129
  44 01d0 424C 204C 		.ascii	"BL Limit        "
130
  44      696D 6974
131
  44      2020 2020
132
  44      2020 2020
133
  45 01e0 4750 535F 		.ascii	"GPS_Nick        "
134
  45      4E69 636B
135
  45      2020 2020
136
  45      2020 2020
137
  46 01f0 4750 535F 		.ascii	"GPS_Roll        "
138
  46      526F 6C6C
139
  46      2020 2020
140
  46      2020 2020
141
  47               	.global	AboTimeOut
142
  48               	.global	AboTimeOut
143
  49               		.section .bss
144
  52               	AboTimeOut:
145
  53 0000 0000      		.skip 2,0
146
  54               	.global	Display_Interval
147
  55               	.global	Display_Interval
148
  58               	Display_Interval:
149
  59 0002 0000      		.skip 2,0
150
  60               	.global	Intervall3D
151
  61               	.global	Intervall3D
152
  64               	Intervall3D:
153
  65 0004 0000      		.skip 2,0
154
  66               	.global	DebugDataIntervall
155
  67               	.global	DebugDataIntervall
156
  70               	DebugDataIntervall:
157
  71 0006 0000      		.skip 2,0
158
  72               	.global	MeineSlaveAdresse
159
  73               		.data
160
  76               	MeineSlaveAdresse:
161
  77 0000 01        		.byte	1
162
  78               	.global	PcZugriff
163
  81               	PcZugriff:
164
  82 0001 64        		.byte	100
165
  83               	.global	DebugTextAnforderung
166
  86               	DebugTextAnforderung:
167
  87 0002 FF        		.byte	-1
168
  88               	.global	PC_MotortestActive
169
  89               	.global	PC_MotortestActive
170
  90               		.section .bss
171
  93               	PC_MotortestActive:
172
  94 0008 00        		.skip 1,0
173
  95               	.global	PC_DebugTimeout
174
  96               	.global	PC_DebugTimeout
175
  99               	PC_DebugTimeout:
176
 100 0009 00        		.skip 1,0
177
 101               	.global	RxDataLen
178
 102               	.global	RxDataLen
179
 105               	RxDataLen:
180
 106 000a 00        		.skip 1,0
181
 107               	.global	pRxData
182
 108               	.global	pRxData
183
 111               	pRxData:
184
 112 000b 0000      		.skip 2,0
185
 113               	.global	AnzahlEmpfangsBytes
186
 114               	.global	AnzahlEmpfangsBytes
187
 117               	AnzahlEmpfangsBytes:
188
 118 000d 00        		.skip 1,0
189
 119               	.global	CntCrcError
190
 120               	.global	CntCrcError
191
 123               	CntCrcError:
192
 124 000e 00        		.skip 1,0
193
 125               	.global	UebertragungAbgeschlossen
194
 126               		.data
195
 129               	UebertragungAbgeschlossen:
196
 130 0003 01        		.byte	1
197
 131               	.global	NeueKoordinateEmpfangen
198
 132               	.global	NeueKoordinateEmpfangen
199
 133               		.section .bss
200
 136               	NeueKoordinateEmpfangen:
201
 137 000f 00        		.skip 1,0
202
 138               	.global	NeuerDatensatzEmpfangen
203
 139               	.global	NeuerDatensatzEmpfangen
204
 142               	NeuerDatensatzEmpfangen:
205
 143 0010 00        		.skip 1,0
206
 144               	.global	SioTmp
207
 145               	.global	SioTmp
208
 148               	SioTmp:
209
 149 0011 00        		.skip 1,0
210
 150               	.global	DisplayLine
211
 151               	.global	DisplayLine
212
 154               	DisplayLine:
213
 155 0012 00        		.skip 1,0
214
 156               	.global	GetPPMChannelAnforderung
215
 157               	.global	GetPPMChannelAnforderung
216
 160               	GetPPMChannelAnforderung:
217
 161 0013 00        		.skip 1,0
218
 162               	.global	GetVersionAnforderung
219
 163               	.global	GetVersionAnforderung
220
 166               	GetVersionAnforderung:
221
 167 0014 00        		.skip 1,0
222
 168               	.global	DebugDataAnforderung
223
 169               	.global	DebugDataAnforderung
224
 172               	DebugDataAnforderung:
225
 173 0015 00        		.skip 1,0
226
 174               	.global	DebugDisplayAnforderung
227
 175               	.global	DebugDisplayAnforderung
228
 178               	DebugDisplayAnforderung:
229
 179 0016 00        		.skip 1,0
230
 180               	.global	DebugDisplayAnforderung1
231
 181               	.global	DebugDisplayAnforderung1
232
 184               	DebugDisplayAnforderung1:
233
 185 0017 00        		.skip 1,0
234
 186               	.global	GetExternalControl
235
 187               	.global	GetExternalControl
236
 190               	GetExternalControl:
237
 191 0018 00        		.skip 1,0
238
 192               		.lcomm ptr.6,2
239
 193               		.text
240
 194               	.global	__vector_22
241
 196               	__vector_22:
242
 197               	/* prologue: frame size=0 */
243
 198 0000 1F92      		push __zero_reg__
244
 199 0002 0F92      		push __tmp_reg__
245
 200 0004 0FB6      		in __tmp_reg__,__SREG__
246
 201 0006 0F92      		push __tmp_reg__
247
 202 0008 1124      		clr __zero_reg__
248
 203 000a 8F93      		push r24
249
 204 000c 9F93      		push r25
250
 205 000e EF93      		push r30
251
 206 0010 FF93      		push r31
252
 207               	/* prologue end (size=9) */
253
 208 0012 8091 0000 		lds r24,UebertragungAbgeschlossen
254
 209 0016 8823      		tst r24
255
 210 0018 E1F4      		brne .L2
256
 211 001a 8091 0000 		lds r24,ptr.6
257
 212 001e 9091 0000 		lds r25,(ptr.6)+1
258
 213 0022 0196      		adiw r24,1
259
 214 0024 9093 0000 		sts (ptr.6)+1,r25
260
 215 0028 8093 0000 		sts ptr.6,r24
261
 216 002c FC01      		movw r30,r24
262
 217 002e E050      		subi r30,lo8(-(TxdBuffer))
263
 218 0030 F040      		sbci r31,hi8(-(TxdBuffer))
264
 219 0032 E081      		ld r30,Z
265
 220 0034 ED30      		cpi r30,lo8(13)
266
 221 0036 19F0      		breq .L4
267
 222 0038 803A      		cpi r24,160
268
 223 003a 9105      		cpc r25,__zero_reg__
269
 224 003c 39F4      		brne .L3
270
 225               	.L4:
271
 226 003e 1092 0000 		sts (ptr.6)+1,__zero_reg__
272
 227 0042 1092 0000 		sts ptr.6,__zero_reg__
273
 228 0046 81E0      		ldi r24,lo8(1)
274
 229 0048 8093 0000 		sts UebertragungAbgeschlossen,r24
275
 230               	.L3:
276
 231 004c E093 C600 		sts 198,r30
277
 232 0050 04C0      		rjmp .L1
278
 233               	.L2:
279
 234 0052 1092 0000 		sts (ptr.6)+1,__zero_reg__
280
 235 0056 1092 0000 		sts ptr.6,__zero_reg__
281
 236               	.L1:
282
 237               	/* epilogue: frame size=0 */
283
 238 005a FF91      		pop r31
284
 239 005c EF91      		pop r30
285
 240 005e 9F91      		pop r25
286
 241 0060 8F91      		pop r24
287
 242 0062 0F90      		pop __tmp_reg__
288
 243 0064 0FBE      		out __SREG__,__tmp_reg__
289
 244 0066 0F90      		pop __tmp_reg__
290
 245 0068 1F90      		pop __zero_reg__
291
 246 006a 1895      		reti
292
 247               	/* epilogue end (size=9) */
293
 248               	/* function __vector_22 size 54 (36) */
294
 250               		.lcomm crc.1,2
295
 251               		.lcomm crc1.2,1
296
 252               		.lcomm crc2.3,1
297
 253               		.lcomm buf_ptr.4,1
298
 254               		.lcomm UartState.5,1
299
 255               	.global	__vector_20
300
 257               	__vector_20:
301
 258               	/* prologue: frame size=0 */
302
 259 006c 1F92      		push __zero_reg__
303
 260 006e 0F92      		push __tmp_reg__
304
 261 0070 0FB6      		in __tmp_reg__,__SREG__
305
 262 0072 0F92      		push __tmp_reg__
306
 263 0074 1124      		clr __zero_reg__
307
 264 0076 2F93      		push r18
308
 265 0078 3F93      		push r19
309
 266 007a 4F93      		push r20
310
 267 007c 5F93      		push r21
311
 268 007e 6F93      		push r22
312
 269 0080 7F93      		push r23
313
 270 0082 8F93      		push r24
314
 271 0084 9F93      		push r25
315
 272 0086 AF93      		push r26
316
 273 0088 BF93      		push r27
317
 274 008a CF93      		push r28
318
 275 008c EF93      		push r30
319
 276 008e FF93      		push r31
320
 277               	/* prologue end (size=18) */
321
 278 0090 90E0      		ldi r25,lo8(0)
322
 279 0092 8091 C600 		lds r24,198
323
 280 0096 8093 0000 		sts SioTmp,r24
324
 281 009a 5091 0000 		lds r21,buf_ptr.4
325
 282 009e 503A      		cpi r21,lo8(-96)
326
 283 00a0 10F0      		brlo .L7
327
 284 00a2 9093 0000 		sts UartState.5,r25
328
 285               	.L7:
329
 286 00a6 8091 0000 		lds r24,SioTmp
330
 287 00aa 8D30      		cpi r24,lo8(13)
331
 288 00ac 09F0      		breq .+2
332
 289 00ae 65C0      		rjmp .L8
333
 290 00b0 8091 0000 		lds r24,UartState.5
334
 291 00b4 8230      		cpi r24,lo8(2)
335
 292 00b6 09F0      		breq .+2
336
 293 00b8 60C0      		rjmp .L8
337
 294 00ba 9093 0000 		sts UartState.5,r25
338
 295 00be 852F      		mov r24,r21
339
 296 00c0 9927      		clr r25
340
 297 00c2 8050      		subi r24,lo8(-(RxdBuffer))
341
 298 00c4 9040      		sbci r25,hi8(-(RxdBuffer))
342
 299 00c6 FC01      		movw r30,r24
343
 300 00c8 3297      		sbiw r30,2
344
 301 00ca 4081      		ld r20,Z
345
 302 00cc 2091 0000 		lds r18,crc.1
346
 303 00d0 3091 0000 		lds r19,(crc.1)+1
347
 304 00d4 241B      		sub r18,r20
348
 305 00d6 3109      		sbc r19,__zero_reg__
349
 306 00d8 DC01      		movw r26,r24
350
 307 00da 1197      		sbiw r26,1
351
 308 00dc 8C91      		ld r24,X
352
 309 00de 281B      		sub r18,r24
353
 310 00e0 3109      		sbc r19,__zero_reg__
354
 311 00e2 C901      		movw r24,r18
355
 312 00e4 9F70      		andi r25,hi8(4095)
356
 313 00e6 9093 0000 		sts (crc.1)+1,r25
357
 314 00ea 8093 0000 		sts crc.1,r24
358
 315 00ee 46E0      		ldi r20,6
359
 316 00f0 9695      	1:	lsr r25
360
 317 00f2 8795      		ror r24
361
 318 00f4 4A95      		dec r20
362
 319 00f6 E1F7      		brne 1b
363
 320 00f8 982F      		mov r25,r24
364
 321 00fa 935C      		subi r25,lo8(-(61))
365
 322 00fc 9093 0000 		sts crc1.2,r25
366
 323 0100 2F73      		andi r18,lo8(63)
367
 324 0102 3070      		andi r19,hi8(63)
368
 325 0104 235C      		subi r18,lo8(-(61))
369
 326 0106 2093 0000 		sts crc2.3,r18
370
 327 010a 8081      		ld r24,Z
371
 328 010c 9817      		cp r25,r24
372
 329 010e 29F4      		brne .L9
373
 330 0110 8C91      		ld r24,X
374
 331 0112 2817      		cp r18,r24
375
 332 0114 11F4      		brne .L9
376
 333 0116 91E0      		ldi r25,lo8(1)
377
 334 0118 06C0      		rjmp .L10
378
 335               	.L9:
379
 336 011a 90E0      		ldi r25,lo8(0)
380
 337 011c 8091 0000 		lds r24,CntCrcError
381
 338 0120 8F5F      		subi r24,lo8(-(1))
382
 339 0122 8093 0000 		sts CntCrcError,r24
383
 340               	.L10:
384
 341 0126 C091 0000 		lds r28,NeuerDatensatzEmpfangen
385
 342 012a CC23      		tst r28
386
 343 012c 09F0      		breq .+2
387
 344 012e 74C0      		rjmp .L6
388
 345 0130 9923      		tst r25
389
 346 0132 09F4      		brne .+2
390
 347 0134 71C0      		rjmp .L6
391
 348 0136 81E0      		ldi r24,lo8(1)
392
 349 0138 8093 0000 		sts NeuerDatensatzEmpfangen,r24
393
 350 013c 580F      		add r21,r24
394
 351 013e 5093 0000 		sts AnzahlEmpfangsBytes,r21
395
 352 0142 5150      		subi r21,lo8(-(-1))
396
 353 0144 E52F      		mov r30,r21
397
 354 0146 FF27      		clr r31
398
 355 0148 E050      		subi r30,lo8(-(RxdBuffer))
399
 356 014a F040      		sbci r31,hi8(-(RxdBuffer))
400
 357 014c 8DE0      		ldi r24,lo8(13)
401
 358 014e 8083      		st Z,r24
402
 359 0150 8091 0000 		lds r24,RxdBuffer+2
403
 360 0154 8235      		cpi r24,lo8(82)
404
 361 0156 09F0      		breq .+2
405
 362 0158 5FC0      		rjmp .L6
406
 363 015a 0E94 0000 		call LcdClear
407
 364 015e 88E1      		ldi r24,lo8(24)
408
 365 0160 90E0      		ldi r25,hi8(24)
409
 366 0162 2CE0      		ldi r18,lo8(12)
410
 367               	/* #APP */
411
 368 0164 0FB6      		in __tmp_reg__,__SREG__
412
 369 0166 F894      		cli
413
 370 0168 A895      		wdr
414
 371 016a 8093 6000 		sts 96,r24
415
 372 016e 0FBE      		out __SREG__,__tmp_reg__
416
 373 0170 2093 6000 		sts 96,r18
417
 374               	/* #NOAPP */
418
 375 0174 C093 0000 		sts ServoActive,r28
419
 376 0178 4FC0      		rjmp .L6
420
 377               	.L8:
421
 378 017a 2091 0000 		lds r18,UartState.5
422
 379 017e 822F      		mov r24,r18
423
 380 0180 9927      		clr r25
424
 381 0182 8130      		cpi r24,1
425
 382 0184 9105      		cpc r25,__zero_reg__
426
 383 0186 F9F0      		breq .L17
427
 384 0188 8230      		cpi r24,2
428
 385 018a 9105      		cpc r25,__zero_reg__
429
 386 018c 1CF4      		brge .L22
430
 387 018e 892B      		or r24,r25
431
 388 0190 21F0      		breq .L15
432
 389 0192 40C0      		rjmp .L21
433
 390               	.L22:
434
 391 0194 0297      		sbiw r24,2
435
 392 0196 11F1      		breq .L18
436
 393 0198 3DC0      		rjmp .L21
437
 394               	.L15:
438
 395 019a 8091 0000 		lds r24,SioTmp
439
 396 019e 8332      		cpi r24,lo8(35)
440
 397 01a0 39F4      		brne .L16
441
 398 01a2 8091 0000 		lds r24,NeuerDatensatzEmpfangen
442
 399 01a6 8823      		tst r24
443
 400 01a8 19F4      		brne .L16
444
 401 01aa 81E0      		ldi r24,lo8(1)
445
 402 01ac 8093 0000 		sts UartState.5,r24
446
 403               	.L16:
447
 404 01b0 8091 0000 		lds r24,SioTmp
448
 405 01b4 8093 0000 		sts RxdBuffer,r24
449
 406 01b8 81E0      		ldi r24,lo8(1)
450
 407 01ba 8093 0000 		sts buf_ptr.4,r24
451
 408 01be 8091 0000 		lds r24,SioTmp
452
 409 01c2 9927      		clr r25
453
 410 01c4 22C0      		rjmp .L23
454
 411               	.L17:
455
 412 01c6 2F5F      		subi r18,lo8(-(1))
456
 413 01c8 2093 0000 		sts UartState.5,r18
457
 414 01cc E52F      		mov r30,r21
458
 415 01ce FF27      		clr r31
459
 416 01d0 E050      		subi r30,lo8(-(RxdBuffer))
460
 417 01d2 F040      		sbci r31,hi8(-(RxdBuffer))
461
 418 01d4 8091 0000 		lds r24,SioTmp
462
 419 01d8 8083      		st Z,r24
463
 420 01da 09C0      		rjmp .L24
464
 421               	.L18:
465
 422 01dc E52F      		mov r30,r21
466
 423 01de FF27      		clr r31
467
 424 01e0 E050      		subi r30,lo8(-(RxdBuffer))
468
 425 01e2 F040      		sbci r31,hi8(-(RxdBuffer))
469
 426 01e4 8091 0000 		lds r24,SioTmp
470
 427 01e8 8083      		st Z,r24
471
 428 01ea 503A      		cpi r21,lo8(-96)
472
 429 01ec 20F4      		brsh .L19
473
 430               	.L24:
474
 431 01ee 5F5F      		subi r21,lo8(-(1))
475
 432 01f0 5093 0000 		sts buf_ptr.4,r21
476
 433 01f4 02C0      		rjmp .L20
477
 434               	.L19:
478
 435 01f6 1092 0000 		sts UartState.5,__zero_reg__
479
 436               	.L20:
480
 437 01fa 2091 0000 		lds r18,SioTmp
481
 438 01fe 8091 0000 		lds r24,crc.1
482
 439 0202 9091 0000 		lds r25,(crc.1)+1
483
 440 0206 820F      		add r24,r18
484
 441 0208 911D      		adc r25,__zero_reg__
485
 442               	.L23:
486
 443 020a 9093 0000 		sts (crc.1)+1,r25
487
 444 020e 8093 0000 		sts crc.1,r24
488
 445 0212 02C0      		rjmp .L6
489
 446               	.L21:
490
 447 0214 1092 0000 		sts UartState.5,__zero_reg__
491
 448               	.L6:
492
 449               	/* epilogue: frame size=0 */
493
 450 0218 FF91      		pop r31
494
 451 021a EF91      		pop r30
495
 452 021c CF91      		pop r28
496
 453 021e BF91      		pop r27
497
 454 0220 AF91      		pop r26
498
 455 0222 9F91      		pop r25
499
 456 0224 8F91      		pop r24
500
 457 0226 7F91      		pop r23
501
 458 0228 6F91      		pop r22
502
 459 022a 5F91      		pop r21
503
 460 022c 4F91      		pop r20
504
 461 022e 3F91      		pop r19
505
 462 0230 2F91      		pop r18
506
 463 0232 0F90      		pop __tmp_reg__
507
 464 0234 0FBE      		out __SREG__,__tmp_reg__
508
 465 0236 0F90      		pop __tmp_reg__
509
 466 0238 1F90      		pop __zero_reg__
510
 467 023a 1895      		reti
511
 468               	/* epilogue end (size=18) */
512
 469               	/* function __vector_20 size 238 (202) */
513
 471               	.global	AddCRC
514
 473               	AddCRC:
515
 474               	/* prologue: frame size=0 */
516
 475               	/* prologue end (size=0) */
517
 476 023c AC01      		movw r20,r24
518
 477 023e A0E0      		ldi r26,lo8(0)
519
 478 0240 B0E0      		ldi r27,hi8(0)
520
 479 0242 9D01      		movw r18,r26
521
 480 0244 A817      		cp r26,r24
522
 481 0246 B907      		cpc r27,r25
523
 482 0248 48F4      		brsh .L31
524
 483 024a E0E0      		ldi r30,lo8(TxdBuffer)
525
 484 024c F0E0      		ldi r31,hi8(TxdBuffer)
526
 485               	.L29:
527
 486 024e 8191      		ld r24,Z+
528
 487 0250 280F      		add r18,r24
529
 488 0252 311D      		adc r19,__zero_reg__
530
 489 0254 1196      		adiw r26,1
531
 490 0256 A417      		cp r26,r20
532
 491 0258 B507      		cpc r27,r21
533
 492 025a C8F3      		brlo .L29
534
 493               	.L31:
535
 494 025c 3F70      		andi r19,hi8(4095)
536
 495 025e FD01      		movw r30,r26
537
 496 0260 E050      		subi r30,lo8(-(TxdBuffer))
538
 497 0262 F040      		sbci r31,hi8(-(TxdBuffer))
539
 498 0264 C901      		movw r24,r18
540
 499 0266 56E0      		ldi r21,6
541
 500 0268 9695      	1:	lsr r25
542
 501 026a 8795      		ror r24
543
 502 026c 5A95      		dec r21
544
 503 026e E1F7      		brne 1b
545
 504 0270 835C      		subi r24,lo8(-(61))
546
 505 0272 8083      		st Z,r24
547
 506 0274 1196      		adiw r26,1
548
 507 0276 FD01      		movw r30,r26
549
 508 0278 E050      		subi r30,lo8(-(TxdBuffer))
550
 509 027a F040      		sbci r31,hi8(-(TxdBuffer))
551
 510 027c 2F73      		andi r18,lo8(63)
552
 511 027e 3070      		andi r19,hi8(63)
553
 512 0280 822F      		mov r24,r18
554
 513 0282 835C      		subi r24,lo8(-(61))
555
 514 0284 8083      		st Z,r24
556
 515 0286 A050      		subi r26,lo8(-(TxdBuffer+1))
557
 516 0288 B040      		sbci r27,hi8(-(TxdBuffer+1))
558
 517 028a 8DE0      		ldi r24,lo8(13)
559
 518 028c 8C93      		st X,r24
560
 519 028e 1092 0000 		sts UebertragungAbgeschlossen,__zero_reg__
561
 520 0292 8091 0000 		lds r24,TxdBuffer
562
 521 0296 8093 C600 		sts 198,r24
563
 522               	/* epilogue: frame size=0 */
564
 523 029a 0895      		ret
565
 524               	/* epilogue end (size=1) */
566
 525               	/* function AddCRC size 49 (48) */
567
 527               	.global	SendOutData
568
 529               	SendOutData:
569
 530               	/* prologue: frame size=0 */
570
 531 029c A0E0      		ldi r26,lo8(0)
571
 532 029e B0E0      		ldi r27,hi8(0)
572
 533 02a0 E0E0      		ldi r30,pm_lo8(1f)
573
 534 02a2 F0E0      		ldi r31,pm_hi8(1f)
574
 535 02a4 0C94 0000 		jmp __prologue_saves__+18
575
 536               	1:
576
 537               	/* prologue end (size=6) */
577
 538 02a8 2C85      		ldd r18,Y+12
578
 539 02aa 9D85      		ldd r25,Y+13
579
 540 02ac 0E85      		ldd r16,Y+14
580
 541 02ae BB24      		clr r11
581
 542 02b0 83E2      		ldi r24,lo8(35)
582
 543 02b2 8093 0000 		sts TxdBuffer,r24
583
 544 02b6 9F59      		subi r25,lo8(-(97))
584
 545 02b8 9093 0000 		sts TxdBuffer+1,r25
585
 546 02bc 2093 0000 		sts TxdBuffer+2,r18
586
 547 02c0 33E0      		ldi r19,lo8(3)
587
 548 02c2 E32E      		mov r14,r19
588
 549 02c4 F12C      		mov r15,__zero_reg__
589
 550 02c6 0023      		tst r16
590
 551 02c8 09F4      		brne .+2
591
 552 02ca 9EC0      		rjmp .L47
592
 553 02cc CF84      		ldd r12,Y+15
593
 554 02ce D888      		ldd r13,Y+16
594
 555 02d0 BE01      		movw r22,r28
595
 556 02d2 6D5E      		subi r22,lo8(-(19))
596
 557 02d4 7F4F      		sbci r23,hi8(-(19))
597
 558 02d6 A989      		ldd r26,Y+17
598
 559 02d8 BA89      		ldd r27,Y+18
599
 560 02da 0150      		subi r16,lo8(-(-1))
600
 561               	.L48:
601
 562 02dc 1097      		sbiw r26,0
602
 563 02de 09F4      		brne .+2
603
 564 02e0 93C0      		rjmp .L47
604
 565 02e2 1097      		sbiw r26,0
605
 566 02e4 B9F0      		breq .L36
606
 567 02e6 F601      		movw r30,r12
607
 568 02e8 EB0D      		add r30,r11
608
 569 02ea F11D      		adc r31,__zero_reg__
609
 570 02ec B394      		inc r11
610
 571 02ee 9081      		ld r25,Z
611
 572 02f0 1197      		sbiw r26,1
612
 573 02f2 91F4      		brne .L38
613
 574 02f4 0023      		tst r16
614
 575 02f6 49F1      		breq .L39
615
 576 02f8 FB01      		movw r30,r22
616
 577 02fa 6E5F      		subi r22,lo8(-(2))
617
 578 02fc 7F4F      		sbci r23,hi8(-(2))
618
 579 02fe DB01      		movw r26,r22
619
 580 0300 C080      		ld r12,Z
620
 581 0302 D180      		ldd r13,Z+1
621
 582 0304 6E5F      		subi r22,lo8(-(2))
622
 583 0306 7F4F      		sbci r23,hi8(-(2))
623
 584 0308 0D90      		ld __tmp_reg__,X+
624
 585 030a BC91      		ld r27,X
625
 586 030c A02D      		mov r26,__tmp_reg__
626
 587 030e BB24      		clr r11
627
 588 0310 0150      		subi r16,lo8(-(-1))
628
 589 0312 02C0      		rjmp .L38
629
 590               	.L36:
630
 591 0314 90E0      		ldi r25,lo8(0)
631
 592 0316 19C0      		rjmp .L39
632
 593               	.L38:
633
 594 0318 1097      		sbiw r26,0
634
 595 031a B9F0      		breq .L39
635
 596 031c F601      		movw r30,r12
636
 597 031e EB0D      		add r30,r11
637
 598 0320 F11D      		adc r31,__zero_reg__
638
 599 0322 B394      		inc r11
639
 600 0324 4081      		ld r20,Z
640
 601 0326 1197      		sbiw r26,1
641
 602 0328 91F4      		brne .L41
642
 603 032a 0023      		tst r16
643
 604 032c 41F1      		breq .L42
644
 605 032e FB01      		movw r30,r22
645
 606 0330 6E5F      		subi r22,lo8(-(2))
646
 607 0332 7F4F      		sbci r23,hi8(-(2))
647
 608 0334 DB01      		movw r26,r22
648
 609 0336 C080      		ld r12,Z
649
 610 0338 D180      		ldd r13,Z+1
650
 611 033a 6E5F      		subi r22,lo8(-(2))
651
 612 033c 7F4F      		sbci r23,hi8(-(2))
652
 613 033e 0D90      		ld __tmp_reg__,X+
653
 614 0340 BC91      		ld r27,X
654
 615 0342 A02D      		mov r26,__tmp_reg__
655
 616 0344 BB24      		clr r11
656
 617 0346 0150      		subi r16,lo8(-(-1))
657
 618 0348 02C0      		rjmp .L41
658
 619               	.L39:
659
 620 034a 40E0      		ldi r20,lo8(0)
660
 621 034c 18C0      		rjmp .L42
661
 622               	.L41:
662
 623 034e 1097      		sbiw r26,0
663
 624 0350 B1F0      		breq .L42
664
 625 0352 F601      		movw r30,r12
665
 626 0354 EB0D      		add r30,r11
666
 627 0356 F11D      		adc r31,__zero_reg__
667
 628 0358 B394      		inc r11
668
 629 035a 1081      		ld r17,Z
669
 630 035c 1197      		sbiw r26,1
670
 631 035e 81F4      		brne .L44
671
 632 0360 0023      		tst r16
672
 633 0362 71F0      		breq .L44
673
 634 0364 FB01      		movw r30,r22
674
 635 0366 3296      		adiw r30,2
675
 636 0368 DB01      		movw r26,r22
676
 637 036a CD90      		ld r12,X+
677
 638 036c DC90      		ld r13,X
678
 639 036e BF01      		movw r22,r30
679
 640 0370 6E5F      		subi r22,lo8(-(2))
680
 641 0372 7F4F      		sbci r23,hi8(-(2))
681
 642 0374 A081      		ld r26,Z
682
 643 0376 B181      		ldd r27,Z+1
683
 644 0378 BB24      		clr r11
684
 645 037a 0150      		subi r16,lo8(-(-1))
685
 646 037c 01C0      		rjmp .L44
686
 647               	.L42:
687
 648 037e 10E0      		ldi r17,lo8(0)
688
 649               	.L44:
689
 650 0380 F701      		movw r30,r14
690
 651 0382 E050      		subi r30,lo8(-(TxdBuffer))
691
 652 0384 F040      		sbci r31,hi8(-(TxdBuffer))
692
 653 0386 892F      		mov r24,r25
693
 654 0388 8695      		lsr r24
694
 655 038a 8695      		lsr r24
695
 656 038c 835C      		subi r24,lo8(-(61))
696
 657 038e 8083      		st Z,r24
697
 658 0390 0894      		sec
698
 659 0392 E11C      		adc r14,__zero_reg__
699
 660 0394 F11C      		adc r15,__zero_reg__
700
 661 0396 F701      		movw r30,r14
701
 662 0398 E050      		subi r30,lo8(-(TxdBuffer))
702
 663 039a F040      		sbci r31,hi8(-(TxdBuffer))
703
 664 039c 892F      		mov r24,r25
704
 665 039e 9927      		clr r25
705
 666 03a0 8370      		andi r24,lo8(3)
706
 667 03a2 9070      		andi r25,hi8(3)
707
 668 03a4 24E0      		ldi r18,4
708
 669 03a6 880F      	1:	lsl r24
709
 670 03a8 991F      		rol r25
710
 671 03aa 2A95      		dec r18
711
 672 03ac E1F7      		brne 1b
712
 673 03ae 5527      		clr r21
713
 674 03b0 9A01      		movw r18,r20
714
 675 03b2 94E0      		ldi r25,4
715
 676 03b4 3695      	1:	lsr r19
716
 677 03b6 2795      		ror r18
717
 678 03b8 9A95      		dec r25
718
 679 03ba E1F7      		brne 1b
719
 680 03bc 822B      		or r24,r18
720
 681 03be 835C      		subi r24,lo8(-(61))
721
 682 03c0 8083      		st Z,r24
722
 683 03c2 0894      		sec
723
 684 03c4 E11C      		adc r14,__zero_reg__
724
 685 03c6 F11C      		adc r15,__zero_reg__
725
 686 03c8 F701      		movw r30,r14
726
 687 03ca E050      		subi r30,lo8(-(TxdBuffer))
727
 688 03cc F040      		sbci r31,hi8(-(TxdBuffer))
728
 689 03ce 4F70      		andi r20,lo8(15)
729
 690 03d0 5070      		andi r21,hi8(15)
730
 691 03d2 440F      		lsl r20
731
 692 03d4 551F      		rol r21
732
 693 03d6 440F      		lsl r20
733
 694 03d8 551F      		rol r21
734
 695 03da 812F      		mov r24,r17
735
 696 03dc 9927      		clr r25
736
 697 03de 26E0      		ldi r18,6
737
 698 03e0 9695      	1:	lsr r25
738
 699 03e2 8795      		ror r24
739
 700 03e4 2A95      		dec r18
740
 701 03e6 E1F7      		brne 1b
741
 702 03e8 842B      		or r24,r20
742
 703 03ea 835C      		subi r24,lo8(-(61))
743
 704 03ec 8083      		st Z,r24
744
 705 03ee 0894      		sec
745
 706 03f0 E11C      		adc r14,__zero_reg__
746
 707 03f2 F11C      		adc r15,__zero_reg__
747
 708 03f4 F701      		movw r30,r14
748
 709 03f6 E050      		subi r30,lo8(-(TxdBuffer))
749
 710 03f8 F040      		sbci r31,hi8(-(TxdBuffer))
750
 711 03fa 1F73      		andi r17,lo8(63)
751
 712 03fc 135C      		subi r17,lo8(-(61))
752
 713 03fe 1083      		st Z,r17
753
 714 0400 0894      		sec
754
 715 0402 E11C      		adc r14,__zero_reg__
755
 716 0404 F11C      		adc r15,__zero_reg__
756
 717 0406 6ACF      		rjmp .L48
757
 718               	.L47:
758
 719 0408 C701      		movw r24,r14
759
 720 040a 0E94 0000 		call AddCRC
760
 721               	/* epilogue: frame size=0 */
761
 722 040e E9E0      		ldi r30,9
762
 723 0410 0C94 0000 		jmp __epilogue_restores__+18
763
 724               	/* epilogue end (size=3) */
764
 725               	/* function SendOutData size 191 (182) */
765
 727               	.global	Decode64
766
 729               	Decode64:
767
 730               	/* prologue: frame size=0 */
768
 731               	/* prologue end (size=0) */
769
 732 0414 A3E0      		ldi r26,lo8(3)
770
 733 0416 7A2F      		mov r23,r26
771
 734 0418 4091 0000 		lds r20,AnzahlEmpfangsBytes
772
 735 041c 4650      		subi r20,lo8(-(-6))
773
 736               	.L60:
774
 737 041e 4423      		tst r20
775
 738 0420 09F4      		brne .+2
776
 739 0422 58C0      		rjmp .L51
777
 740 0424 E72F      		mov r30,r23
778
 741 0426 FF27      		clr r31
779
 742 0428 E050      		subi r30,lo8(-(RxdBuffer))
780
 743 042a F040      		sbci r31,hi8(-(RxdBuffer))
781
 744 042c 8081      		ld r24,Z
782
 745 042e 8D53      		subi r24,lo8(-(-61))
783
 746 0430 7F5F      		subi r23,lo8(-(1))
784
 747 0432 E72F      		mov r30,r23
785
 748 0434 FF27      		clr r31
786
 749 0436 E050      		subi r30,lo8(-(RxdBuffer))
787
 750 0438 F040      		sbci r31,hi8(-(RxdBuffer))
788
 751 043a 2081      		ld r18,Z
789
 752 043c 2D53      		subi r18,lo8(-(-61))
790
 753 043e 7F5F      		subi r23,lo8(-(1))
791
 754 0440 E72F      		mov r30,r23
792
 755 0442 FF27      		clr r31
793
 756 0444 E050      		subi r30,lo8(-(RxdBuffer))
794
 757 0446 F040      		sbci r31,hi8(-(RxdBuffer))
795
 758 0448 3081      		ld r19,Z
796
 759 044a 3D53      		subi r19,lo8(-(-61))
797
 760 044c 7F5F      		subi r23,lo8(-(1))
798
 761 044e E72F      		mov r30,r23
799
 762 0450 FF27      		clr r31
800
 763 0452 E050      		subi r30,lo8(-(RxdBuffer))
801
 764 0454 F040      		sbci r31,hi8(-(RxdBuffer))
802
 765 0456 6081      		ld r22,Z
803
 766 0458 6D53      		subi r22,lo8(-(-61))
804
 767 045a 7F5F      		subi r23,lo8(-(1))
805
 768 045c 9927      		clr r25
806
 769 045e 880F      		lsl r24
807
 770 0460 991F      		rol r25
808
 771 0462 880F      		lsl r24
809
 772 0464 991F      		rol r25
810
 773 0466 522F      		mov r21,r18
811
 774 0468 5295      		swap r21
812
 775 046a 5F70      		andi r21,0x0f
813
 776 046c 582B      		or r21,r24
814
 777 046e 822F      		mov r24,r18
815
 778 0470 9927      		clr r25
816
 779 0472 8F70      		andi r24,lo8(15)
817
 780 0474 9070      		andi r25,hi8(15)
818
 781 0476 F4E0      		ldi r31,4
819
 782 0478 880F      	1:	lsl r24
820
 783 047a 991F      		rol r25
821
 784 047c FA95      		dec r31
822
 785 047e E1F7      		brne 1b
823
 786 0480 232F      		mov r18,r19
824
 787 0482 2695      		lsr r18
825
 788 0484 2695      		lsr r18
826
 789 0486 282B      		or r18,r24
827
 790 0488 832F      		mov r24,r19
828
 791 048a 9927      		clr r25
829
 792 048c 8370      		andi r24,lo8(3)
830
 793 048e 9070      		andi r25,hi8(3)
831
 794 0490 E6E0      		ldi r30,6
832
 795 0492 880F      	1:	lsl r24
833
 796 0494 991F      		rol r25
834
 797 0496 EA95      		dec r30
835
 798 0498 E1F7      		brne 1b
836
 799 049a 682B      		or r22,r24
837
 800 049c 4150      		subi r20,lo8(-(-1))
838
 801 049e 4F3F      		cpi r20,lo8(-1)
839
 802 04a0 C9F0      		breq .L51
840
 803 04a2 EA2F      		mov r30,r26
841
 804 04a4 FF27      		clr r31
842
 805 04a6 E050      		subi r30,lo8(-(RxdBuffer))
843
 806 04a8 F040      		sbci r31,hi8(-(RxdBuffer))
844
 807 04aa 5083      		st Z,r21
845
 808 04ac AF5F      		subi r26,lo8(-(1))
846
 809 04ae 4150      		subi r20,lo8(-(-1))
847
 810 04b0 4F3F      		cpi r20,lo8(-1)
848
 811 04b2 81F0      		breq .L51
849
 812 04b4 EA2F      		mov r30,r26
850
 813 04b6 FF27      		clr r31
851
 814 04b8 E050      		subi r30,lo8(-(RxdBuffer))
852
 815 04ba F040      		sbci r31,hi8(-(RxdBuffer))
853
 816 04bc 2083      		st Z,r18
854
 817 04be AF5F      		subi r26,lo8(-(1))
855
 818 04c0 4150      		subi r20,lo8(-(-1))
856
 819 04c2 4F3F      		cpi r20,lo8(-1)
857
 820 04c4 39F0      		breq .L51
858
 821 04c6 EA2F      		mov r30,r26
859
 822 04c8 FF27      		clr r31
860
 823 04ca E050      		subi r30,lo8(-(RxdBuffer))
861
 824 04cc F040      		sbci r31,hi8(-(RxdBuffer))
862
 825 04ce 6083      		st Z,r22
863
 826 04d0 AF5F      		subi r26,lo8(-(1))
864
 827 04d2 A5CF      		rjmp .L60
865
 828               	.L51:
866
 829 04d4 80E0      		ldi r24,lo8(RxdBuffer+3)
867
 830 04d6 90E0      		ldi r25,hi8(RxdBuffer+3)
868
 831 04d8 9093 0000 		sts (pRxData)+1,r25
869
 832 04dc 8093 0000 		sts pRxData,r24
870
 833 04e0 A350      		subi r26,lo8(-(-3))
871
 834 04e2 A093 0000 		sts RxDataLen,r26
872
 835               	/* epilogue: frame size=0 */
873
 836 04e6 0895      		ret
874
 837               	/* epilogue end (size=1) */
875
 838               	/* function Decode64 size 106 (105) */
876
 840               	.global	BearbeiteRxDaten
877
 842               	BearbeiteRxDaten:
878
 843               	/* prologue: frame size=2 */
879
 844 04e8 A2E0      		ldi r26,lo8(2)
880
 845 04ea B0E0      		ldi r27,hi8(2)
881
 846 04ec E0E0      		ldi r30,pm_lo8(1f)
882
 847 04ee F0E0      		ldi r31,pm_hi8(1f)
883
 848 04f0 0C94 0000 		jmp __prologue_saves__+30
884
 849               	1:
885
 850               	/* prologue end (size=6) */
886
 851 04f4 8091 0000 		lds r24,NeuerDatensatzEmpfangen
887
 852 04f8 8823      		tst r24
888
 853 04fa 09F4      		brne .+2
889
 854 04fc C7C3      		rjmp .L61
890
 855 04fe 0E94 0000 		call Decode64
891
 856 0502 8091 0000 		lds r24,RxdBuffer+1
892
 857 0506 8236      		cpi r24,lo8(98)
893
 858 0508 09F0      		breq .+2
894
 859 050a 81C2      		rjmp .L119
895
 860 050c 8091 0000 		lds r24,RxdBuffer+2
896
 861 0510 9927      		clr r25
897
 862 0512 8137      		cpi r24,113
898
 863 0514 9105      		cpc r25,__zero_reg__
899
 864 0516 09F4      		brne .+2
900
 865 0518 C0C0      		rjmp .L81
901
 866 051a 8237      		cpi r24,114
902
 867 051c 9105      		cpc r25,__zero_reg__
903
 868 051e C4F4      		brge .L116
904
 869 0520 8D36      		cpi r24,109
905
 870 0522 9105      		cpc r25,__zero_reg__
906
 871 0524 09F4      		brne .+2
907
 872 0526 82C0      		rjmp .L74
908
 873 0528 8E36      		cpi r24,110
909
 874 052a 9105      		cpc r25,__zero_reg__
910
 875 052c 44F4      		brge .L117
911
 876 052e 8B34      		cpi r24,75
912
 877 0530 9105      		cpc r25,__zero_reg__
913
 878 0532 31F1      		breq .L66
914
 879 0534 8636      		cpi r24,102
915
 880 0536 9105      		cpc r25,__zero_reg__
916
 881 0538 09F4      		brne .+2
917
 882 053a 54C1      		rjmp .L96
918
 883 053c 68C2      		rjmp .L119
919
 884               	.L117:
920
 885 053e 8E36      		cpi r24,110
921
 886 0540 9105      		cpc r25,__zero_reg__
922
 887 0542 09F4      		brne .+2
923
 888 0544 5BC0      		rjmp .L71
924
 889 0546 8037      		cpi r24,112
925
 890 0548 9105      		cpc r25,__zero_reg__
926
 891 054a 09F4      		brne .+2
927
 892 054c 9FC0      		rjmp .L80
928
 893 054e 5FC2      		rjmp .L119
929
 894               	.L116:
930
 895 0550 8537      		cpi r24,117
931
 896 0552 9105      		cpc r25,__zero_reg__
932
 897 0554 09F4      		brne .+2
933
 898 0556 E2C1      		rjmp .L103
934
 899 0558 8637      		cpi r24,118
935
 900 055a 9105      		cpc r25,__zero_reg__
936
 901 055c 44F4      		brge .L118
937
 902 055e 8337      		cpi r24,115
938
 903 0560 9105      		cpc r25,__zero_reg__
939
 904 0562 09F4      		brne .+2
940
 905 0564 DCC0      		rjmp .L89
941
 906 0566 8437      		cpi r24,116
942
 907 0568 9105      		cpc r25,__zero_reg__
943
 908 056a 39F1      		breq .L67
944
 909 056c 50C2      		rjmp .L119
945
 910               	.L118:
946
 911 056e 8737      		cpi r24,119
947
 912 0570 9105      		cpc r25,__zero_reg__
948
 913 0572 09F4      		brne .+2
949
 914 0574 10C2      		rjmp .L109
950
 915 0576 8937      		cpi r24,121
951
 916 0578 9105      		cpc r25,__zero_reg__
952
 917 057a 09F4      		brne .+2
953
 918 057c 6AC1      		rjmp .L102
954
 919 057e 47C2      		rjmp .L119
955
 920               	.L66:
956
 921 0580 E091 0000 		lds r30,pRxData
957
 922 0584 F091 0000 		lds r31,(pRxData)+1
958
 923 0588 8081      		ld r24,Z
959
 924 058a 9181      		ldd r25,Z+1
960
 925 058c 9093 0000 		sts (KompassValue)+1,r25
961
 926 0590 8093 0000 		sts KompassValue,r24
962
 927 0594 2091 0000 		lds r18,KompassStartwert
963
 928 0598 3091 0000 		lds r19,(KompassStartwert)+1
964
 929 059c 821B      		sub r24,r18
965
 930 059e 930B      		sbc r25,r19
966
 931 05a0 845E      		subi r24,lo8(-(540))
967
 932 05a2 9D4F      		sbci r25,hi8(-(540))
968
 933 05a4 68E6      		ldi r22,lo8(360)
969
 934 05a6 71E0      		ldi r23,hi8(360)
970
 935 05a8 0E94 0000 		call __divmodhi4
971
 936 05ac 845B      		subi r24,lo8(-(-180))
972
 937 05ae 9040      		sbci r25,hi8(-(-180))
973
 938 05b0 9093 0000 		sts (KompassRichtung)+1,r25
974
 939 05b4 8093 0000 		sts KompassRichtung,r24
975
 940 05b8 2AC2      		rjmp .L119
976
 941               	.L67:
977
 942 05ba 8091 0000 		lds r24,AnzahlEmpfangsBytes
978
 943 05be A091 0000 		lds r26,pRxData
979
 944 05c2 B091 0000 		lds r27,(pRxData)+1
980
 945 05c6 8531      		cpi r24,lo8(21)
981
 946 05c8 40F0      		brlo .L68
982
 947 05ca 80E1      		ldi r24,lo8(16)
983
 948 05cc E0E0      		ldi r30,lo8(MotorTest)
984
 949 05ce F0E0      		ldi r31,hi8(MotorTest)
985
 950 05d0 0D90      		ld __tmp_reg__,X+
986
 951 05d2 0192      		st Z+,__tmp_reg__
987
 952 05d4 8A95      		dec r24
988
 953 05d6 E1F7      		brne .-8
989
 954 05d8 0DC0      		rjmp .L69
990
 955               	.L68:
991
 956 05da 8D91      		ld r24,X+
992
 957 05dc 9D91      		ld r25,X+
993
 958 05de 0D90      		ld __tmp_reg__,X+
994
 959 05e0 BC91      		ld r27,X
995
 960 05e2 A02D      		mov r26,__tmp_reg__
996
 961 05e4 8093 0000 		sts MotorTest,r24
997
 962 05e8 9093 0000 		sts (MotorTest)+1,r25
998
 963 05ec A093 0000 		sts (MotorTest)+2,r26
999
 964 05f0 B093 0000 		sts (MotorTest)+3,r27
1000
 965               	.L69:
1001
 966 05f4 80EF      		ldi r24,lo8(-16)
1002
 967 05f6 8093 0000 		sts PC_MotortestActive,r24
1003
 968 05fa 4BC0      		rjmp .L148
1004
 969               	.L71:
1005
 970 05fc 8091 0000 		lds r24,UebertragungAbgeschlossen
1006
 971 0600 8823      		tst r24
1007
 972 0602 E1F3      		breq .L71
1008
 973 0604 8DE4      		ldi r24,lo8(77)
1009
 974 0606 90E0      		ldi r25,hi8(77)
1010
 975 0608 9F93      		push r25
1011
 976 060a 8F93      		push r24
1012
 977 060c 80E0      		ldi r24,lo8(Mixer)
1013
 978 060e 90E0      		ldi r25,hi8(Mixer)
1014
 979 0610 9F93      		push r25
1015
 980 0612 8F93      		push r24
1016
 981 0614 81E0      		ldi r24,lo8(1)
1017
 982 0616 8F93      		push r24
1018
 983 0618 8F93      		push r24
1019
 984 061a 8EE4      		ldi r24,lo8(78)
1020
 985 061c 8F93      		push r24
1021
 986 061e 0E94 0000 		call SendOutData
1022
 987 0622 8DB7      		in r24,__SP_L__
1023
 988 0624 9EB7      		in r25,__SP_H__
1024
 989 0626 0796      		adiw r24,7
1025
 990 0628 8DBF      		out __SP_L__,r24
1026
 991 062a F1C1      		rjmp .L119
1027
 992               	.L74:
1028
 993 062c A091 0000 		lds r26,pRxData
1029
 994 0630 B091 0000 		lds r27,(pRxData)+1
1030
 995 0634 1C91      		ld r17,X
1031
 996 0636 1130      		cpi r17,lo8(1)
1032
 997 0638 81F4      		brne .L75
1033
 998 063a 8DE4      		ldi r24,lo8(77)
1034
 999 063c E0E0      		ldi r30,lo8(Mixer)
1035
 1000 063e F0E0      		ldi r31,hi8(Mixer)
1036
 1001 0640 0D90      		ld __tmp_reg__,X+
1037
 1002 0642 0192      		st Z+,__tmp_reg__
1038
 1003 0644 8A95      		dec r24
1039
 1004 0646 E1F7      		brne .-8
1040
 1005 0648 0E94 0000 		call MixerTable_WriteToEEProm
1041
 1006 064c 1983      		std Y+1,r17
1042
 1007 064e 8091 0000 		lds r24,VersionInfo+6
1043
 1008 0652 8F7E      		andi r24,lo8(-17)
1044
 1009 0654 8093 0000 		sts VersionInfo+6,r24
1045
 1010 0658 01C0      		rjmp .L77
1046
 1011               	.L75:
1047
 1012 065a 1982      		std Y+1,__zero_reg__
1048
 1013               	.L77:
1049
 1014 065c 8091 0000 		lds r24,UebertragungAbgeschlossen
1050
 1015 0660 8823      		tst r24
1051
 1016 0662 E1F3      		breq .L77
1052
 1017 0664 81E0      		ldi r24,lo8(1)
1053
 1018 0666 90E0      		ldi r25,hi8(1)
1054
 1019 0668 9F93      		push r25
1055
 1020 066a 8F93      		push r24
1056
 1021 066c CE01      		movw r24,r28
1057
 1022 066e 0196      		adiw r24,1
1058
 1023 0670 9F93      		push r25
1059
 1024 0672 8F93      		push r24
1060
 1025 0674 81E0      		ldi r24,lo8(1)
1061
 1026 0676 8F93      		push r24
1062
 1027 0678 8F93      		push r24
1063
 1028 067a 8DE4      		ldi r24,lo8(77)
1064
 1029 067c 8F93      		push r24
1065
 1030 067e 0E94 0000 		call SendOutData
1066
 1031 0682 ADB7      		in r26,__SP_L__
1067
 1032 0684 BEB7      		in r27,__SP_H__
1068
 1033 0686 1796      		adiw r26,7
1069
 1034 0688 ADBF      		out __SP_L__,r26
1070
 1035 068a C1C1      		rjmp .L119
1071
 1036               	.L80:
1072
 1037 068c 81E0      		ldi r24,lo8(1)
1073
 1038 068e 8093 0000 		sts GetPPMChannelAnforderung,r24
1074
 1039               	.L148:
1075
 1040 0692 8FEF      		ldi r24,lo8(-1)
1076
 1041 0694 8093 0000 		sts PcZugriff,r24
1077
 1042 0698 BAC1      		rjmp .L119
1078
 1043               	.L81:
1079
 1044 069a E091 0000 		lds r30,pRxData
1080
 1045 069e F091 0000 		lds r31,(pRxData)+1
1081
 1046 06a2 8081      		ld r24,Z
1082
 1047 06a4 8F3F      		cpi r24,lo8(-1)
1083
 1048 06a6 39F4      		brne .L82
1084
 1049 06a8 0E94 0000 		call GetActiveParamSet
1085
 1050 06ac E091 0000 		lds r30,pRxData
1086
 1051 06b0 F091 0000 		lds r31,(pRxData)+1
1087
 1052 06b4 8083      		st Z,r24
1088
 1053               	.L82:
1089
 1054 06b6 E091 0000 		lds r30,pRxData
1090
 1055 06ba F091 0000 		lds r31,(pRxData)+1
1091
 1056 06be 8081      		ld r24,Z
1092
 1057 06c0 8823      		tst r24
1093
 1058 06c2 11F4      		brne .L83
1094
 1059 06c4 81E0      		ldi r24,lo8(1)
1095
 1060 06c6 03C0      		rjmp .L146
1096
 1061               	.L83:
1097
 1062 06c8 8630      		cpi r24,lo8(6)
1098
 1063 06ca 10F0      		brlo .L84
1099
 1064 06cc 85E0      		ldi r24,lo8(5)
1100
 1065               	.L146:
1101
 1066 06ce 8083      		st Z,r24
1102
 1067               	.L84:
1103
 1068 06d0 E091 0000 		lds r30,pRxData
1104
 1069 06d4 F091 0000 		lds r31,(pRxData)+1
1105
 1070 06d8 8081      		ld r24,Z
1106
 1071 06da 0E94 0000 		call ParamSet_ReadFromEEProm
1107
 1072 06de E091 0000 		lds r30,pRxData
1108
 1073 06e2 F091 0000 		lds r31,(pRxData)+1
1109
 1074 06e6 8081      		ld r24,Z
1110
 1075 06e8 8983      		std Y+1,r24
1111
 1076               	.L86:
1112
 1077 06ea 8091 0000 		lds r24,UebertragungAbgeschlossen
1113
 1078 06ee 8823      		tst r24
1114
 1079 06f0 E1F3      		breq .L86
1115
 1080 06f2 80E7      		ldi r24,lo8(112)
1116
 1081 06f4 90E0      		ldi r25,hi8(112)
1117
 1082 06f6 9F93      		push r25
1118
 1083 06f8 8F93      		push r24
1119
 1084 06fa 80E0      		ldi r24,lo8(EE_Parameter)
1120
 1085 06fc 90E0      		ldi r25,hi8(EE_Parameter)
1121
 1086 06fe 9F93      		push r25
1122
 1087 0700 8F93      		push r24
1123
 1088 0702 81E0      		ldi r24,lo8(1)
1124
 1089 0704 90E0      		ldi r25,hi8(1)
1125
 1090 0706 9F93      		push r25
1126
 1091 0708 8F93      		push r24
1127
 1092 070a CE01      		movw r24,r28
1128
 1093 070c 0196      		adiw r24,1
1129
 1094 070e 9F93      		push r25
1130
 1095 0710 8F93      		push r24
1131
 1096 0712 82E0      		ldi r24,lo8(2)
1132
 1097 0714 8F93      		push r24
1133
 1098 0716 81E0      		ldi r24,lo8(1)
1134
 1099 0718 8F93      		push r24
1135
 1100 071a 81E5      		ldi r24,lo8(81)
1136
 1101 071c 71C1      		rjmp .L151
1137
 1102               	.L89:
1138
 1103 071e 2091 0000 		lds r18,pRxData
1139
 1104 0722 3091 0000 		lds r19,(pRxData)+1
1140
 1105 0726 D901      		movw r26,r18
1141
 1106 0728 8C91      		ld r24,X
1142
 1107 072a 8150      		subi r24,lo8(-(-1))
1143
 1108 072c 8530      		cpi r24,lo8(5)
1144
 1109 072e 08F0      		brlo .+2
1145
 1110 0730 40C0      		rjmp .L90
1146
 1111 0732 F901      		movw r30,r18
1147
 1112 0734 8181      		ldd r24,Z+1
1148
 1113 0736 8435      		cpi r24,lo8(84)
1149
 1114 0738 E1F5      		brne .L90
1150
 1115 073a 2F5F      		subi r18,lo8(-(1))
1151
 1116 073c 3F4F      		sbci r19,hi8(-(1))
1152
 1117 073e 80E7      		ldi r24,lo8(112)
1153
 1118 0740 E0E0      		ldi r30,lo8(EE_Parameter)
1154
 1119 0742 F0E0      		ldi r31,hi8(EE_Parameter)
1155
 1120 0744 D901      		movw r26,r18
1156
 1121 0746 0D90      		ld __tmp_reg__,X+
1157
 1122 0748 0192      		st Z+,__tmp_reg__
1158
 1123 074a 8A95      		dec r24
1159
 1124 074c E1F7      		brne .-8
1160
 1125 074e F901      		movw r30,r18
1161
 1126 0750 8291      		ld r24,-Z
1162
 1127 0752 0E94 0000 		call ParamSet_WriteToEEProm
1163
 1128 0756 8091 0000 		lds r24,EE_Parameter+63
1164
 1129 075a 9927      		clr r25
1165
 1130 075c AA27      		clr r26
1166
 1131 075e BB27      		clr r27
1167
 1132 0760 BC01      		movw r22,r24
1168
 1133 0762 CD01      		movw r24,r26
1169
 1134 0764 24EC      		ldi r18,lo8(2500)
1170
 1135 0766 39E0      		ldi r19,hi8(2500)
1171
 1136 0768 40E0      		ldi r20,hlo8(2500)
1172
 1137 076a 50E0      		ldi r21,hhi8(2500)
1173
 1138 076c 0E94 0000 		call __mulsi3
1174
 1139 0770 DC01      		movw r26,r24
1175
 1140 0772 CB01      		movw r24,r22
1176
 1141 0774 8093 0000 		sts Umschlag180Nick,r24
1177
 1142 0778 9093 0000 		sts (Umschlag180Nick)+1,r25
1178
 1143 077c A093 0000 		sts (Umschlag180Nick)+2,r26
1179
 1144 0780 B093 0000 		sts (Umschlag180Nick)+3,r27
1180
 1145 0784 8091 0000 		lds r24,EE_Parameter+64
1181
 1146 0788 9927      		clr r25
1182
 1147 078a AA27      		clr r26
1183
 1148 078c BB27      		clr r27
1184
 1149 078e BC01      		movw r22,r24
1185
 1150 0790 CD01      		movw r24,r26
1186
 1151 0792 0E94 0000 		call __mulsi3
1187
 1152 0796 DC01      		movw r26,r24
1188
 1153 0798 CB01      		movw r24,r22
1189
 1154 079a 8093 0000 		sts Umschlag180Roll,r24
1190
 1155 079e 9093 0000 		sts (Umschlag180Roll)+1,r25
1191
 1156 07a2 A093 0000 		sts (Umschlag180Roll)+2,r26
1192
 1157 07a6 B093 0000 		sts (Umschlag180Roll)+3,r27
1193
 1158 07aa 0E94 0000 		call GetActiveParamSet
1194
 1159 07ae 8983      		std Y+1,r24
1195
 1160 07b0 01C0      		rjmp .L92
1196
 1161               	.L90:
1197
 1162 07b2 1982      		std Y+1,__zero_reg__
1198
 1163               	.L92:
1199
 1164 07b4 8091 0000 		lds r24,UebertragungAbgeschlossen
1200
 1165 07b8 8823      		tst r24
1201
 1166 07ba E1F3      		breq .L92
1202
 1167 07bc 81E0      		ldi r24,lo8(1)
1203
 1168 07be 90E0      		ldi r25,hi8(1)
1204
 1169 07c0 9F93      		push r25
1205
 1170 07c2 8F93      		push r24
1206
 1171 07c4 CE01      		movw r24,r28
1207
 1172 07c6 0196      		adiw r24,1
1208
 1173 07c8 9F93      		push r25
1209
 1174 07ca 8F93      		push r24
1210
 1175 07cc 81E0      		ldi r24,lo8(1)
1211
 1176 07ce 8F93      		push r24
1212
 1177 07d0 8F93      		push r24
1213
 1178 07d2 83E5      		ldi r24,lo8(83)
1214
 1179 07d4 8F93      		push r24
1215
 1180 07d6 0E94 0000 		call SendOutData
1216
 1181 07da 8DB7      		in r24,__SP_L__
1217
 1182 07dc 9EB7      		in r25,__SP_H__
1218
 1183 07de 0796      		adiw r24,7
1219
 1184 07e0 8DBF      		out __SP_L__,r24
1220
 1185 07e2 26C0      		rjmp .L152
1221
 1186               	.L96:
1222
 1187 07e4 E091 0000 		lds r30,pRxData
1223
 1188 07e8 F091 0000 		lds r31,(pRxData)+1
1224
 1189 07ec E081      		ld r30,Z
1225
 1190 07ee 8E2F      		mov r24,r30
1226
 1191 07f0 8150      		subi r24,lo8(-(-1))
1227
 1192 07f2 8530      		cpi r24,lo8(5)
1228
 1193 07f4 18F4      		brsh .L97
1229
 1194 07f6 8E2F      		mov r24,r30
1230
 1195 07f8 0E94 0000 		call ParamSet_ReadFromEEProm
1231
 1196               	.L97:
1232
 1197 07fc 0E94 0000 		call GetActiveParamSet
1233
 1198 0800 8983      		std Y+1,r24
1234
 1199               	.L98:
1235
 1200 0802 8091 0000 		lds r24,UebertragungAbgeschlossen
1236
 1201 0806 8823      		tst r24
1237
 1202 0808 E1F3      		breq .L98
1238
 1203 080a 81E0      		ldi r24,lo8(1)
1239
 1204 080c 90E0      		ldi r25,hi8(1)
1240
 1205 080e 9F93      		push r25
1241
 1206 0810 8F93      		push r24
1242
 1207 0812 CE01      		movw r24,r28
1243
 1208 0814 0196      		adiw r24,1
1244
 1209 0816 9F93      		push r25
1245
 1210 0818 8F93      		push r24
1246
 1211 081a 81E0      		ldi r24,lo8(1)
1247
 1212 081c 8F93      		push r24
1248
 1213 081e 8F93      		push r24
1249
 1214 0820 86E4      		ldi r24,lo8(70)
1250
 1215 0822 8F93      		push r24
1251
 1216 0824 0E94 0000 		call SendOutData
1252
 1217 0828 ADB7      		in r26,__SP_L__
1253
 1218 082a BEB7      		in r27,__SP_H__
1254
 1219 082c 1796      		adiw r26,7
1255
 1220 082e ADBF      		out __SP_L__,r26
1256
 1221               	.L152:
1257
 1222 0830 8091 0000 		lds r24,MotorenEin
1258
 1223 0834 8823      		tst r24
1259
 1224 0836 29F4      		brne .L101
1260
 1225 0838 6EE6      		ldi r22,lo8(110)
1261
 1226 083a 70E0      		ldi r23,hi8(110)
1262
 1227 083c 8981      		ldd r24,Y+1
1263
 1228 083e 0E94 0000 		call Piep
1264
 1229               	.L101:
1265
 1230 0842 80E0      		ldi r24,lo8(0)
1266
 1231 0844 0E94 0000 		call LipoDetection
1267
 1232 0848 8091 0000 		lds r24,EE_Parameter+39
1268
 1233 084c 0E94 0000 		call LIBFC_ReceiverInit
1269
 1234 0850 DEC0      		rjmp .L119
1270
 1235               	.L102:
1271
 1236 0852 E091 0000 		lds r30,pRxData
1272
 1237 0856 F091 0000 		lds r31,(pRxData)+1
1273
 1238 085a 8081      		ld r24,Z
1274
 1239 085c 9927      		clr r25
1275
 1240 085e 87FD      		sbrc r24,7
1276
 1241 0860 9095      		com r25
1277
 1242 0862 9093 0000 		sts (PPM_in+26)+1,r25
1278
 1243 0866 8093 0000 		sts PPM_in+26,r24
1279
 1244 086a 8181      		ldd r24,Z+1
1280
 1245 086c 9927      		clr r25
1281
 1246 086e 87FD      		sbrc r24,7
1282
 1247 0870 9095      		com r25
1283
 1248 0872 9093 0000 		sts (PPM_in+28)+1,r25
1284
 1249 0876 8093 0000 		sts PPM_in+28,r24
1285
 1250 087a 8281      		ldd r24,Z+2
1286
 1251 087c 9927      		clr r25
1287
 1252 087e 87FD      		sbrc r24,7
1288
 1253 0880 9095      		com r25
1289
 1254 0882 9093 0000 		sts (PPM_in+30)+1,r25
1290
 1255 0886 8093 0000 		sts PPM_in+30,r24
1291
 1256 088a 8381      		ldd r24,Z+3
1292
 1257 088c 9927      		clr r25
1293
 1258 088e 87FD      		sbrc r24,7
1294
 1259 0890 9095      		com r25
1295
 1260 0892 9093 0000 		sts (PPM_in+32)+1,r25
1296
 1261 0896 8093 0000 		sts PPM_in+32,r24
1297
 1262 089a 8481      		ldd r24,Z+4
1298
 1263 089c 9927      		clr r25
1299
 1264 089e 87FD      		sbrc r24,7
1300
 1265 08a0 9095      		com r25
1301
 1266 08a2 9093 0000 		sts (PPM_in+34)+1,r25
1302
 1267 08a6 8093 0000 		sts PPM_in+34,r24
1303
 1268 08aa 8581      		ldd r24,Z+5
1304
 1269 08ac 9927      		clr r25
1305
 1270 08ae 87FD      		sbrc r24,7
1306
 1271 08b0 9095      		com r25
1307
 1272 08b2 9093 0000 		sts (PPM_in+36)+1,r25
1308
 1273 08b6 8093 0000 		sts PPM_in+36,r24
1309
 1274 08ba 8681      		ldd r24,Z+6
1310
 1275 08bc 9927      		clr r25
1311
 1276 08be 87FD      		sbrc r24,7
1312
 1277 08c0 9095      		com r25
1313
 1278 08c2 9093 0000 		sts (PPM_in+38)+1,r25
1314
 1279 08c6 8093 0000 		sts PPM_in+38,r24
1315
 1280 08ca 8781      		ldd r24,Z+7
1316
 1281 08cc 9927      		clr r25
1317
 1282 08ce 87FD      		sbrc r24,7
1318
 1283 08d0 9095      		com r25
1319
 1284 08d2 9093 0000 		sts (PPM_in+40)+1,r25
1320
 1285 08d6 8093 0000 		sts PPM_in+40,r24
1321
 1286 08da 8085      		ldd r24,Z+8
1322
 1287 08dc 9927      		clr r25
1323
 1288 08de 87FD      		sbrc r24,7
1324
 1289 08e0 9095      		com r25
1325
 1290 08e2 9093 0000 		sts (PPM_in+42)+1,r25
1326
 1291 08e6 8093 0000 		sts PPM_in+42,r24
1327
 1292 08ea 8185      		ldd r24,Z+9
1328
 1293 08ec 9927      		clr r25
1329
 1294 08ee 87FD      		sbrc r24,7
1330
 1295 08f0 9095      		com r25
1331
 1296 08f2 9093 0000 		sts (PPM_in+44)+1,r25
1332
 1297 08f6 8093 0000 		sts PPM_in+44,r24
1333
 1298 08fa 8285      		ldd r24,Z+10
1334
 1299 08fc 9927      		clr r25
1335
 1300 08fe 87FD      		sbrc r24,7
1336
 1301 0900 9095      		com r25
1337
 1302 0902 9093 0000 		sts (PPM_in+46)+1,r25
1338
 1303 0906 8093 0000 		sts PPM_in+46,r24
1339
 1304 090a 8385      		ldd r24,Z+11
1340
 1305 090c 9927      		clr r25
1341
 1306 090e 87FD      		sbrc r24,7
1342
 1307 0910 9095      		com r25
1343
 1308 0912 9093 0000 		sts (PPM_in+48)+1,r25
1344
 1309 0916 8093 0000 		sts PPM_in+48,r24
1345
 1310 091a 79C0      		rjmp .L119
1346
 1311               	.L103:
1347
 1312 091c E091 0000 		lds r30,pRxData
1348
 1313 0920 F091 0000 		lds r31,(pRxData)+1
1349
 1314 0924 8081      		ld r24,Z
1350
 1315 0926 0E94 0000 		call I2C_ReadBLConfig
1351
 1316 092a 8A83      		std Y+2,r24
1352
 1317 092c 8823      		tst r24
1353
 1318 092e 19F4      		brne .L104
1354
 1319 0930 81E0      		ldi r24,lo8(1)
1355
 1320 0932 8983      		std Y+1,r24
1356
 1321 0934 01C0      		rjmp .L106
1357
 1322               	.L104:
1358
 1323 0936 1982      		std Y+1,__zero_reg__
1359
 1324               	.L106:
1360
 1325 0938 8091 0000 		lds r24,UebertragungAbgeschlossen
1361
 1326 093c 8823      		tst r24
1362
 1327 093e E1F3      		breq .L106
1363
 1328 0940 88E0      		ldi r24,lo8(8)
1364
 1329 0942 90E0      		ldi r25,hi8(8)
1365
 1330 0944 9F93      		push r25
1366
 1331 0946 8F93      		push r24
1367
 1332 0948 80E0      		ldi r24,lo8(BLConfig)
1368
 1333 094a 90E0      		ldi r25,hi8(BLConfig)
1369
 1334 094c 9F93      		push r25
1370
 1335 094e 8F93      		push r24
1371
 1336 0950 21E0      		ldi r18,lo8(1)
1372
 1337 0952 30E0      		ldi r19,hi8(1)
1373
 1338 0954 3F93      		push r19
1374
 1339 0956 2F93      		push r18
1375
 1340 0958 8091 0000 		lds r24,pRxData
1376
 1341 095c 9091 0000 		lds r25,(pRxData)+1
1377
 1342 0960 9F93      		push r25
1378
 1343 0962 8F93      		push r24
1379
 1344 0964 3F93      		push r19
1380
 1345 0966 2F93      		push r18
1381
 1346 0968 CE01      		movw r24,r28
1382
 1347 096a 0296      		adiw r24,2
1383
 1348 096c 9F93      		push r25
1384
 1349 096e 8F93      		push r24
1385
 1350 0970 3F93      		push r19
1386
 1351 0972 2F93      		push r18
1387
 1352 0974 CE01      		movw r24,r28
1388
 1353 0976 820F      		add r24,r18
1389
 1354 0978 931F      		adc r25,r19
1390
 1355 097a 9F93      		push r25
1391
 1356 097c 8F93      		push r24
1392
 1357 097e 84E0      		ldi r24,lo8(4)
1393
 1358 0980 8F93      		push r24
1394
 1359 0982 81E0      		ldi r24,lo8(1)
1395
 1360 0984 8F93      		push r24
1396
 1361 0986 85E5      		ldi r24,lo8(85)
1397
 1362 0988 8F93      		push r24
1398
 1363 098a 0E94 0000 		call SendOutData
1399
 1364 098e EDB7      		in r30,__SP_L__
1400
 1365 0990 FEB7      		in r31,__SP_H__
1401
 1366 0992 7396      		adiw r30,19
1402
 1367 0994 3BC0      		rjmp .L147
1403
 1368               	.L109:
1404
 1369 0996 8091 0000 		lds r24,RxDataLen
1405
 1370 099a 8930      		cpi r24,lo8(9)
1406
 1371 099c C0F1      		brlo .L119
1407
 1372 099e 2091 0000 		lds r18,pRxData
1408
 1373 09a2 3091 0000 		lds r19,(pRxData)+1
1409
 1374 09a6 2F5F      		subi r18,lo8(-(1))
1410
 1375 09a8 3F4F      		sbci r19,hi8(-(1))
1411
 1376 09aa 88E0      		ldi r24,lo8(8)
1412
 1377 09ac A0E0      		ldi r26,lo8(BLConfig)
1413
 1378 09ae B0E0      		ldi r27,hi8(BLConfig)
1414
 1379 09b0 F901      		movw r30,r18
1415
 1380 09b2 0190      		ld __tmp_reg__,Z+
1416
 1381 09b4 0D92      		st X+,__tmp_reg__
1417
 1382 09b6 8A95      		dec r24
1418
 1383 09b8 E1F7      		brne .-8
1419
 1384 09ba D901      		movw r26,r18
1420
 1385 09bc 8E91      		ld r24,-X
1421
 1386 09be 0E94 0000 		call I2C_WriteBLConfig
1422
 1387 09c2 8A83      		std Y+2,r24
1423
 1388 09c4 8823      		tst r24
1424
 1389 09c6 19F4      		brne .L111
1425
 1390 09c8 81E0      		ldi r24,lo8(1)
1426
 1391 09ca 8983      		std Y+1,r24
1427
 1392 09cc 01C0      		rjmp .L113
1428
 1393               	.L111:
1429
 1394 09ce 1982      		std Y+1,__zero_reg__
1430
 1395               	.L113:
1431
 1396 09d0 8091 0000 		lds r24,UebertragungAbgeschlossen
1432
 1397 09d4 8823      		tst r24
1433
 1398 09d6 E1F3      		breq .L113
1434
 1399 09d8 21E0      		ldi r18,lo8(1)
1435
 1400 09da 30E0      		ldi r19,hi8(1)
1436
 1401 09dc 3F93      		push r19
1437
 1402 09de 2F93      		push r18
1438
 1403 09e0 CE01      		movw r24,r28
1439
 1404 09e2 0296      		adiw r24,2
1440
 1405 09e4 9F93      		push r25
1441
 1406 09e6 8F93      		push r24
1442
 1407 09e8 3F93      		push r19
1443
 1408 09ea 2F93      		push r18
1444
 1409 09ec CE01      		movw r24,r28
1445
 1410 09ee 820F      		add r24,r18
1446
 1411 09f0 931F      		adc r25,r19
1447
 1412 09f2 9F93      		push r25
1448
 1413 09f4 8F93      		push r24
1449
 1414 09f6 82E0      		ldi r24,lo8(2)
1450
 1415 09f8 8F93      		push r24
1451
 1416 09fa 81E0      		ldi r24,lo8(1)
1452
 1417 09fc 8F93      		push r24
1453
 1418 09fe 87E5      		ldi r24,lo8(87)
1454
 1419               	.L151:
1455
 1420 0a00 8F93      		push r24
1456
 1421 0a02 0E94 0000 		call SendOutData
1457
 1422 0a06 EDB7      		in r30,__SP_L__
1458
 1423 0a08 FEB7      		in r31,__SP_H__
1459
 1424 0a0a 3B96      		adiw r30,11
1460
 1425               	.L147:
1461
 1426 0a0c EDBF      		out __SP_L__,r30
1462
 1427               	.L119:
1463
 1428 0a0e 8091 0000 		lds r24,RxdBuffer+2
1464
 1429 0a12 9927      		clr r25
1465
 1430 0a14 8436      		cpi r24,100
1466
 1431 0a16 9105      		cpc r25,__zero_reg__
1467
 1432 0a18 09F4      		brne .+2
1468
 1433 0a1a CDC0      		rjmp .L134
1469
 1434 0a1c 8536      		cpi r24,101
1470
 1435 0a1e 9105      		cpc r25,__zero_reg__
1471
 1436 0a20 ACF4      		brge .L143
1472
 1437 0a22 8136      		cpi r24,97
1473
 1438 0a24 9105      		cpc r25,__zero_reg__
1474
 1439 0a26 09F4      		brne .+2
1475
 1440 0a28 81C0      		rjmp .L128
1476
 1441 0a2a 8236      		cpi r24,98
1477
 1442 0a2c 9105      		cpc r25,__zero_reg__
1478
 1443 0a2e 2CF4      		brge .L144
1479
 1444 0a30 8B34      		cpi r24,75
1480
 1445 0a32 9105      		cpc r25,__zero_reg__
1481
 1446 0a34 09F4      		brne .+2
1482
 1447 0a36 5DC0      		rjmp .L127
1483
 1448 0a38 21C1      		rjmp .L63
1484
 1449               	.L144:
1485
 1450 0a3a 8236      		cpi r24,98
1486
 1451 0a3c 9105      		cpc r25,__zero_reg__
1487
 1452 0a3e 09F4      		brne .+2
1488
 1453 0a40 82C0      		rjmp .L130
1489
 1454 0a42 8336      		cpi r24,99
1490
 1455 0a44 9105      		cpc r25,__zero_reg__
1491
 1456 0a46 09F4      		brne .+2
1492
 1457 0a48 91C0      		rjmp .L131
1493
 1458 0a4a 18C1      		rjmp .L63
1494
 1459               	.L143:
1495
 1460 0a4c 8C36      		cpi r24,108
1496
 1461 0a4e 9105      		cpc r25,__zero_reg__
1497
 1462 0a50 09F4      		brne .+2
1498
 1463 0a52 FFC0      		rjmp .L139
1499
 1464 0a54 8D36      		cpi r24,109
1500
 1465 0a56 9105      		cpc r25,__zero_reg__
1501
 1466 0a58 4CF4      		brge .L145
1502
 1467 0a5a 8736      		cpi r24,103
1503
 1468 0a5c 9105      		cpc r25,__zero_reg__
1504
 1469 0a5e 09F4      		brne .+2
1505
 1470 0a60 0AC1      		rjmp .L141
1506
 1471 0a62 8836      		cpi r24,104
1507
 1472 0a64 9105      		cpc r25,__zero_reg__
1508
 1473 0a66 09F4      		brne .+2
1509
 1474 0a68 C4C0      		rjmp .L136
1510
 1475 0a6a 08C1      		rjmp .L63
1511
 1476               	.L145:
1512
 1477 0a6c 8437      		cpi r24,116
1513
 1478 0a6e 9105      		cpc r25,__zero_reg__
1514
 1479 0a70 29F0      		breq .L121
1515
 1480 0a72 8637      		cpi r24,118
1516
 1481 0a74 9105      		cpc r25,__zero_reg__
1517
 1482 0a76 09F4      		brne .+2
1518
 1483 0a78 FAC0      		rjmp .L140
1519
 1484 0a7a 00C1      		rjmp .L63
1520
 1485               	.L121:
1521
 1486 0a7c 8091 0000 		lds r24,AnzahlEmpfangsBytes
1522
 1487 0a80 A091 0000 		lds r26,pRxData
1523
 1488 0a84 B091 0000 		lds r27,(pRxData)+1
1524
 1489 0a88 8031      		cpi r24,lo8(16)
1525
 1490 0a8a 40F0      		brlo .L122
1526
 1491 0a8c 80E1      		ldi r24,lo8(16)
1527
 1492 0a8e E0E0      		ldi r30,lo8(MotorTest)
1528
 1493 0a90 F0E0      		ldi r31,hi8(MotorTest)
1529
 1494 0a92 0D90      		ld __tmp_reg__,X+
1530
 1495 0a94 0192      		st Z+,__tmp_reg__
1531
 1496 0a96 8A95      		dec r24
1532
 1497 0a98 E1F7      		brne .-8
1533
 1498 0a9a 0DC0      		rjmp .L124
1534
 1499               	.L122:
1535
 1500 0a9c 8D91      		ld r24,X+
1536
 1501 0a9e 9D91      		ld r25,X+
1537
 1502 0aa0 0D90      		ld __tmp_reg__,X+
1538
 1503 0aa2 BC91      		ld r27,X
1539
 1504 0aa4 A02D      		mov r26,__tmp_reg__
1540
 1505 0aa6 8093 0000 		sts MotorTest,r24
1541
 1506 0aaa 9093 0000 		sts (MotorTest)+1,r25
1542
 1507 0aae A093 0000 		sts (MotorTest)+2,r26
1543
 1508 0ab2 B093 0000 		sts (MotorTest)+3,r27
1544
 1509               	.L124:
1545
 1510 0ab6 8091 0000 		lds r24,UebertragungAbgeschlossen
1546
 1511 0aba 8823      		tst r24
1547
 1512 0abc E1F3      		breq .L124
1548
 1513 0abe 1F92      		push __zero_reg__
1549
 1514 0ac0 8091 0000 		lds r24,MeineSlaveAdresse
1550
 1515 0ac4 8F93      		push r24
1551
 1516 0ac6 84E5      		ldi r24,lo8(84)
1552
 1517 0ac8 8F93      		push r24
1553
 1518 0aca 0E94 0000 		call SendOutData
1554
 1519 0ace 8AEF      		ldi r24,lo8(-6)
1555
 1520 0ad0 8093 0000 		sts PC_MotortestActive,r24
1556
 1521 0ad4 8FEF      		ldi r24,lo8(-1)
1557
 1522 0ad6 8093 0000 		sts PcZugriff,r24
1558
 1523 0ada 80EA      		ldi r24,lo8(4000)
1559
 1524 0adc 9FE0      		ldi r25,hi8(4000)
1560
 1525 0ade 0E94 0000 		call SetDelay
1561
 1526 0ae2 9093 0000 		sts (AboTimeOut)+1,r25
1562
 1527 0ae6 8093 0000 		sts AboTimeOut,r24
1563
 1528 0aea 0F90      		pop __tmp_reg__
1564
 1529 0aec 0F90      		pop __tmp_reg__
1565
 1530 0aee 0F90      	 	pop __tmp_reg__
1566
 1531 0af0 C5C0      		rjmp .L63
1567
 1532               	.L127:
1568
 1533 0af2 E091 0000 		lds r30,pRxData
1569
 1534 0af6 F091 0000 		lds r31,(pRxData)+1
1570
 1535 0afa 8081      		ld r24,Z
1571
 1536 0afc 9181      		ldd r25,Z+1
1572
 1537 0afe 9093 0000 		sts (KompassValue)+1,r25
1573
 1538 0b02 8093 0000 		sts KompassValue,r24
1574
 1539 0b06 2091 0000 		lds r18,KompassStartwert
1575
 1540 0b0a 3091 0000 		lds r19,(KompassStartwert)+1
1576
 1541 0b0e 821B      		sub r24,r18
1577
 1542 0b10 930B      		sbc r25,r19
1578
 1543 0b12 845E      		subi r24,lo8(-(540))
1579
 1544 0b14 9D4F      		sbci r25,hi8(-(540))
1580
 1545 0b16 68E6      		ldi r22,lo8(360)
1581
 1546 0b18 71E0      		ldi r23,hi8(360)
1582
 1547 0b1a 0E94 0000 		call __divmodhi4
1583
 1548 0b1e 845B      		subi r24,lo8(-(-180))
1584
 1549 0b20 9040      		sbci r25,hi8(-(-180))
1585
 1550 0b22 9093 0000 		sts (KompassRichtung)+1,r25
1586
 1551 0b26 8093 0000 		sts KompassRichtung,r24
1587
 1552 0b2a A8C0      		rjmp .L63
1588
 1553               	.L128:
1589
 1554 0b2c E091 0000 		lds r30,pRxData
1590
 1555 0b30 F091 0000 		lds r31,(pRxData)+1
1591
 1556 0b34 8081      		ld r24,Z
1592
 1557 0b36 8093 0000 		sts DebugTextAnforderung,r24
1593
 1558 0b3a 8032      		cpi r24,lo8(32)
1594
 1559 0b3c 98F0      		brlo .L149
1595
 1560 0b3e 8FE1      		ldi r24,lo8(31)
1596
 1561 0b40 8093 0000 		sts DebugTextAnforderung,r24
1597
 1562 0b44 0FC0      		rjmp .L149
1598
 1563               	.L130:
1599
 1564 0b46 A091 0000 		lds r26,pRxData
1600
 1565 0b4a B091 0000 		lds r27,(pRxData)+1
1601
 1566 0b4e 8BE0      		ldi r24,lo8(11)
1602
 1567 0b50 E0E0      		ldi r30,lo8(ExternControl)
1603
 1568 0b52 F0E0      		ldi r31,hi8(ExternControl)
1604
 1569 0b54 0D90      		ld __tmp_reg__,X+
1605
 1570 0b56 0192      		st Z+,__tmp_reg__
1606
 1571 0b58 8A95      		dec r24
1607
 1572 0b5a E1F7      		brne .-8
1608
 1573 0b5c 8091 0000 		lds r24,ExternControl+9
1609
 1574 0b60 8093 0000 		sts ConfirmFrame,r24
1610
 1575               	.L149:
1611
 1576 0b64 8FEF      		ldi r24,lo8(-1)
1612
 1577 0b66 8093 0000 		sts PcZugriff,r24
1613
 1578 0b6a 88C0      		rjmp .L63
1614
 1579               	.L131:
1615
 1580 0b6c 8091 0000 		lds r24,Intervall3D
1616
 1581 0b70 9091 0000 		lds r25,(Intervall3D)+1
1617
 1582 0b74 892B      		or r24,r25
1618
 1583 0b76 89F4      		brne .L132
1619
 1584 0b78 E091 0000 		lds r30,pRxData
1620
 1585 0b7c F091 0000 		lds r31,(pRxData)+1
1621
 1586 0b80 E081      		ld r30,Z
1622
 1587 0b82 EE23      		tst r30
1623
 1588 0b84 51F0      		breq .L132
1624
 1589 0b86 8AE0      		ldi r24,lo8(10)
1625
 1590 0b88 E89F      		mul r30,r24
1626
 1591 0b8a C001      		movw r24,r0
1627
 1592 0b8c 1124      		clr r1
1628
 1593 0b8e 0E94 0000 		call SetDelay
1629
 1594 0b92 9093 0000 		sts (Timer3D)+1,r25
1630
 1595 0b96 8093 0000 		sts Timer3D,r24
1631
 1596               	.L132:
1632
 1597 0b9a E091 0000 		lds r30,pRxData
1633
 1598 0b9e F091 0000 		lds r31,(pRxData)+1
1634
 1599 0ba2 9081      		ld r25,Z
1635
 1600 0ba4 8AE0      		ldi r24,lo8(10)
1636
 1601 0ba6 989F      		mul r25,r24
1637
 1602 0ba8 C001      		movw r24,r0
1638
 1603 0baa 1124      		clr r1
1639
 1604 0bac 9093 0000 		sts (Intervall3D)+1,r25
1640
 1605 0bb0 8093 0000 		sts Intervall3D,r24
1641
 1606 0bb4 15C0      		rjmp .L135
1642
 1607               	.L134:
1643
 1608 0bb6 8FEF      		ldi r24,lo8(-1)
1644
 1609 0bb8 8093 0000 		sts PcZugriff,r24
1645
 1610 0bbc E091 0000 		lds r30,pRxData
1646
 1611 0bc0 F091 0000 		lds r31,(pRxData)+1
1647
 1612 0bc4 9081      		ld r25,Z
1648
 1613 0bc6 8AE0      		ldi r24,lo8(10)
1649
 1614 0bc8 989F      		mul r25,r24
1650
 1615 0bca C001      		movw r24,r0
1651
 1616 0bcc 1124      		clr r1
1652
 1617 0bce 9093 0000 		sts (DebugDataIntervall)+1,r25
1653
 1618 0bd2 8093 0000 		sts DebugDataIntervall,r24
1654
 1619 0bd6 892B      		or r24,r25
1655
 1620 0bd8 19F0      		breq .L135
1656
 1621 0bda 81E0      		ldi r24,lo8(1)
1657
 1622 0bdc 8093 0000 		sts DebugDataAnforderung,r24
1658
 1623               	.L135:
1659
 1624 0be0 80EA      		ldi r24,lo8(4000)
1660
 1625 0be2 9FE0      		ldi r25,hi8(4000)
1661
 1626 0be4 0E94 0000 		call SetDelay
1662
 1627 0be8 9093 0000 		sts (AboTimeOut)+1,r25
1663
 1628 0bec 8093 0000 		sts AboTimeOut,r24
1664
 1629 0bf0 45C0      		rjmp .L63
1665
 1630               	.L136:
1666
 1631 0bf2 8FEF      		ldi r24,lo8(-1)
1667
 1632 0bf4 8093 0000 		sts PcZugriff,r24
1668
 1633 0bf8 E091 0000 		lds r30,pRxData
1669
 1634 0bfc F091 0000 		lds r31,(pRxData)+1
1670
 1635 0c00 9081      		ld r25,Z
1671
 1636 0c02 97FD      		sbrc r25,7
1672
 1637 0c04 08C0      		rjmp .L137
1673
 1638 0c06 82E0      		ldi r24,lo8(2)
1674
 1639 0c08 8093 0000 		sts DisplayLine,r24
1675
 1640 0c0c 1092 0000 		sts (Display_Interval)+1,__zero_reg__
1676
 1641 0c10 1092 0000 		sts Display_Interval,__zero_reg__
1677
 1642 0c14 1AC0      		rjmp .L138
1678
 1643               	.L137:
1679
 1644 0c16 9095      		com r25
1680
 1645 0c18 8091 0000 		lds r24,RemoteKeys
1681
 1646 0c1c 892B      		or r24,r25
1682
 1647 0c1e 8093 0000 		sts RemoteKeys,r24
1683
 1648 0c22 9181      		ldd r25,Z+1
1684
 1649 0c24 8AE0      		ldi r24,lo8(10)
1685
 1650 0c26 989F      		mul r25,r24
1686
 1651 0c28 C001      		movw r24,r0
1687
 1652 0c2a 1124      		clr r1
1688
 1653 0c2c 9093 0000 		sts (Display_Interval)+1,r25
1689
 1654 0c30 8093 0000 		sts Display_Interval,r24
1690
 1655 0c34 84E0      		ldi r24,lo8(4)
1691
 1656 0c36 8093 0000 		sts DisplayLine,r24
1692
 1657 0c3a 80EA      		ldi r24,lo8(4000)
1693
 1658 0c3c 9FE0      		ldi r25,hi8(4000)
1694
 1659 0c3e 0E94 0000 		call SetDelay
1695
 1660 0c42 9093 0000 		sts (AboTimeOut)+1,r25
1696
 1661 0c46 8093 0000 		sts AboTimeOut,r24
1697
 1662               	.L138:
1698
 1663 0c4a 81E0      		ldi r24,lo8(1)
1699
 1664 0c4c 8093 0000 		sts DebugDisplayAnforderung,r24
1700
 1665 0c50 15C0      		rjmp .L63
1701
 1666               	.L139:
1702
 1667 0c52 8FEF      		ldi r24,lo8(-1)
1703
 1668 0c54 8093 0000 		sts PcZugriff,r24
1704
 1669 0c58 E091 0000 		lds r30,pRxData
1705
 1670 0c5c F091 0000 		lds r31,(pRxData)+1
1706
 1671 0c60 8081      		ld r24,Z
1707
 1672 0c62 8093 0000 		sts MenuePunkt,r24
1708
 1673 0c66 81E0      		ldi r24,lo8(1)
1709
 1674 0c68 8093 0000 		sts DebugDisplayAnforderung1,r24
1710
 1675 0c6c 07C0      		rjmp .L63
1711
 1676               	.L140:
1712
 1677 0c6e 81E0      		ldi r24,lo8(1)
1713
 1678 0c70 8093 0000 		sts GetVersionAnforderung,r24
1714
 1679 0c74 03C0      		rjmp .L63
1715
 1680               	.L141:
1716
 1681 0c76 81E0      		ldi r24,lo8(1)
1717
 1682 0c78 8093 0000 		sts GetExternalControl,r24
1718
 1683               	.L63:
1719
 1684 0c7c 1092 0000 		sts NeuerDatensatzEmpfangen,__zero_reg__
1720
 1685 0c80 1092 0000 		sts (pRxData)+1,__zero_reg__
1721
 1686 0c84 1092 0000 		sts pRxData,__zero_reg__
1722
 1687 0c88 1092 0000 		sts RxDataLen,__zero_reg__
1723
 1688               	.L61:
1724
 1689               	/* epilogue: frame size=2 */
1725
 1690 0c8c E3E0      		ldi r30,3
1726
 1691 0c8e CE5F      		subi r28,-2
1727
 1692 0c90 0C94 0000 		jmp __epilogue_restores__+30
1728
 1693               	/* epilogue end (size=4) */
1729
 1694               	/* function BearbeiteRxDaten size 982 (972) */
1730
 1696               	.global	uart_putchar
1731
 1698               	uart_putchar:
1732
 1699               	/* prologue: frame size=0 */
1733
 1700               	/* prologue end (size=0) */
1734
 1701 0c94 982F      		mov r25,r24
1735
 1702               	.L154:
1736
 1703 0c96 8091 C000 		lds r24,192
1737
 1704 0c9a 85FF      		sbrs r24,5
1738
 1705 0c9c FCCF      		rjmp .L154
1739
 1706 0c9e 9093 C600 		sts 198,r25
1740
 1707               	/* epilogue: frame size=0 */
1741
 1708 0ca2 0895      		ret
1742
 1709               	/* epilogue end (size=1) */
1743
 1710               	/* function uart_putchar size 8 (7) */
1744
 1712               	.global	UART_Init
1745
 1714               	UART_Init:
1746
 1715               	/* prologue: frame size=0 */
1747
 1716 0ca4 0F93      		push r16
1748
 1717 0ca6 1F93      		push r17
1749
 1718               	/* prologue end (size=2) */
1750
 1719 0ca8 88E1      		ldi r24,lo8(24)
1751
 1720 0caa 8093 C100 		sts 193,r24
1752
 1721 0cae 8091 C000 		lds r24,192
1753
 1722 0cb2 8260      		ori r24,lo8(2)
1754
 1723 0cb4 8093 C000 		sts 192,r24
1755
 1724 0cb8 8091 C100 		lds r24,193
1756
 1725 0cbc 8068      		ori r24,lo8(-128)
1757
 1726 0cbe 8093 C100 		sts 193,r24
1758
 1727 0cc2 8091 C100 		lds r24,193
1759
 1728 0cc6 8064      		ori r24,lo8(64)
1760
 1729 0cc8 8093 C100 		sts 193,r24
1761
 1730 0ccc 00E0      		ldi r16,lo8(0)
1762
 1731 0cce 10E0      		ldi r17,hi8(0)
1763
 1732 0cd0 0093 C500 		sts 197,r16
1764
 1733 0cd4 8AE2      		ldi r24,lo8(42)
1765
 1734 0cd6 90E0      		ldi r25,hi8(42)
1766
 1735 0cd8 8093 C400 		sts 196,r24
1767
 1736 0cdc 8091 0000 		lds r24,DebugDataIntervall
1768
 1737 0ce0 9091 0000 		lds r25,(DebugDataIntervall)+1
1769
 1738 0ce4 0E94 0000 		call SetDelay
1770
 1739 0ce8 9093 0000 		sts (Debug_Timer)+1,r25
1771
 1740 0cec 8093 0000 		sts Debug_Timer,r24
1772
 1741 0cf0 8CED      		ldi r24,lo8(220)
1773
 1742 0cf2 90E0      		ldi r25,hi8(220)
1774
 1743 0cf4 0E94 0000 		call SetDelay
1775
 1744 0cf8 9093 0000 		sts (Kompass_Timer)+1,r25
1776
 1745 0cfc 8093 0000 		sts Kompass_Timer,r24
1777
 1746 0d00 1092 0000 		sts VersionInfo,__zero_reg__
1778
 1747 0d04 80E5      		ldi r24,lo8(80)
1779
 1748 0d06 8093 0000 		sts VersionInfo+1,r24
1780
 1749 0d0a 83E0      		ldi r24,lo8(3)
1781
 1750 0d0c 8093 0000 		sts VersionInfo+4,r24
1782
 1751 0d10 8BE0      		ldi r24,lo8(11)
1783
 1752 0d12 8093 0000 		sts VersionInfo+2,r24
1784
 1753 0d16 1092 0000 		sts VersionInfo+3,__zero_reg__
1785
 1754 0d1a 1093 0000 		sts (pRxData)+1,r17
1786
 1755 0d1e 0093 0000 		sts pRxData,r16
1787
 1756 0d22 1092 0000 		sts RxDataLen,__zero_reg__
1788
 1757               	/* epilogue: frame size=0 */
1789
 1758 0d26 1F91      		pop r17
1790
 1759 0d28 0F91      		pop r16
1791
 1760 0d2a 0895      		ret
1792
 1761               	/* epilogue end (size=3) */
1793
 1762               	/* function UART_Init size 68 (63) */
1794
 1764               		.section	.progmem.data
1795
 1767               	__c.0:
1796
 1768 0200 2121 2120 		.string	"!!! INCOMPATIBLE !!!"
1797
 1768      494E 434F
1798
 1768      4D50 4154
1799
 1768      4942 4C45
1800
 1768      2021 2121
1801
 1769               		.text
1802
 1770               	.global	DatenUebertragung
1803
 1772               	DatenUebertragung:
1804
 1773               	/* prologue: frame size=16 */
1805
 1774 0d2c A0E1      		ldi r26,lo8(16)
1806
 1775 0d2e B0E0      		ldi r27,hi8(16)
1807
 1776 0d30 E0E0      		ldi r30,pm_lo8(1f)
1808
 1777 0d32 F0E0      		ldi r31,pm_hi8(1f)
1809
 1778 0d34 0C94 0000 		jmp __prologue_saves__+24
1810
 1779               	1:
1811
 1780               	/* prologue end (size=6) */
1812
 1781 0d38 8091 0000 		lds r24,UebertragungAbgeschlossen
1813
 1782 0d3c 8823      		tst r24
1814
 1783 0d3e 09F4      		brne .+2
1815
 1784 0d40 C1C2      		rjmp .L158
1816
 1785 0d42 8091 0000 		lds r24,AboTimeOut
1817
 1786 0d46 9091 0000 		lds r25,(AboTimeOut)+1
1818
 1787 0d4a 0E94 0000 		call CheckDelay
1819
 1788 0d4e 8823      		tst r24
1820
 1789 0d50 61F0      		breq .L160
1821
 1790 0d52 1092 0000 		sts (Display_Interval)+1,__zero_reg__
1822
 1791 0d56 1092 0000 		sts Display_Interval,__zero_reg__
1823
 1792 0d5a 1092 0000 		sts (DebugDataIntervall)+1,__zero_reg__
1824
 1793 0d5e 1092 0000 		sts DebugDataIntervall,__zero_reg__
1825
 1794 0d62 1092 0000 		sts (Intervall3D)+1,__zero_reg__
1826
 1795 0d66 1092 0000 		sts Intervall3D,__zero_reg__
1827
 1796               	.L160:
1828
 1797 0d6a 8091 0000 		lds r24,Display_Interval
1829
 1798 0d6e 9091 0000 		lds r25,(Display_Interval)+1
1830
 1799 0d72 892B      		or r24,r25
1831
 1800 0d74 41F0      		breq .L163
1832
 1801 0d76 8091 0000 		lds r24,Display_Timer
1833
 1802 0d7a 9091 0000 		lds r25,(Display_Timer)+1
1834
 1803 0d7e 0E94 0000 		call CheckDelay
1835
 1804 0d82 8823      		tst r24
1836
 1805 0d84 29F4      		brne .L162
1837
 1806               	.L163:
1838
 1807 0d86 8091 0000 		lds r24,DebugDisplayAnforderung
1839
 1808 0d8a 8823      		tst r24
1840
 1809 0d8c 09F4      		brne .+2
1841
 1810 0d8e 60C0      		rjmp .L161
1842
 1811               	.L162:
1843
 1812 0d90 8091 0000 		lds r24,UebertragungAbgeschlossen
1844
 1813 0d94 8823      		tst r24
1845
 1814 0d96 09F4      		brne .+2
1846
 1815 0d98 5BC0      		rjmp .L161
1847
 1816 0d9a 8091 0000 		lds r24,DisplayLine
1848
 1817 0d9e 00E0      		ldi r16,lo8(DisplayBuff)
1849
 1818 0da0 10E0      		ldi r17,hi8(DisplayBuff)
1850
 1819 0da2 8430      		cpi r24,lo8(4)
1851
 1820 0da4 A8F0      		brlo .L164
1852
 1821 0da6 0E94 0000 		call Menu
1853
 1822 0daa 80E5      		ldi r24,lo8(80)
1854
 1823 0dac 90E0      		ldi r25,hi8(80)
1855
 1824 0dae 9F93      		push r25
1856
 1825 0db0 8F93      		push r24
1857
 1826 0db2 1F93      		push r17
1858
 1827 0db4 0F93      		push r16
1859
 1828 0db6 81E0      		ldi r24,lo8(1)
1860
 1829 0db8 8F93      		push r24
1861
 1830 0dba 8F93      		push r24
1862
 1831 0dbc 88E4      		ldi r24,lo8(72)
1863
 1832 0dbe 8F93      		push r24
1864
 1833 0dc0 0E94 0000 		call SendOutData
1865
 1834 0dc4 2DB7      		in r18,__SP_L__
1866
 1835 0dc6 3EB7      		in r19,__SP_H__
1867
 1836 0dc8 295F      		subi r18,lo8(-(7))
1868
 1837 0dca 3F4F      		sbci r19,hi8(-(7))
1869
 1838 0dcc 2DBF      		out __SP_L__,r18
1870
 1839 0dce 34C0      		rjmp .L165
1871
 1840               	.L164:
1872
 1841 0dd0 1092 0000 		sts DispPtr,__zero_reg__
1873
 1842 0dd4 80E0      		ldi r24,lo8(__c.0)
1874
 1843 0dd6 90E0      		ldi r25,hi8(__c.0)
1875
 1844 0dd8 9F93      		push r25
1876
 1845 0dda 8F93      		push r24
1877
 1846 0ddc 80E0      		ldi r24,lo8(pm(Menu_Putchar))
1878
 1847 0dde 90E0      		ldi r25,hi8(pm(Menu_Putchar))
1879
 1848 0de0 9F93      		push r25
1880
 1849 0de2 8F93      		push r24
1881
 1850 0de4 E091 0000 		lds r30,_printf_P
1882
 1851 0de8 F091 0000 		lds r31,(_printf_P)+1
1883
 1852 0dec 0995      		icall
1884
 1853 0dee 84E1      		ldi r24,lo8(20)
1885
 1854 0df0 90E0      		ldi r25,hi8(20)
1886
 1855 0df2 9F93      		push r25
1887
 1856 0df4 8F93      		push r24
1888
 1857 0df6 1F93      		push r17
1889
 1858 0df8 0F93      		push r16
1890
 1859 0dfa 81E0      		ldi r24,lo8(1)
1891
 1860 0dfc 90E0      		ldi r25,hi8(1)
1892
 1861 0dfe 9F93      		push r25
1893
 1862 0e00 8F93      		push r24
1894
 1863 0e02 80E0      		ldi r24,lo8(DisplayLine)
1895
 1864 0e04 90E0      		ldi r25,hi8(DisplayLine)
1896
 1865 0e06 9F93      		push r25
1897
 1866 0e08 8F93      		push r24
1898
 1867 0e0a 82E0      		ldi r24,lo8(2)
1899
 1868 0e0c 8F93      		push r24
1900
 1869 0e0e 81E0      		ldi r24,lo8(1)
1901
 1870 0e10 8F93      		push r24
1902
 1871 0e12 88E4      		ldi r24,lo8(72)
1903
 1872 0e14 8F93      		push r24
1904
 1873 0e16 0E94 0000 		call SendOutData
1905
 1874 0e1a 8091 0000 		lds r24,DisplayLine
1906
 1875 0e1e 982F      		mov r25,r24
1907
 1876 0e20 8F5F      		subi r24,lo8(-(1))
1908
 1877 0e22 8093 0000 		sts DisplayLine,r24
1909
 1878 0e26 2DB7      		in r18,__SP_L__
1910
 1879 0e28 3EB7      		in r19,__SP_H__
1911
 1880 0e2a 215F      		subi r18,lo8(-(15))
1912
 1881 0e2c 3F4F      		sbci r19,hi8(-(15))
1913
 1882 0e2e 2DBF      		out __SP_L__,r18
1914
 1883 0e30 9430      		cpi r25,lo8(4)
1915
 1884 0e32 10F0      		brlo .L165
1916
 1885 0e34 1092 0000 		sts DisplayLine,__zero_reg__
1917
 1886               	.L165:
1918
 1887 0e38 8091 0000 		lds r24,Display_Interval
1919
 1888 0e3c 9091 0000 		lds r25,(Display_Interval)+1
1920
 1889 0e40 0E94 0000 		call SetDelay
1921
 1890 0e44 9093 0000 		sts (Display_Timer)+1,r25
1922
 1891 0e48 8093 0000 		sts Display_Timer,r24
1923
 1892 0e4c 1092 0000 		sts DebugDisplayAnforderung,__zero_reg__
1924
 1893               	.L161:
1925
 1894 0e50 8091 0000 		lds r24,DebugDisplayAnforderung1
1926
 1895 0e54 8823      		tst r24
1927
 1896 0e56 51F1      		breq .L167
1928
 1897 0e58 8091 0000 		lds r24,UebertragungAbgeschlossen
1929
 1898 0e5c 8823      		tst r24
1930
 1899 0e5e 31F1      		breq .L167
1931
 1900 0e60 0E94 0000 		call Menu
1932
 1901 0e64 80E5      		ldi r24,lo8(80)
1933
 1902 0e66 90E0      		ldi r25,hi8(80)
1934
 1903 0e68 9F93      		push r25
1935
 1904 0e6a 8F93      		push r24
1936
 1905 0e6c 80E0      		ldi r24,lo8(DisplayBuff)
1937
 1906 0e6e 90E0      		ldi r25,hi8(DisplayBuff)
1938
 1907 0e70 9F93      		push r25
1939
 1908 0e72 8F93      		push r24
1940
 1909 0e74 21E0      		ldi r18,lo8(1)
1941
 1910 0e76 30E0      		ldi r19,hi8(1)
1942
 1911 0e78 3F93      		push r19
1943
 1912 0e7a 2F93      		push r18
1944
 1913 0e7c 80E0      		ldi r24,lo8(MaxMenue)
1945
 1914 0e7e 90E0      		ldi r25,hi8(MaxMenue)
1946
 1915 0e80 9F93      		push r25
1947
 1916 0e82 8F93      		push r24
1948
 1917 0e84 3F93      		push r19
1949
 1918 0e86 2F93      		push r18
1950
 1919 0e88 80E0      		ldi r24,lo8(MenuePunkt)
1951
 1920 0e8a 90E0      		ldi r25,hi8(MenuePunkt)
1952
 1921 0e8c 9F93      		push r25
1953
 1922 0e8e 8F93      		push r24
1954
 1923 0e90 83E0      		ldi r24,lo8(3)
1955
 1924 0e92 8F93      		push r24
1956
 1925 0e94 81E0      		ldi r24,lo8(1)
1957
 1926 0e96 8F93      		push r24
1958
 1927 0e98 8CE4      		ldi r24,lo8(76)
1959
 1928 0e9a 8F93      		push r24
1960
 1929 0e9c 0E94 0000 		call SendOutData
1961
 1930 0ea0 1092 0000 		sts DebugDisplayAnforderung1,__zero_reg__
1962
 1931 0ea4 8DB7      		in r24,__SP_L__
1963
 1932 0ea6 9EB7      		in r25,__SP_H__
1964
 1933 0ea8 0F96      		adiw r24,15
1965
 1934 0eaa 8DBF      		out __SP_L__,r24
1966
 1935               	.L167:
1967
 1936 0eac 8091 0000 		lds r24,GetVersionAnforderung
1968
 1937 0eb0 8823      		tst r24
1969
 1938 0eb2 D1F0      		breq .L168
1970
 1939 0eb4 8091 0000 		lds r24,UebertragungAbgeschlossen
1971
 1940 0eb8 8823      		tst r24
1972
 1941 0eba B1F0      		breq .L168
1973
 1942 0ebc 8AE0      		ldi r24,lo8(10)
1974
 1943 0ebe 90E0      		ldi r25,hi8(10)
1975
 1944 0ec0 9F93      		push r25
1976
 1945 0ec2 8F93      		push r24
1977
 1946 0ec4 80E0      		ldi r24,lo8(VersionInfo)
1978
 1947 0ec6 90E0      		ldi r25,hi8(VersionInfo)
1979
 1948 0ec8 9F93      		push r25
1980
 1949 0eca 8F93      		push r24
1981
 1950 0ecc 81E0      		ldi r24,lo8(1)
1982
 1951 0ece 8F93      		push r24
1983
 1952 0ed0 8F93      		push r24
1984
 1953 0ed2 86E5      		ldi r24,lo8(86)
1985
 1954 0ed4 8F93      		push r24
1986
 1955 0ed6 0E94 0000 		call SendOutData
1987
 1956 0eda 1092 0000 		sts GetVersionAnforderung,__zero_reg__
1988
 1957 0ede 2DB7      		in r18,__SP_L__
1989
 1958 0ee0 3EB7      		in r19,__SP_H__
1990
 1959 0ee2 295F      		subi r18,lo8(-(7))
1991
 1960 0ee4 3F4F      		sbci r19,hi8(-(7))
1992
 1961 0ee6 2DBF      		out __SP_L__,r18
1993
 1962               	.L168:
1994
 1963 0ee8 8091 0000 		lds r24,GetExternalControl
1995
 1964 0eec 8823      		tst r24
1996
 1965 0eee D9F0      		breq .L169
1997
 1966 0ef0 8091 0000 		lds r24,UebertragungAbgeschlossen
1998
 1967 0ef4 8823      		tst r24
1999
 1968 0ef6 B9F0      		breq .L169
2000
 1969 0ef8 8BE0      		ldi r24,lo8(11)
2001
 1970 0efa 90E0      		ldi r25,hi8(11)
2002
 1971 0efc 9F93      		push r25
2003
 1972 0efe 8F93      		push r24
2004
 1973 0f00 80E0      		ldi r24,lo8(ExternControl)
2005
 1974 0f02 90E0      		ldi r25,hi8(ExternControl)
2006
 1975 0f04 9F93      		push r25
2007
 1976 0f06 8F93      		push r24
2008
 1977 0f08 81E0      		ldi r24,lo8(1)
2009
 1978 0f0a 8F93      		push r24
2010
 1979 0f0c 8091 0000 		lds r24,MeineSlaveAdresse
2011
 1980 0f10 8F93      		push r24
2012
 1981 0f12 87E4      		ldi r24,lo8(71)
2013
 1982 0f14 8F93      		push r24
2014
 1983 0f16 0E94 0000 		call SendOutData
2015
 1984 0f1a 1092 0000 		sts GetExternalControl,__zero_reg__
2016
 1985 0f1e 8DB7      		in r24,__SP_L__
2017
 1986 0f20 9EB7      		in r25,__SP_H__
2018
 1987 0f22 0796      		adiw r24,7
2019
 1988 0f24 8DBF      		out __SP_L__,r24
2020
 1989               	.L169:
2021
 1990 0f26 8091 0000 		lds r24,Kompass_Timer
2022
 1991 0f2a 9091 0000 		lds r25,(Kompass_Timer)+1
2023
 1992 0f2e 0E94 0000 		call CheckDelay
2024
 1993 0f32 8823      		tst r24
2025
 1994 0f34 09F4      		brne .+2
2026
 1995 0f36 61C0      		rjmp .L170
2027
 1996 0f38 8091 0000 		lds r24,UebertragungAbgeschlossen
2028
 1997 0f3c 8823      		tst r24
2029
 1998 0f3e 09F4      		brne .+2
2030
 1999 0f40 5CC0      		rjmp .L170
2031
 2000 0f42 8091 0000 		lds r24,EE_Parameter+28
2032
 2001 0f46 9927      		clr r25
2033
 2002 0f48 880F      		lsl r24
2034
 2003 0f4a 991F      		rol r25
2035
 2004 0f4c 880F      		lsl r24
2036
 2005 0f4e 991F      		rol r25
2037
 2006 0f50 7C01      		movw r14,r24
2038
 2007 0f52 0027      		clr r16
2039
 2008 0f54 F7FC      		sbrc r15,7
2040
 2009 0f56 0095      		com r16
2041
 2010 0f58 102F      		mov r17,r16
2042
 2011 0f5a 8091 0000 		lds r24,IntegralNick
2043
 2012 0f5e 9091 0000 		lds r25,(IntegralNick)+1
2044
 2013 0f62 A091 0000 		lds r26,(IntegralNick)+2
2045
 2014 0f66 B091 0000 		lds r27,(IntegralNick)+3
2046
 2015 0f6a BC01      		movw r22,r24
2047
 2016 0f6c CD01      		movw r24,r26
2048
 2017 0f6e A801      		movw r20,r16
2049
 2018 0f70 9701      		movw r18,r14
2050
 2019 0f72 0E94 0000 		call __divmodsi4
2051
 2020 0f76 3093 0000 		sts (WinkelOut)+1,r19
2052
 2021 0f7a 2093 0000 		sts WinkelOut,r18
2053
 2022 0f7e 8091 0000 		lds r24,IntegralRoll
2054
 2023 0f82 9091 0000 		lds r25,(IntegralRoll)+1
2055
 2024 0f86 A091 0000 		lds r26,(IntegralRoll)+2
2056
 2025 0f8a B091 0000 		lds r27,(IntegralRoll)+3
2057
 2026 0f8e BC01      		movw r22,r24
2058
 2027 0f90 CD01      		movw r24,r26
2059
 2028 0f92 A801      		movw r20,r16
2060
 2029 0f94 9701      		movw r18,r14
2061
 2030 0f96 0E94 0000 		call __divmodsi4
2062
 2031 0f9a 3093 0000 		sts (WinkelOut+2)+1,r19
2063
 2032 0f9e 2093 0000 		sts WinkelOut+2,r18
2064
 2033 0fa2 8091 0000 		lds r24,Parameter_UserParam1
2065
 2034 0fa6 8093 0000 		sts WinkelOut+4,r24
2066
 2035 0faa 8091 0000 		lds r24,Parameter_UserParam2
2067
 2036 0fae 8093 0000 		sts WinkelOut+5,r24
2068
 2037 0fb2 88E0      		ldi r24,lo8(8)
2069
 2038 0fb4 90E0      		ldi r25,hi8(8)
2070
 2039 0fb6 9F93      		push r25
2071
 2040 0fb8 8F93      		push r24
2072
 2041 0fba 80E0      		ldi r24,lo8(WinkelOut)
2073
 2042 0fbc 90E0      		ldi r25,hi8(WinkelOut)
2074
 2043 0fbe 9F93      		push r25
2075
 2044 0fc0 8F93      		push r24
2076
 2045 0fc2 81E0      		ldi r24,lo8(1)
2077
 2046 0fc4 8F93      		push r24
2078
 2047 0fc6 83E0      		ldi r24,lo8(3)
2079
 2048 0fc8 8F93      		push r24
2080
 2049 0fca 8BE6      		ldi r24,lo8(107)
2081
 2050 0fcc 8F93      		push r24
2082
 2051 0fce 0E94 0000 		call SendOutData
2083
 2052 0fd2 8091 0000 		lds r24,WinkelOut+6
2084
 2053 0fd6 2DB7      		in r18,__SP_L__
2085
 2054 0fd8 3EB7      		in r19,__SP_H__
2086
 2055 0fda 295F      		subi r18,lo8(-(7))
2087
 2056 0fdc 3F4F      		sbci r19,hi8(-(7))
2088
 2057 0fde 2DBF      		out __SP_L__,r18
2089
 2058 0fe0 8530      		cpi r24,lo8(5)
2090
 2059 0fe2 18F0      		brlo .L171
2091
 2060 0fe4 86E0      		ldi r24,lo8(6)
2092
 2061 0fe6 8093 0000 		sts WinkelOut+6,r24
2093
 2062               	.L171:
2094
 2063 0fea 83E6      		ldi r24,lo8(99)
2095
 2064 0fec 90E0      		ldi r25,hi8(99)
2096
 2065 0fee 0E94 0000 		call SetDelay
2097
 2066 0ff2 9093 0000 		sts (Kompass_Timer)+1,r25
2098
 2067 0ff6 8093 0000 		sts Kompass_Timer,r24
2099
 2068               	.L170:
2100
 2069 0ffa 8091 0000 		lds r24,DebugDataIntervall
2101
 2070 0ffe 9091 0000 		lds r25,(DebugDataIntervall)+1
2102
 2071 1002 892B      		or r24,r25
2103
 2072 1004 41F0      		breq .L174
2104
 2073 1006 8091 0000 		lds r24,Debug_Timer
2105
 2074 100a 9091 0000 		lds r25,(Debug_Timer)+1
2106
 2075 100e 0E94 0000 		call CheckDelay
2107
 2076 1012 8823      		tst r24
2108
 2077 1014 21F4      		brne .L173
2109
 2078               	.L174:
2110
 2079 1016 8091 0000 		lds r24,DebugDataAnforderung
2111
 2080 101a 8823      		tst r24
2112
 2081 101c 39F1      		breq .L172
2113
 2082               	.L173:
2114
 2083 101e 8091 0000 		lds r24,UebertragungAbgeschlossen
2115
 2084 1022 8823      		tst r24
2116
 2085 1024 19F1      		breq .L172
2117
 2086 1026 0E94 0000 		call CopyDebugValues
2118
 2087 102a 82E4      		ldi r24,lo8(66)
2119
 2088 102c 90E0      		ldi r25,hi8(66)
2120
 2089 102e 9F93      		push r25
2121
 2090 1030 8F93      		push r24
2122
 2091 1032 80E0      		ldi r24,lo8(DebugOut)
2123
 2092 1034 90E0      		ldi r25,hi8(DebugOut)
2124
 2093 1036 9F93      		push r25
2125
 2094 1038 8F93      		push r24
2126
 2095 103a 81E0      		ldi r24,lo8(1)
2127
 2096 103c 8F93      		push r24
2128
 2097 103e 8F93      		push r24
2129
 2098 1040 84E4      		ldi r24,lo8(68)
2130
 2099 1042 8F93      		push r24
2131
 2100 1044 0E94 0000 		call SendOutData
2132
 2101 1048 1092 0000 		sts DebugDataAnforderung,__zero_reg__
2133
 2102 104c 8DB7      		in r24,__SP_L__
2134
 2103 104e 9EB7      		in r25,__SP_H__
2135
 2104 1050 0796      		adiw r24,7
2136
 2105 1052 8DBF      		out __SP_L__,r24
2137
 2106 1054 8091 0000 		lds r24,DebugDataIntervall
2138
 2107 1058 9091 0000 		lds r25,(DebugDataIntervall)+1
2139
 2108 105c 0097      		sbiw r24,0
2140
 2109 105e 31F0      		breq .L172
2141
 2110 1060 0E94 0000 		call SetDelay
2142
 2111 1064 9093 0000 		sts (Debug_Timer)+1,r25
2143
 2112 1068 8093 0000 		sts Debug_Timer,r24
2144
 2113               	.L172:
2145
 2114 106c 8091 0000 		lds r24,Intervall3D
2146
 2115 1070 9091 0000 		lds r25,(Intervall3D)+1
2147
 2116 1074 892B      		or r24,r25
2148
 2117 1076 09F4      		brne .+2
2149
 2118 1078 B8C0      		rjmp .L176
2150
 2119 107a 8091 0000 		lds r24,Timer3D
2151
 2120 107e 9091 0000 		lds r25,(Timer3D)+1
2152
 2121 1082 0E94 0000 		call CheckDelay
2153
 2122 1086 8823      		tst r24
2154
 2123 1088 09F4      		brne .+2
2155
 2124 108a AFC0      		rjmp .L176
2156
 2125 108c 8091 0000 		lds r24,UebertragungAbgeschlossen
2157
 2126 1090 8823      		tst r24
2158
 2127 1092 09F4      		brne .+2
2159
 2128 1094 AAC0      		rjmp .L176
2160
 2129 1096 8091 0000 		lds r24,EE_Parameter+28
2161
 2130 109a 9927      		clr r25
2162
 2131 109c 880F      		lsl r24
2163
 2132 109e 991F      		rol r25
2164
 2133 10a0 880F      		lsl r24
2165
 2134 10a2 991F      		rol r25
2166
 2135 10a4 7C01      		movw r14,r24
2167
 2136 10a6 0027      		clr r16
2168
 2137 10a8 F7FC      		sbrc r15,7
2169
 2138 10aa 0095      		com r16
2170
 2139 10ac 102F      		mov r17,r16
2171
 2140 10ae 8091 0000 		lds r24,IntegralNick
2172
 2141 10b2 9091 0000 		lds r25,(IntegralNick)+1
2173
 2142 10b6 A091 0000 		lds r26,(IntegralNick)+2
2174
 2143 10ba B091 0000 		lds r27,(IntegralNick)+3
2175
 2144 10be BC01      		movw r22,r24
2176
 2145 10c0 CD01      		movw r24,r26
2177
 2146 10c2 A801      		movw r20,r16
2178
 2147 10c4 9701      		movw r18,r14
2179
 2148 10c6 0E94 0000 		call __divmodsi4
2180
 2149 10ca 3093 0000 		sts (Data3D)+1,r19
2181
 2150 10ce 2093 0000 		sts Data3D,r18
2182
 2151 10d2 8091 0000 		lds r24,IntegralRoll
2183
 2152 10d6 9091 0000 		lds r25,(IntegralRoll)+1
2184
 2153 10da A091 0000 		lds r26,(IntegralRoll)+2
2185
 2154 10de B091 0000 		lds r27,(IntegralRoll)+3
2186
 2155 10e2 BC01      		movw r22,r24
2187
 2156 10e4 CD01      		movw r24,r26
2188
 2157 10e6 A801      		movw r20,r16
2189
 2158 10e8 9701      		movw r18,r14
2190
 2159 10ea 0E94 0000 		call __divmodsi4
2191
 2160 10ee 3093 0000 		sts (Data3D+2)+1,r19
2192
 2161 10f2 2093 0000 		sts Data3D+2,r18
2193
 2162 10f6 2091 0000 		lds r18,ErsatzKompass
2194
 2163 10fa 3091 0000 		lds r19,(ErsatzKompass)+1
2195
 2164 10fe 4091 0000 		lds r20,(ErsatzKompass)+2
2196
 2165 1102 5091 0000 		lds r21,(ErsatzKompass)+3
2197
 2166 1106 DA01      		movw r26,r20
2198
 2167 1108 C901      		movw r24,r18
2199
 2168 110a 63E0      		ldi r22,3
2200
 2169 110c 880F      	1:	lsl r24
2201
 2170 110e 991F      		rol r25
2202
 2171 1110 AA1F      		rol r26
2203
 2172 1112 BB1F      		rol r27
2204
 2173 1114 6A95      		dec r22
2205
 2174 1116 D1F7      		brne 1b
2206
 2175 1118 820F      		add r24,r18
2207
 2176 111a 931F      		adc r25,r19
2208
 2177 111c A41F      		adc r26,r20
2209
 2178 111e B51F      		adc r27,r21
2210
 2179 1120 820F      		add r24,r18
2211
 2180 1122 931F      		adc r25,r19
2212
 2181 1124 A41F      		adc r26,r20
2213
 2182 1126 B51F      		adc r27,r21
2214
 2183 1128 2091 0000 		lds r18,GIER_GRAD_FAKTOR
2215
 2184 112c 3091 0000 		lds r19,(GIER_GRAD_FAKTOR)+1
2216
 2185 1130 4091 0000 		lds r20,(GIER_GRAD_FAKTOR)+2
2217
 2186 1134 5091 0000 		lds r21,(GIER_GRAD_FAKTOR)+3
2218
 2187 1138 BC01      		movw r22,r24
2219
 2188 113a CD01      		movw r24,r26
2220
 2189 113c 0E94 0000 		call __divmodsi4
2221
 2190 1140 3093 0000 		sts (Data3D+4)+1,r19
2222
 2191 1144 2093 0000 		sts Data3D+4,r18
2223
 2192 1148 8091 0000 		lds r24,SummeNick
2224
 2193 114c 9091 0000 		lds r25,(SummeNick)+1
2225
 2194 1150 A091 0000 		lds r26,(SummeNick)+2
2226
 2195 1154 B091 0000 		lds r27,(SummeNick)+3
2227
 2196 1158 39E0      		ldi r19,9
2228
 2197 115a B595      	1:	asr r27
2229
 2198 115c A795      		ror r26
2230
 2199 115e 9795      		ror r25
2231
 2200 1160 8795      		ror r24
2232
 2201 1162 3A95      		dec r19
2233
 2202 1164 D1F7      		brne 1b
2234
 2203 1166 8093 0000 		sts Data3D+6,r24
2235
 2204 116a 8091 0000 		lds r24,SummeRoll
2236
 2205 116e 9091 0000 		lds r25,(SummeRoll)+1
2237
 2206 1172 A091 0000 		lds r26,(SummeRoll)+2
2238
 2207 1176 B091 0000 		lds r27,(SummeRoll)+3
2239
 2208 117a 29E0      		ldi r18,9
2240
 2209 117c B595      	1:	asr r27
2241
 2210 117e A795      		ror r26
2242
 2211 1180 9795      		ror r25
2243
 2212 1182 8795      		ror r24
2244
 2213 1184 2A95      		dec r18
2245
 2214 1186 D1F7      		brne 1b
2246
 2215 1188 8093 0000 		sts Data3D+7,r24
2247
 2216 118c 8091 0000 		lds r24,Mess_Integral_Gier
2248
 2217 1190 9091 0000 		lds r25,(Mess_Integral_Gier)+1
2249
 2218 1194 A091 0000 		lds r26,(Mess_Integral_Gier)+2
2250
 2219 1198 B091 0000 		lds r27,(Mess_Integral_Gier)+3
2251
 2220 119c 09E0      		ldi r16,9
2252
 2221 119e B595      	1:	asr r27
2253
 2222 11a0 A795      		ror r26
2254
 2223 11a2 9795      		ror r25
2255
 2224 11a4 8795      		ror r24
2256
 2225 11a6 0A95      		dec r16
2257
 2226 11a8 D1F7      		brne 1b
2258
 2227 11aa 8093 0000 		sts Data3D+8,r24
2259
 2228 11ae 8EE0      		ldi r24,lo8(14)
2260
 2229 11b0 90E0      		ldi r25,hi8(14)
2261
 2230 11b2 9F93      		push r25
2262
 2231 11b4 8F93      		push r24
2263
 2232 11b6 80E0      		ldi r24,lo8(Data3D)
2264
 2233 11b8 90E0      		ldi r25,hi8(Data3D)
2265
 2234 11ba 9F93      		push r25
2266
 2235 11bc 8F93      		push r24
2267
 2236 11be 81E0      		ldi r24,lo8(1)
2268
 2237 11c0 8F93      		push r24
2269
 2238 11c2 8F93      		push r24
2270
 2239 11c4 83E4      		ldi r24,lo8(67)
2271
 2240 11c6 8F93      		push r24
2272
 2241 11c8 0E94 0000 		call SendOutData
2273
 2242 11cc 8091 0000 		lds r24,Intervall3D
2274
 2243 11d0 9091 0000 		lds r25,(Intervall3D)+1
2275
 2244 11d4 0E94 0000 		call SetDelay
2276
 2245 11d8 9093 0000 		sts (Timer3D)+1,r25
2277
 2246 11dc 8093 0000 		sts Timer3D,r24
2278
 2247 11e0 2DB7      		in r18,__SP_L__
2279
 2248 11e2 3EB7      		in r19,__SP_H__
2280
 2249 11e4 295F      		subi r18,lo8(-(7))
2281
 2250 11e6 3F4F      		sbci r19,hi8(-(7))
2282
 2251 11e8 2DBF      		out __SP_L__,r18
2283
 2252               	.L176:
2284
 2253 11ea 8091 0000 		lds r24,DebugTextAnforderung
2285
 2254 11ee 8F3F      		cpi r24,lo8(-1)
2286
 2255 11f0 71F1      		breq .L177
2287
 2256 11f2 9927      		clr r25
2288
 2257 11f4 14E0      		ldi r17,4
2289
 2258 11f6 880F      	1:	lsl r24
2290
 2259 11f8 991F      		rol r25
2291
 2260 11fa 1A95      		dec r17
2292
 2261 11fc E1F7      		brne 1b
2293
 2262 11fe 8050      		subi r24,lo8(-(ANALOG_TEXT))
2294
 2263 1200 9040      		sbci r25,hi8(-(ANALOG_TEXT))
2295
 2264 1202 40E1      		ldi r20,lo8(16)
2296
 2265 1204 50E0      		ldi r21,hi8(16)
2297
 2266 1206 BC01      		movw r22,r24
2298
 2267 1208 CE01      		movw r24,r28
2299
 2268 120a 0196      		adiw r24,1
2300
 2269 120c 0E94 0000 		call memcpy_P
2301
 2270 1210 80E1      		ldi r24,lo8(16)
2302
 2271 1212 90E0      		ldi r25,hi8(16)
2303
 2272 1214 9F93      		push r25
2304
 2273 1216 8F93      		push r24
2305
 2274 1218 CE01      		movw r24,r28
2306
 2275 121a 0196      		adiw r24,1
2307
 2276 121c 9F93      		push r25
2308
 2277 121e 8F93      		push r24
2309
 2278 1220 81E0      		ldi r24,lo8(1)
2310
 2279 1222 90E0      		ldi r25,hi8(1)
2311
 2280 1224 9F93      		push r25
2312
 2281 1226 8F93      		push r24
2313
 2282 1228 80E0      		ldi r24,lo8(DebugTextAnforderung)
2314
 2283 122a 90E0      		ldi r25,hi8(DebugTextAnforderung)
2315
 2284 122c 9F93      		push r25
2316
 2285 122e 8F93      		push r24
2317
 2286 1230 82E0      		ldi r24,lo8(2)
2318
 2287 1232 8F93      		push r24
2319
 2288 1234 81E0      		ldi r24,lo8(1)
2320
 2289 1236 8F93      		push r24
2321
 2290 1238 81E4      		ldi r24,lo8(65)
2322
 2291 123a 8F93      		push r24
2323
 2292 123c 0E94 0000 		call SendOutData
2324
 2293 1240 8FEF      		ldi r24,lo8(-1)
2325
 2294 1242 8093 0000 		sts DebugTextAnforderung,r24
2326
 2295 1246 8DB7      		in r24,__SP_L__
2327
 2296 1248 9EB7      		in r25,__SP_H__
2328
 2297 124a 0B96      		adiw r24,11
2329
 2298 124c 8DBF      		out __SP_L__,r24
2330
 2299               	.L177:
2331
 2300 124e 8091 0000 		lds r24,ConfirmFrame
2332
 2301 1252 8823      		tst r24
2333
 2302 1254 D1F0      		breq .L178
2334
 2303 1256 8091 0000 		lds r24,UebertragungAbgeschlossen
2335
 2304 125a 8823      		tst r24
2336
 2305 125c B1F0      		breq .L178
2337
 2306 125e 81E0      		ldi r24,lo8(1)
2338
 2307 1260 90E0      		ldi r25,hi8(1)
2339
 2308 1262 9F93      		push r25
2340
 2309 1264 8F93      		push r24
2341
 2310 1266 80E0      		ldi r24,lo8(ConfirmFrame)
2342
 2311 1268 90E0      		ldi r25,hi8(ConfirmFrame)
2343
 2312 126a 9F93      		push r25
2344
 2313 126c 8F93      		push r24
2345
 2314 126e 81E0      		ldi r24,lo8(1)
2346
 2315 1270 8F93      		push r24
2347
 2316 1272 8F93      		push r24
2348
 2317 1274 82E4      		ldi r24,lo8(66)
2349
 2318 1276 8F93      		push r24
2350
 2319 1278 0E94 0000 		call SendOutData
2351
 2320 127c 1092 0000 		sts ConfirmFrame,__zero_reg__
2352
 2321 1280 2DB7      		in r18,__SP_L__
2353
 2322 1282 3EB7      		in r19,__SP_H__
2354
 2323 1284 295F      		subi r18,lo8(-(7))
2355
 2324 1286 3F4F      		sbci r19,hi8(-(7))
2356
 2325 1288 2DBF      		out __SP_L__,r18
2357
 2326               	.L178:
2358
 2327 128a 8091 0000 		lds r24,GetPPMChannelAnforderung
2359
 2328 128e 8823      		tst r24
2360
 2329 1290 C9F0      		breq .L158
2361
 2330 1292 8091 0000 		lds r24,UebertragungAbgeschlossen
2362
 2331 1296 8823      		tst r24
2363
 2332 1298 A9F0      		breq .L158
2364
 2333 129a 84E3      		ldi r24,lo8(52)
2365
 2334 129c 90E0      		ldi r25,hi8(52)
2366
 2335 129e 9F93      		push r25
2367
 2336 12a0 8F93      		push r24
2368
 2337 12a2 80E0      		ldi r24,lo8(PPM_in)
2369
 2338 12a4 90E0      		ldi r25,hi8(PPM_in)
2370
 2339 12a6 9F93      		push r25
2371
 2340 12a8 8F93      		push r24
2372
 2341 12aa 81E0      		ldi r24,lo8(1)
2373
 2342 12ac 8F93      		push r24
2374
 2343 12ae 8F93      		push r24
2375
 2344 12b0 80E5      		ldi r24,lo8(80)
2376
 2345 12b2 8F93      		push r24
2377
 2346 12b4 0E94 0000 		call SendOutData
2378
 2347 12b8 1092 0000 		sts GetPPMChannelAnforderung,__zero_reg__
2379
 2348 12bc 8DB7      		in r24,__SP_L__
2380
 2349 12be 9EB7      		in r25,__SP_H__
2381
 2350 12c0 0796      		adiw r24,7
2382
 2351 12c2 8DBF      		out __SP_L__,r24
2383
 2352               	.L158:
2384
 2353               	/* epilogue: frame size=16 */
2385
 2354 12c4 E6E0      		ldi r30,6
2386
 2355 12c6 C05F      		subi r28,-16
2387
 2356 12c8 0C94 0000 		jmp __epilogue_restores__+24
2388
 2357               	/* epilogue end (size=4) */
2389
 2358               	/* function DatenUebertragung size 720 (710) */
2390
 2360               		.comm Debug_Timer,2,1
2391
 2361               		.comm Kompass_Timer,2,1
2392
 2362               		.comm MotorTest,16,1
2393
 2363               		.comm DebugOut,66,1
2394
 2364               		.comm WinkelOut,8,1
2395
 2365               		.comm Data3D,14,1
2396
 2366               		.comm ExternControl,11,1
2397
 2367               		.comm VersionInfo,10,1
2398
 2368               		.comm TxdBuffer,160,1
2399
 2369               		.comm RxdBuffer,160,1
2400
 2370               		.comm ConfirmFrame,1,1
2401
 2371               		.comm Display_Timer,2,1
2402
 2372               		.comm Timer3D,2,1
2403
 2373               	/* File "uart.c": code 2416 = 0x0970 (2325), prologues  47, epilogues  44 */
2404
DEFINED SYMBOLS
2405
                            *ABS*:00000000 uart.c
2406
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:3      *ABS*:0000003f __SREG__
2407
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:4      *ABS*:0000003e __SP_H__
2408
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:5      *ABS*:0000003d __SP_L__
2409
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:6      *ABS*:00000000 __tmp_reg__
2410
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:7      *ABS*:00000001 __zero_reg__
2411
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:14     .progmem.data:00000000 ANALOG_TEXT
2412
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:52     .bss:00000000 AboTimeOut
2413
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:58     .bss:00000002 Display_Interval
2414
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:64     .bss:00000004 Intervall3D
2415
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:70     .bss:00000006 DebugDataIntervall
2416
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:76     .data:00000000 MeineSlaveAdresse
2417
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:81     .data:00000001 PcZugriff
2418
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:86     .data:00000002 DebugTextAnforderung
2419
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:93     .bss:00000008 PC_MotortestActive
2420
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:99     .bss:00000009 PC_DebugTimeout
2421
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:105    .bss:0000000a RxDataLen
2422
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:111    .bss:0000000b pRxData
2423
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:117    .bss:0000000d AnzahlEmpfangsBytes
2424
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:123    .bss:0000000e CntCrcError
2425
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:129    .data:00000003 UebertragungAbgeschlossen
2426
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:136    .bss:0000000f NeueKoordinateEmpfangen
2427
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:142    .bss:00000010 NeuerDatensatzEmpfangen
2428
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:148    .bss:00000011 SioTmp
2429
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:154    .bss:00000012 DisplayLine
2430
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:160    .bss:00000013 GetPPMChannelAnforderung
2431
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:166    .bss:00000014 GetVersionAnforderung
2432
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:172    .bss:00000015 DebugDataAnforderung
2433
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:178    .bss:00000016 DebugDisplayAnforderung
2434
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:184    .bss:00000017 DebugDisplayAnforderung1
2435
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:190    .bss:00000018 GetExternalControl
2436
                             .bss:00000019 ptr.6
2437
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:196    .text:00000000 __vector_22
2438
                            *COM*:000000a0 TxdBuffer
2439
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:192    .bss:0000001b crc.1
2440
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:250    .bss:0000001d crc1.2
2441
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:251    .bss:0000001e crc2.3
2442
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:252    .bss:0000001f buf_ptr.4
2443
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:253    .bss:00000020 UartState.5
2444
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:257    .text:0000006c __vector_20
2445
                            *COM*:000000a0 RxdBuffer
2446
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:473    .text:0000023c AddCRC
2447
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:529    .text:0000029c SendOutData
2448
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:729    .text:00000414 Decode64
2449
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:842    .text:000004e8 BearbeiteRxDaten
2450
                            *COM*:00000010 MotorTest
2451
                            *COM*:0000000a VersionInfo
2452
                            *COM*:0000000b ExternControl
2453
                            *COM*:00000001 ConfirmFrame
2454
                            *COM*:00000002 Timer3D
2455
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:1698   .text:00000c94 uart_putchar
2456
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:1714   .text:00000ca4 UART_Init
2457
                            *COM*:00000002 Debug_Timer
2458
                            *COM*:00000002 Kompass_Timer
2459
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:1767   .progmem.data:00000200 __c.0
2460
C:\Users\Arthur-P\AppData\Local\Temp/ccCEaaaa.s:1772   .text:00000d2c DatenUebertragung
2461
                            *COM*:00000002 Display_Timer
2462
                            *COM*:00000008 WinkelOut
2463
                            *COM*:00000042 DebugOut
2464
                            *COM*:0000000e Data3D
2465
 
2466
UNDEFINED SYMBOLS
2467
__do_copy_data
2468
__do_clear_bss
2469
LcdClear
2470
ServoActive
2471
__prologue_saves__
2472
__epilogue_restores__
2473
KompassValue
2474
KompassStartwert
2475
__divmodhi4
2476
KompassRichtung
2477
Mixer
2478
MixerTable_WriteToEEProm
2479
GetActiveParamSet
2480
ParamSet_ReadFromEEProm
2481
EE_Parameter
2482
ParamSet_WriteToEEProm
2483
__mulsi3
2484
Umschlag180Nick
2485
Umschlag180Roll
2486
MotorenEin
2487
Piep
2488
LipoDetection
2489
LIBFC_ReceiverInit
2490
PPM_in
2491
I2C_ReadBLConfig
2492
BLConfig
2493
I2C_WriteBLConfig
2494
SetDelay
2495
RemoteKeys
2496
MenuePunkt
2497
CheckDelay
2498
DisplayBuff
2499
Menu
2500
DispPtr
2501
Menu_Putchar
2502
_printf_P
2503
MaxMenue
2504
IntegralNick
2505
__divmodsi4
2506
IntegralRoll
2507
Parameter_UserParam1
2508
Parameter_UserParam2
2509
CopyDebugValues
2510
ErsatzKompass
2511
GIER_GRAD_FAKTOR
2512
SummeNick
2513
SummeRoll
2514
Mess_Integral_Gier
2515
memcpy_P