Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
21 | user | 1 | 1 .file "uart.c" |
2 | 2 .arch atmega644 |
||
3 | 3 __SREG__ = 0x3f |
||
4 | 4 __SP_H__ = 0x3e |
||
5 | 5 __SP_L__ = 0x3d |
||
6 | 6 __tmp_reg__ = 0 |
||
7 | 7 __zero_reg__ = 1 |
||
8 | 8 .global __do_copy_data |
||
9 | 9 .global __do_clear_bss |
||
10 | 10 .text |
||
11 | 11 .global __vector_22 |
||
12 | 13 __vector_22: |
||
13 | 14 /* prologue: frame size=0 */ |
||
14 | 15 0000 1F92 push __zero_reg__ |
||
15 | 16 0002 0F92 push __tmp_reg__ |
||
16 | 17 0004 0FB6 in __tmp_reg__,__SREG__ |
||
17 | 18 0006 0F92 push __tmp_reg__ |
||
18 | 19 0008 1124 clr __zero_reg__ |
||
19 | 20 000a 8F93 push r24 |
||
20 | 21 000c 9F93 push r25 |
||
21 | 22 000e EF93 push r30 |
||
22 | 23 0010 FF93 push r31 |
||
23 | 24 /* prologue end (size=9) */ |
||
24 | 25 0012 8091 0000 lds r24,UebertragungAbgeschlossen |
||
25 | 26 0016 8823 tst r24 |
||
26 | 27 0018 01F4 brne .L2 |
||
27 | 28 001a 8091 0000 lds r24,ptr.2038 |
||
28 | 29 001e 9091 0000 lds r25,(ptr.2038)+1 |
||
29 | 30 0022 0196 adiw r24,1 |
||
30 | 31 0024 9093 0000 sts (ptr.2038)+1,r25 |
||
31 | 32 0028 8093 0000 sts ptr.2038,r24 |
||
32 | 33 002c FC01 movw r30,r24 |
||
33 | 34 002e E050 subi r30,lo8(-(SendeBuffer)) |
||
34 | 35 0030 F040 sbci r31,hi8(-(SendeBuffer)) |
||
35 | 36 0032 E081 ld r30,Z |
||
36 | 37 0034 ED30 cpi r30,lo8(13) |
||
37 | 38 0036 01F0 breq .L4 |
||
38 | 39 0038 8639 cpi r24,150 |
||
39 | 40 003a 9105 cpc r25,__zero_reg__ |
||
40 | 41 003c 01F4 brne .L6 |
||
41 | 42 .L4: |
||
42 | 43 003e 1092 0000 sts (ptr.2038)+1,__zero_reg__ |
||
43 | 44 0042 1092 0000 sts ptr.2038,__zero_reg__ |
||
44 | 45 0046 81E0 ldi r24,lo8(1) |
||
45 | 46 0048 8093 0000 sts UebertragungAbgeschlossen,r24 |
||
46 | 47 .L6: |
||
47 | 48 004c E093 C600 sts 198,r30 |
||
48 | 49 0050 00C0 rjmp .L8 |
||
49 | 50 .L2: |
||
50 | 51 0052 1092 0000 sts (ptr.2038)+1,__zero_reg__ |
||
51 | 52 0056 1092 0000 sts ptr.2038,__zero_reg__ |
||
52 | 53 .L8: |
||
53 | 54 /* epilogue: frame size=0 */ |
||
54 | 55 005a FF91 pop r31 |
||
55 | 56 005c EF91 pop r30 |
||
56 | 57 005e 9F91 pop r25 |
||
57 | 58 0060 8F91 pop r24 |
||
58 | 59 0062 0F90 pop __tmp_reg__ |
||
59 | 60 0064 0FBE out __SREG__,__tmp_reg__ |
||
60 | 61 0066 0F90 pop __tmp_reg__ |
||
61 | 62 0068 1F90 pop __zero_reg__ |
||
62 | 63 006a 1895 reti |
||
63 | 64 /* epilogue end (size=9) */ |
||
64 | 65 /* function __vector_22 size 54 (36) */ |
||
65 | 67 .global GPSscanData |
||
66 | 69 GPSscanData: |
||
67 | 70 /* prologue: frame size=0 */ |
||
68 | 71 /* prologue end (size=0) */ |
||
69 | 72 006c 8091 0000 lds r24,navStatus+16 |
||
70 | 73 0070 8130 cpi r24,lo8(1) |
||
71 | 74 0072 01F4 brne .L10 |
||
72 | 75 0074 8091 0000 lds r24,navStatus+4 |
||
73 | 76 0078 8093 0000 sts actualPos+32,r24 |
||
74 | 77 007c 1092 0000 sts navStatus+16,__zero_reg__ |
||
75 | 78 .L10: |
||
76 | 79 0080 8091 0000 lds r24,navPosUtm+18 |
||
77 | 80 0084 8130 cpi r24,lo8(1) |
||
78 | 81 0086 01F0 breq .+2 |
||
79 | 82 0088 00C0 rjmp .L12 |
||
80 | 83 008a 6091 0000 lds r22,navPosUtm+8 |
||
81 | 84 008e 7091 0000 lds r23,(navPosUtm+8)+1 |
||
82 | 85 0092 8091 0000 lds r24,(navPosUtm+8)+2 |
||
83 | 86 0096 9091 0000 lds r25,(navPosUtm+8)+3 |
||
84 | 87 009a 2AE0 ldi r18,lo8(10) |
||
85 | 88 009c 30E0 ldi r19,hi8(10) |
||
86 | 89 009e 40E0 ldi r20,hlo8(10) |
||
87 | 90 00a0 50E0 ldi r21,hhi8(10) |
||
88 | 91 00a2 0E94 0000 call __divmodsi4 |
||
89 | 92 00a6 2093 0000 sts actualPos,r18 |
||
90 | 93 00aa 3093 0000 sts (actualPos)+1,r19 |
||
91 | 94 00ae 4093 0000 sts (actualPos)+2,r20 |
||
92 | 95 00b2 5093 0000 sts (actualPos)+3,r21 |
||
93 | 96 00b6 6091 0000 lds r22,navPosUtm+4 |
||
94 | 97 00ba 7091 0000 lds r23,(navPosUtm+4)+1 |
||
95 | 98 00be 8091 0000 lds r24,(navPosUtm+4)+2 |
||
96 | 99 00c2 9091 0000 lds r25,(navPosUtm+4)+3 |
||
97 | 100 00c6 2AE0 ldi r18,lo8(10) |
||
98 | 101 00c8 30E0 ldi r19,hi8(10) |
||
99 | 102 00ca 40E0 ldi r20,hlo8(10) |
||
100 | 103 00cc 50E0 ldi r21,hhi8(10) |
||
101 | 104 00ce 0E94 0000 call __divmodsi4 |
||
102 | 105 00d2 2093 0000 sts actualPos+4,r18 |
||
103 | 106 00d6 3093 0000 sts (actualPos+4)+1,r19 |
||
104 | 107 00da 4093 0000 sts (actualPos+4)+2,r20 |
||
105 | 108 00de 5093 0000 sts (actualPos+4)+3,r21 |
||
106 | 109 00e2 6091 0000 lds r22,navPosUtm+12 |
||
107 | 110 00e6 7091 0000 lds r23,(navPosUtm+12)+1 |
||
108 | 111 00ea 8091 0000 lds r24,(navPosUtm+12)+2 |
||
109 | 112 00ee 9091 0000 lds r25,(navPosUtm+12)+3 |
||
110 | 113 00f2 2AE0 ldi r18,lo8(10) |
||
111 | 114 00f4 30E0 ldi r19,hi8(10) |
||
112 | 115 00f6 40E0 ldi r20,hlo8(10) |
||
113 | 116 00f8 50E0 ldi r21,hhi8(10) |
||
114 | 117 00fa 0E94 0000 call __divmodsi4 |
||
115 | 118 00fe 2093 0000 sts actualPos+8,r18 |
||
116 | 119 0102 3093 0000 sts (actualPos+8)+1,r19 |
||
117 | 120 0106 4093 0000 sts (actualPos+8)+2,r20 |
||
118 | 121 010a 5093 0000 sts (actualPos+8)+3,r21 |
||
119 | 122 010e 1092 0000 sts navPosUtm+18,__zero_reg__ |
||
120 | 123 .L12: |
||
121 | 124 0112 8091 0000 lds r24,navPosLlh+28 |
||
122 | 125 0116 8130 cpi r24,lo8(1) |
||
123 | 126 0118 01F4 brne .L14 |
||
124 | 127 011a 1092 0000 sts navPosLlh+28,__zero_reg__ |
||
125 | 128 .L14: |
||
126 | 129 011e 8091 0000 lds r24,navVelNed+36 |
||
127 | 130 0122 8130 cpi r24,lo8(1) |
||
128 | 131 0124 01F4 brne .L16 |
||
129 | 132 0126 8091 0000 lds r24,navVelNed+4 |
||
130 | 133 012a 9091 0000 lds r25,(navVelNed+4)+1 |
||
131 | 134 012e A091 0000 lds r26,(navVelNed+4)+2 |
||
132 | 135 0132 B091 0000 lds r27,(navVelNed+4)+3 |
||
133 | 136 0136 8093 0000 sts actualPos+12,r24 |
||
134 | 137 013a 9093 0000 sts (actualPos+12)+1,r25 |
||
135 | 138 013e A093 0000 sts (actualPos+12)+2,r26 |
||
136 | 139 0142 B093 0000 sts (actualPos+12)+3,r27 |
||
137 | 140 0146 8091 0000 lds r24,navVelNed+8 |
||
138 | 141 014a 9091 0000 lds r25,(navVelNed+8)+1 |
||
139 | 142 014e A091 0000 lds r26,(navVelNed+8)+2 |
||
140 | 143 0152 B091 0000 lds r27,(navVelNed+8)+3 |
||
141 | 144 0156 8093 0000 sts actualPos+16,r24 |
||
142 | 145 015a 9093 0000 sts (actualPos+16)+1,r25 |
||
143 | 146 015e A093 0000 sts (actualPos+16)+2,r26 |
||
144 | 147 0162 B093 0000 sts (actualPos+16)+3,r27 |
||
145 | 148 0166 1092 0000 sts navVelNed+36,__zero_reg__ |
||
146 | 149 .L16: |
||
147 | 150 016a 8091 0000 lds r24,actualPos+32 |
||
148 | 151 016e 8111 cpse r24,__zero_reg__ |
||
149 | 152 0170 289A sbi 37-0x20,0 |
||
150 | 153 .L20: |
||
151 | 154 0172 0895 ret |
||
152 | 155 /* epilogue: frame size=0 */ |
||
153 | 156 /* epilogue: noreturn */ |
||
154 | 157 /* epilogue end (size=0) */ |
||
155 | 158 /* function GPSscanData size 133 (133) */ |
||
156 | 160 .global __vector_20 |
||
157 | 162 __vector_20: |
||
158 | 163 /* prologue: frame size=0 */ |
||
159 | 164 0174 1F92 push __zero_reg__ |
||
160 | 165 0176 0F92 push __tmp_reg__ |
||
161 | 166 0178 0FB6 in __tmp_reg__,__SREG__ |
||
162 | 167 017a 0F92 push __tmp_reg__ |
||
163 | 168 017c 1124 clr __zero_reg__ |
||
164 | 169 017e 2F93 push r18 |
||
165 | 170 0180 3F93 push r19 |
||
166 | 171 0182 4F93 push r20 |
||
167 | 172 0184 5F93 push r21 |
||
168 | 173 0186 6F93 push r22 |
||
169 | 174 0188 7F93 push r23 |
||
170 | 175 018a 8F93 push r24 |
||
171 | 176 018c 9F93 push r25 |
||
172 | 177 018e AF93 push r26 |
||
173 | 178 0190 BF93 push r27 |
||
174 | 179 0192 CF93 push r28 |
||
175 | 180 0194 DF93 push r29 |
||
176 | 181 0196 EF93 push r30 |
||
177 | 182 0198 FF93 push r31 |
||
178 | 183 /* prologue end (size=19) */ |
||
179 | 184 019a 8091 C600 lds r24,198 |
||
180 | 185 019e 8093 0000 sts SioTmp,r24 |
||
181 | 186 01a2 8091 C000 lds r24,192 |
||
182 | 187 01a6 4091 0000 lds r20,SioTmp |
||
183 | 188 01aa 8871 andi r24,lo8(24) |
||
184 | 189 01ac 01F0 breq .+2 |
||
185 | 190 01ae 00C0 rjmp .L22 |
||
186 | 191 01b0 8091 0000 lds r24,gpsState |
||
187 | 192 01b4 8430 cpi r24,lo8(4) |
||
188 | 193 01b6 01F4 brne .+2 |
||
189 | 194 01b8 00C0 rjmp .L29 |
||
190 | 195 01ba 8530 cpi r24,lo8(5) |
||
191 | 196 01bc 00F4 brsh .L34 |
||
192 | 197 01be 8130 cpi r24,lo8(1) |
||
193 | 198 01c0 01F0 breq .L26 |
||
194 | 199 01c2 8130 cpi r24,lo8(1) |
||
195 | 200 01c4 00F0 brlo .L25 |
||
196 | 201 01c6 8230 cpi r24,lo8(2) |
||
197 | 202 01c8 01F0 breq .L27 |
||
198 | 203 01ca 8330 cpi r24,lo8(3) |
||
199 | 204 01cc 01F0 breq .+2 |
||
200 | 205 01ce 00C0 rjmp .L24 |
||
201 | 206 01d0 00C0 rjmp .L28 |
||
202 | 207 .L34: |
||
203 | 208 01d2 8630 cpi r24,lo8(6) |
||
204 | 209 01d4 01F4 brne .+2 |
||
205 | 210 01d6 00C0 rjmp .L31 |
||
206 | 211 01d8 8630 cpi r24,lo8(6) |
||
207 | 212 01da 00F4 brsh .+2 |
||
208 | 213 01dc 00C0 rjmp .L30 |
||
209 | 214 01de 8730 cpi r24,lo8(7) |
||
210 | 215 01e0 01F4 brne .+2 |
||
211 | 216 01e2 00C0 rjmp .L32 |
||
212 | 217 01e4 8830 cpi r24,lo8(8) |
||
213 | 218 01e6 01F0 breq .+2 |
||
214 | 219 01e8 00C0 rjmp .L24 |
||
215 | 220 01ea 00C0 rjmp .L33 |
||
216 | 221 .L25: |
||
217 | 222 01ec 453B cpi r20,lo8(-75) |
||
218 | 223 01ee 01F0 breq .+2 |
||
219 | 224 01f0 00C0 rjmp .L35 |
||
220 | 225 01f2 81E0 ldi r24,lo8(1) |
||
221 | 226 01f4 00C0 rjmp .L82 |
||
222 | 227 .L26: |
||
223 | 228 01f6 4236 cpi r20,lo8(98) |
||
224 | 229 01f8 01F4 brne .L37 |
||
225 | 230 01fa 82E0 ldi r24,lo8(2) |
||
226 | 231 .L82: |
||
227 | 232 01fc 8093 0000 sts gpsState,r24 |
||
228 | 233 0200 00C0 rjmp .L35 |
||
229 | 234 .L37: |
||
230 | 235 0202 453B cpi r20,lo8(-75) |
||
231 | 236 0204 01F4 brne .+2 |
||
232 | 237 0206 00C0 rjmp .L35 |
||
233 | 238 0208 00C0 rjmp .L24 |
||
234 | 239 .L27: |
||
235 | 240 020a 4130 cpi r20,lo8(1) |
||
236 | 241 020c 01F0 breq .+2 |
||
237 | 242 020e 00C0 rjmp .L24 |
||
238 | 243 0210 83E0 ldi r24,lo8(3) |
||
239 | 244 0212 00C0 rjmp .L82 |
||
240 | 245 .L28: |
||
241 | 246 0214 4093 0000 sts msgID,r20 |
||
242 | 247 0218 4F5F subi r20,lo8(-(1)) |
||
243 | 248 021a 4093 0000 sts CK_A,r20 |
||
244 | 249 021e 8091 0000 lds r24,CK_A |
||
245 | 250 0222 8F5F subi r24,lo8(-(1)) |
||
246 | 251 0224 8093 0000 sts CK_B,r24 |
||
247 | 252 0228 84E0 ldi r24,lo8(4) |
||
248 | 253 022a 8093 0000 sts gpsState,r24 |
||
249 | 254 022e 8091 0000 lds r24,msgID |
||
250 | 255 0232 8330 cpi r24,lo8(3) |
||
251 | 256 0234 01F0 breq .L44 |
||
252 | 257 0236 8430 cpi r24,lo8(4) |
||
253 | 258 0238 00F4 brsh .L47 |
||
254 | 259 023a 8230 cpi r24,lo8(2) |
||
255 | 260 023c 01F0 breq .+2 |
||
256 | 261 023e 00C0 rjmp .L42 |
||
257 | 262 0240 00C0 rjmp .L43 |
||
258 | 263 .L47: |
||
259 | 264 0242 8830 cpi r24,lo8(8) |
||
260 | 265 0244 01F0 breq .L45 |
||
261 | 266 0246 8231 cpi r24,lo8(18) |
||
262 | 267 0248 01F0 breq .+2 |
||
263 | 268 024a 00C0 rjmp .L42 |
||
264 | 269 024c 00C0 rjmp .L46 |
||
265 | 270 .L44: |
||
266 | 271 024e 80E0 ldi r24,lo8(navStatus) |
||
267 | 272 0250 90E0 ldi r25,hi8(navStatus) |
||
268 | 273 0252 9093 0000 sts (ubxP)+1,r25 |
||
269 | 274 0256 8093 0000 sts ubxP,r24 |
||
270 | 275 025a 20E0 ldi r18,lo8(navStatus+289) |
||
271 | 276 025c 30E0 ldi r19,hi8(navStatus+289) |
||
272 | 277 025e 3093 0000 sts (ubxEp)+1,r19 |
||
273 | 278 0262 2093 0000 sts ubxEp,r18 |
||
274 | 279 0266 4096 adiw r24,16 |
||
275 | 280 0268 9093 0000 sts (ubxSp)+1,r25 |
||
276 | 281 026c 8093 0000 sts ubxSp,r24 |
||
277 | 282 0270 8091 0000 lds r24,navStatus+16 |
||
278 | 283 0274 00C0 rjmp .L83 |
||
279 | 284 .L43: |
||
280 | 285 0276 80E0 ldi r24,lo8(navPosLlh) |
||
281 | 286 0278 90E0 ldi r25,hi8(navPosLlh) |
||
282 | 287 027a 9093 0000 sts (ubxP)+1,r25 |
||
283 | 288 027e 8093 0000 sts ubxP,r24 |
||
284 | 289 0282 20E0 ldi r18,lo8(navPosLlh+841) |
||
285 | 290 0284 30E0 ldi r19,hi8(navPosLlh+841) |
||
286 | 291 0286 3093 0000 sts (ubxEp)+1,r19 |
||
287 | 292 028a 2093 0000 sts ubxEp,r18 |
||
288 | 293 028e 4C96 adiw r24,28 |
||
289 | 294 0290 9093 0000 sts (ubxSp)+1,r25 |
||
290 | 295 0294 8093 0000 sts ubxSp,r24 |
||
291 | 296 0298 8091 0000 lds r24,navPosLlh+28 |
||
292 | 297 029c 00C0 rjmp .L83 |
||
293 | 298 .L45: |
||
294 | 299 029e 80E0 ldi r24,lo8(navPosUtm) |
||
295 | 300 02a0 90E0 ldi r25,hi8(navPosUtm) |
||
296 | 301 02a2 9093 0000 sts (ubxP)+1,r25 |
||
297 | 302 02a6 8093 0000 sts ubxP,r24 |
||
298 | 303 02aa 20E0 ldi r18,lo8(navPosUtm+361) |
||
299 | 304 02ac 30E0 ldi r19,hi8(navPosUtm+361) |
||
300 | 305 02ae 3093 0000 sts (ubxEp)+1,r19 |
||
301 | 306 02b2 2093 0000 sts ubxEp,r18 |
||
302 | 307 02b6 4296 adiw r24,18 |
||
303 | 308 02b8 9093 0000 sts (ubxSp)+1,r25 |
||
304 | 309 02bc 8093 0000 sts ubxSp,r24 |
||
305 | 310 02c0 8091 0000 lds r24,navPosUtm+18 |
||
306 | 311 02c4 00C0 rjmp .L83 |
||
307 | 312 .L46: |
||
308 | 313 02c6 80E0 ldi r24,lo8(navVelNed) |
||
309 | 314 02c8 90E0 ldi r25,hi8(navVelNed) |
||
310 | 315 02ca 9093 0000 sts (ubxP)+1,r25 |
||
311 | 316 02ce 8093 0000 sts ubxP,r24 |
||
312 | 317 02d2 20E0 ldi r18,lo8(navVelNed+1369) |
||
313 | 318 02d4 30E0 ldi r19,hi8(navVelNed+1369) |
||
314 | 319 02d6 3093 0000 sts (ubxEp)+1,r19 |
||
315 | 320 02da 2093 0000 sts ubxEp,r18 |
||
316 | 321 02de 8496 adiw r24,36 |
||
317 | 322 02e0 9093 0000 sts (ubxSp)+1,r25 |
||
318 | 323 02e4 8093 0000 sts ubxSp,r24 |
||
319 | 324 02e8 8091 0000 lds r24,navVelNed+36 |
||
320 | 325 .L83: |
||
321 | 326 02ec 8093 0000 sts ignorePacket,r24 |
||
322 | 327 02f0 00C0 rjmp .L35 |
||
323 | 328 .L42: |
||
324 | 329 02f2 81E0 ldi r24,lo8(1) |
||
325 | 330 02f4 8093 0000 sts ignorePacket,r24 |
||
326 | 331 02f8 1092 0000 sts (ubxSp)+1,__zero_reg__ |
||
327 | 332 02fc 1092 0000 sts ubxSp,__zero_reg__ |
||
328 | 333 0300 00C0 rjmp .L35 |
||
329 | 334 .L29: |
||
330 | 335 0302 842F mov r24,r20 |
||
331 | 336 0304 9927 clr r25 |
||
332 | 337 0306 9093 0000 sts (msgLen)+1,r25 |
||
333 | 338 030a 8093 0000 sts msgLen,r24 |
||
334 | 339 030e 8091 0000 lds r24,CK_A |
||
335 | 340 0312 840F add r24,r20 |
||
336 | 341 0314 8093 0000 sts CK_A,r24 |
||
337 | 342 0318 8091 0000 lds r24,CK_B |
||
338 | 343 031c 9091 0000 lds r25,CK_A |
||
339 | 344 0320 890F add r24,r25 |
||
340 | 345 0322 8093 0000 sts CK_B,r24 |
||
341 | 346 0326 85E0 ldi r24,lo8(5) |
||
342 | 347 0328 00C0 rjmp .L82 |
||
343 | 348 .L30: |
||
344 | 349 032a 2091 0000 lds r18,msgLen |
||
345 | 350 032e 3091 0000 lds r19,(msgLen)+1 |
||
346 | 351 0332 842F mov r24,r20 |
||
347 | 352 0334 9927 clr r25 |
||
348 | 353 0336 982F mov r25,r24 |
||
349 | 354 0338 8827 clr r24 |
||
350 | 355 033a 280F add r18,r24 |
||
351 | 356 033c 391F adc r19,r25 |
||
352 | 357 033e 3093 0000 sts (msgLen)+1,r19 |
||
353 | 358 0342 2093 0000 sts msgLen,r18 |
||
354 | 359 0346 8091 0000 lds r24,CK_A |
||
355 | 360 034a 840F add r24,r20 |
||
356 | 361 034c 8093 0000 sts CK_A,r24 |
||
357 | 362 0350 8091 0000 lds r24,CK_B |
||
358 | 363 0354 9091 0000 lds r25,CK_A |
||
359 | 364 0358 890F add r24,r25 |
||
360 | 365 035a 8093 0000 sts CK_B,r24 |
||
361 | 366 035e 86E0 ldi r24,lo8(6) |
||
362 | 367 0360 00C0 rjmp .L82 |
||
363 | 368 .L31: |
||
364 | 369 0362 8091 0000 lds r24,CK_A |
||
365 | 370 0366 840F add r24,r20 |
||
366 | 371 0368 8093 0000 sts CK_A,r24 |
||
367 | 372 036c 8091 0000 lds r24,CK_B |
||
368 | 373 0370 9091 0000 lds r25,CK_A |
||
369 | 374 0374 890F add r24,r25 |
||
370 | 375 0376 8093 0000 sts CK_B,r24 |
||
371 | 376 037a 8091 0000 lds r24,ignorePacket |
||
372 | 377 037e 8823 tst r24 |
||
373 | 378 0380 01F4 brne .L48 |
||
374 | 379 0382 E091 0000 lds r30,ubxP |
||
375 | 380 0386 F091 0000 lds r31,(ubxP)+1 |
||
376 | 381 038a 8091 0000 lds r24,ubxEp |
||
377 | 382 038e 9091 0000 lds r25,(ubxEp)+1 |
||
378 | 383 0392 E817 cp r30,r24 |
||
379 | 384 0394 F907 cpc r31,r25 |
||
380 | 385 0396 00F4 brsh .L48 |
||
381 | 386 0398 4193 st Z+,r20 |
||
382 | 387 039a F093 0000 sts (ubxP)+1,r31 |
||
383 | 388 039e E093 0000 sts ubxP,r30 |
||
384 | 389 .L48: |
||
385 | 390 03a2 8091 0000 lds r24,msgLen |
||
386 | 391 03a6 9091 0000 lds r25,(msgLen)+1 |
||
387 | 392 03aa 0197 sbiw r24,1 |
||
388 | 393 03ac 9093 0000 sts (msgLen)+1,r25 |
||
389 | 394 03b0 8093 0000 sts msgLen,r24 |
||
390 | 395 03b4 8091 0000 lds r24,msgLen |
||
391 | 396 03b8 9091 0000 lds r25,(msgLen)+1 |
||
392 | 397 03bc 892B or r24,r25 |
||
393 | 398 03be 01F4 brne .L35 |
||
394 | 399 03c0 87E0 ldi r24,lo8(7) |
||
395 | 400 03c2 00C0 rjmp .L82 |
||
396 | 401 .L32: |
||
397 | 402 03c4 8091 0000 lds r24,CK_A |
||
398 | 403 03c8 4817 cp r20,r24 |
||
399 | 404 03ca 01F4 brne .L24 |
||
400 | 405 03cc 88E0 ldi r24,lo8(8) |
||
401 | 406 03ce 00C0 rjmp .L82 |
||
402 | 407 .L33: |
||
403 | 408 03d0 8091 0000 lds r24,CK_B |
||
404 | 409 03d4 4817 cp r20,r24 |
||
405 | 410 03d6 01F4 brne .L24 |
||
406 | 411 03d8 E091 0000 lds r30,ubxSp |
||
407 | 412 03dc F091 0000 lds r31,(ubxSp)+1 |
||
408 | 413 03e0 3097 sbiw r30,0 |
||
409 | 414 03e2 01F0 breq .L24 |
||
410 | 415 03e4 81E0 ldi r24,lo8(1) |
||
411 | 416 03e6 8083 st Z,r24 |
||
412 | 417 .L24: |
||
413 | 418 03e8 1092 0000 sts gpsState,__zero_reg__ |
||
414 | 419 03ec 00C0 rjmp .L35 |
||
415 | 420 .L22: |
||
416 | 421 03ee 1092 0000 sts gpsState,__zero_reg__ |
||
417 | 422 03f2 0E94 0000 call GPSscanData |
||
418 | 423 .L35: |
||
419 | 424 03f6 0E94 0000 call GPSscanData |
||
420 | 425 03fa 4091 0000 lds r20,buf_ptr.2074 |
||
421 | 426 03fe 4639 cpi r20,lo8(-106) |
||
422 | 427 0400 00F0 brlo .L57 |
||
423 | 428 0402 1092 0000 sts UartState.2075,__zero_reg__ |
||
424 | 429 .L57: |
||
425 | 430 0406 8091 0000 lds r24,SioTmp |
||
426 | 431 040a 8D30 cpi r24,lo8(13) |
||
427 | 432 040c 01F0 breq .+2 |
||
428 | 433 040e 00C0 rjmp .L59 |
||
429 | 434 0410 8091 0000 lds r24,UartState.2075 |
||
430 | 435 0414 8230 cpi r24,lo8(2) |
||
431 | 436 0416 01F0 breq .+2 |
||
432 | 437 0418 00C0 rjmp .L59 |
||
433 | 438 041a 1092 0000 sts UartState.2075,__zero_reg__ |
||
434 | 439 041e A42F mov r26,r20 |
||
435 | 440 0420 BB27 clr r27 |
||
436 | 441 0422 FD01 movw r30,r26 |
||
437 | 442 0424 E050 subi r30,lo8(-(RxdBuffer-2)) |
||
438 | 443 0426 F040 sbci r31,hi8(-(RxdBuffer-2)) |
||
439 | 444 0428 3081 ld r19,Z |
||
440 | 445 042a ED01 movw r28,r26 |
||
441 | 446 042c C050 subi r28,lo8(-(RxdBuffer-1)) |
||
442 | 447 042e D040 sbci r29,hi8(-(RxdBuffer-1)) |
||
443 | 448 0430 2881 ld r18,Y |
||
444 | 449 0432 8091 0000 lds r24,crc.2071 |
||
445 | 450 0436 9091 0000 lds r25,(crc.2071)+1 |
||
446 | 451 043a 831B sub r24,r19 |
||
447 | 452 043c 9109 sbc r25,__zero_reg__ |
||
448 | 453 043e 821B sub r24,r18 |
||
449 | 454 0440 9109 sbc r25,__zero_reg__ |
||
450 | 455 0442 9F70 andi r25,hi8(4095) |
||
451 | 456 0444 9093 0000 sts (crc.2071)+1,r25 |
||
452 | 457 0448 8093 0000 sts crc.2071,r24 |
||
453 | 458 044c 9C01 movw r18,r24 |
||
454 | 459 044e 96E0 ldi r25,6 |
||
455 | 460 0450 3695 1: lsr r19 |
||
456 | 461 0452 2795 ror r18 |
||
457 | 462 0454 9A95 dec r25 |
||
458 | 463 0456 01F4 brne 1b |
||
459 | 464 0458 235C subi r18,lo8(-(61)) |
||
460 | 465 045a 2093 0000 sts crc1.2072,r18 |
||
461 | 466 045e 982F mov r25,r24 |
||
462 | 467 0460 9F73 andi r25,lo8(63) |
||
463 | 468 0462 935C subi r25,lo8(-(61)) |
||
464 | 469 0464 9093 0000 sts crc2.2073,r25 |
||
465 | 470 0468 8081 ld r24,Z |
||
466 | 471 046a 2817 cp r18,r24 |
||
467 | 472 046c 01F4 brne .L62 |
||
468 | 473 046e 8881 ld r24,Y |
||
469 | 474 0470 9817 cp r25,r24 |
||
470 | 475 0472 01F4 brne .L62 |
||
471 | 476 0474 91E0 ldi r25,lo8(1) |
||
472 | 477 0476 00C0 rjmp .L65 |
||
473 | 478 .L62: |
||
474 | 479 0478 8091 0000 lds r24,CntCrcError |
||
475 | 480 047c 8F5F subi r24,lo8(-(1)) |
||
476 | 481 047e 8093 0000 sts CntCrcError,r24 |
||
477 | 482 0482 90E0 ldi r25,lo8(0) |
||
478 | 483 .L65: |
||
479 | 484 0484 8091 0000 lds r24,NeuerDatensatzEmpfangen |
||
480 | 485 0488 8823 tst r24 |
||
481 | 486 048a 01F0 breq .+2 |
||
482 | 487 048c 00C0 rjmp .L80 |
||
483 | 488 048e 9923 tst r25 |
||
484 | 489 0490 01F4 brne .+2 |
||
485 | 490 0492 00C0 rjmp .L80 |
||
486 | 491 0494 81E0 ldi r24,lo8(1) |
||
487 | 492 0496 8093 0000 sts NeuerDatensatzEmpfangen,r24 |
||
488 | 493 049a 4093 0000 sts AnzahlEmpfangsBytes,r20 |
||
489 | 494 049e A050 subi r26,lo8(-(RxdBuffer)) |
||
490 | 495 04a0 B040 sbci r27,hi8(-(RxdBuffer)) |
||
491 | 496 04a2 8DE0 ldi r24,lo8(13) |
||
492 | 497 04a4 8C93 st X,r24 |
||
493 | 498 04a6 8091 0000 lds r24,RxdBuffer+2 |
||
494 | 499 04aa 8235 cpi r24,lo8(82) |
||
495 | 500 04ac 01F0 breq .+2 |
||
496 | 501 04ae 00C0 rjmp .L80 |
||
497 | 502 04b0 88E1 ldi r24,lo8(24) |
||
498 | 503 04b2 90E0 ldi r25,hi8(24) |
||
499 | 504 04b4 2CE0 ldi r18,lo8(12) |
||
500 | 505 /* #APP */ |
||
501 | 506 04b6 0FB6 in __tmp_reg__,__SREG__ |
||
502 | 507 04b8 F894 cli |
||
503 | 508 04ba A895 wdr |
||
504 | 509 04bc 8093 6000 sts 96,r24 |
||
505 | 510 04c0 0FBE out __SREG__,__tmp_reg__ |
||
506 | 511 04c2 2093 6000 sts 96,r18 |
||
507 | 512 /* #NOAPP */ |
||
508 | 513 04c6 00C0 rjmp .L80 |
||
509 | 514 .L59: |
||
510 | 515 04c8 8091 0000 lds r24,UartState.2075 |
||
511 | 516 04cc 8130 cpi r24,lo8(1) |
||
512 | 517 04ce 01F0 breq .L72 |
||
513 | 518 04d0 8130 cpi r24,lo8(1) |
||
514 | 519 04d2 00F0 brlo .L71 |
||
515 | 520 04d4 8230 cpi r24,lo8(2) |
||
516 | 521 04d6 01F4 brne .L81 |
||
517 | 522 04d8 00C0 rjmp .L73 |
||
518 | 523 .L71: |
||
519 | 524 04da 8091 0000 lds r24,SioTmp |
||
520 | 525 04de 8332 cpi r24,lo8(35) |
||
521 | 526 04e0 01F4 brne .L74 |
||
522 | 527 04e2 8091 0000 lds r24,NeuerDatensatzEmpfangen |
||
523 | 528 04e6 8823 tst r24 |
||
524 | 529 04e8 01F4 brne .L74 |
||
525 | 530 04ea 81E0 ldi r24,lo8(1) |
||
526 | 531 04ec 8093 0000 sts UartState.2075,r24 |
||
527 | 532 .L74: |
||
528 | 533 04f0 8091 0000 lds r24,SioTmp |
||
529 | 534 04f4 8093 0000 sts RxdBuffer,r24 |
||
530 | 535 04f8 81E0 ldi r24,lo8(1) |
||
531 | 536 04fa 8093 0000 sts buf_ptr.2074,r24 |
||
532 | 537 04fe 8091 0000 lds r24,SioTmp |
||
533 | 538 0502 9927 clr r25 |
||
534 | 539 0504 00C0 rjmp .L84 |
||
535 | 540 .L72: |
||
536 | 541 0506 82E0 ldi r24,lo8(2) |
||
537 | 542 0508 8093 0000 sts UartState.2075,r24 |
||
538 | 543 050c E42F mov r30,r20 |
||
539 | 544 050e FF27 clr r31 |
||
540 | 545 0510 8091 0000 lds r24,SioTmp |
||
541 | 546 0514 E050 subi r30,lo8(-(RxdBuffer)) |
||
542 | 547 0516 F040 sbci r31,hi8(-(RxdBuffer)) |
||
543 | 548 0518 8083 st Z,r24 |
||
544 | 549 .L86: |
||
545 | 550 051a 4F5F subi r20,lo8(-(1)) |
||
546 | 551 051c 4093 0000 sts buf_ptr.2074,r20 |
||
547 | 552 .L85: |
||
548 | 553 0520 2091 0000 lds r18,SioTmp |
||
549 | 554 0524 8091 0000 lds r24,crc.2071 |
||
550 | 555 0528 9091 0000 lds r25,(crc.2071)+1 |
||
551 | 556 052c 820F add r24,r18 |
||
552 | 557 052e 911D adc r25,__zero_reg__ |
||
553 | 558 .L84: |
||
554 | 559 0530 9093 0000 sts (crc.2071)+1,r25 |
||
555 | 560 0534 8093 0000 sts crc.2071,r24 |
||
556 | 561 0538 00C0 rjmp .L80 |
||
557 | 562 .L73: |
||
558 | 563 053a E42F mov r30,r20 |
||
559 | 564 053c FF27 clr r31 |
||
560 | 565 053e 8091 0000 lds r24,SioTmp |
||
561 | 566 0542 E050 subi r30,lo8(-(RxdBuffer)) |
||
562 | 567 0544 F040 sbci r31,hi8(-(RxdBuffer)) |
||
563 | 568 0546 8083 st Z,r24 |
||
564 | 569 0548 4639 cpi r20,lo8(-106) |
||
565 | 570 054a 00F0 brlo .L86 |
||
566 | 571 054c 1092 0000 sts UartState.2075,__zero_reg__ |
||
567 | 572 0550 00C0 rjmp .L85 |
||
568 | 573 .L81: |
||
569 | 574 0552 1092 0000 sts UartState.2075,__zero_reg__ |
||
570 | 575 .L80: |
||
571 | 576 /* epilogue: frame size=0 */ |
||
572 | 577 0556 FF91 pop r31 |
||
573 | 578 0558 EF91 pop r30 |
||
574 | 579 055a DF91 pop r29 |
||
575 | 580 055c CF91 pop r28 |
||
576 | 581 055e BF91 pop r27 |
||
577 | 582 0560 AF91 pop r26 |
||
578 | 583 0562 9F91 pop r25 |
||
579 | 584 0564 8F91 pop r24 |
||
580 | 585 0566 7F91 pop r23 |
||
581 | 586 0568 6F91 pop r22 |
||
582 | 587 056a 5F91 pop r21 |
||
583 | 588 056c 4F91 pop r20 |
||
584 | 589 056e 3F91 pop r19 |
||
585 | 590 0570 2F91 pop r18 |
||
586 | 591 0572 0F90 pop __tmp_reg__ |
||
587 | 592 0574 0FBE out __SREG__,__tmp_reg__ |
||
588 | 593 0576 0F90 pop __tmp_reg__ |
||
589 | 594 0578 1F90 pop __zero_reg__ |
||
590 | 595 057a 1895 reti |
||
591 | 596 /* epilogue end (size=19) */ |
||
592 | 597 /* function __vector_20 size 522 (484) */ |
||
593 | 599 .global AddCRC |
||
594 | 601 AddCRC: |
||
595 | 602 /* prologue: frame size=0 */ |
||
596 | 603 /* prologue end (size=0) */ |
||
597 | 604 057c DC01 movw r26,r24 |
||
598 | 605 057e 20E0 ldi r18,lo8(0) |
||
599 | 606 0580 30E0 ldi r19,hi8(0) |
||
600 | 607 0582 40E0 ldi r20,lo8(0) |
||
601 | 608 0584 50E0 ldi r21,hi8(0) |
||
602 | 609 0586 E0E0 ldi r30,lo8(SendeBuffer) |
||
603 | 610 0588 F0E0 ldi r31,hi8(SendeBuffer) |
||
604 | 611 058a 00C0 rjmp .L88 |
||
605 | 612 .L89: |
||
606 | 613 058c 8191 ld r24,Z+ |
||
607 | 614 058e 280F add r18,r24 |
||
608 | 615 0590 311D adc r19,__zero_reg__ |
||
609 | 616 0592 4F5F subi r20,lo8(-(1)) |
||
610 | 617 0594 5F4F sbci r21,hi8(-(1)) |
||
611 | 618 .L88: |
||
612 | 619 0596 4A17 cp r20,r26 |
||
613 | 620 0598 5B07 cpc r21,r27 |
||
614 | 621 059a 01F4 brne .L89 |
||
615 | 622 059c 3F70 andi r19,hi8(4095) |
||
616 | 623 059e C901 movw r24,r18 |
||
617 | 624 05a0 66E0 ldi r22,6 |
||
618 | 625 05a2 9695 1: lsr r25 |
||
619 | 626 05a4 8795 ror r24 |
||
620 | 627 05a6 6A95 dec r22 |
||
621 | 628 05a8 01F4 brne 1b |
||
622 | 629 05aa 835C subi r24,lo8(-(61)) |
||
623 | 630 05ac FD01 movw r30,r26 |
||
624 | 631 05ae E050 subi r30,lo8(-(SendeBuffer)) |
||
625 | 632 05b0 F040 sbci r31,hi8(-(SendeBuffer)) |
||
626 | 633 05b2 8083 st Z,r24 |
||
627 | 634 05b4 1196 adiw r26,1 |
||
628 | 635 05b6 2F73 andi r18,lo8(63) |
||
629 | 636 05b8 235C subi r18,lo8(-(61)) |
||
630 | 637 05ba FD01 movw r30,r26 |
||
631 | 638 05bc E050 subi r30,lo8(-(SendeBuffer)) |
||
632 | 639 05be F040 sbci r31,hi8(-(SendeBuffer)) |
||
633 | 640 05c0 2083 st Z,r18 |
||
634 | 641 05c2 A050 subi r26,lo8(-(SendeBuffer+1)) |
||
635 | 642 05c4 B040 sbci r27,hi8(-(SendeBuffer+1)) |
||
636 | 643 05c6 8DE0 ldi r24,lo8(13) |
||
637 | 644 05c8 8C93 st X,r24 |
||
638 | 645 05ca 1092 0000 sts UebertragungAbgeschlossen,__zero_reg__ |
||
639 | 646 05ce 8091 0000 lds r24,SendeBuffer |
||
640 | 647 05d2 8093 C600 sts 198,r24 |
||
641 | 648 /* epilogue: frame size=0 */ |
||
642 | 649 05d6 0895 ret |
||
643 | 650 /* epilogue end (size=1) */ |
||
644 | 651 /* function AddCRC size 47 (46) */ |
||
645 | 653 .global SendOutData |
||
646 | 655 SendOutData: |
||
647 | 656 /* prologue: frame size=0 */ |
||
648 | 657 05d8 EF92 push r14 |
||
649 | 658 05da FF92 push r15 |
||
650 | 659 05dc 0F93 push r16 |
||
651 | 660 05de 1F93 push r17 |
||
652 | 661 05e0 CF93 push r28 |
||
653 | 662 05e2 DF93 push r29 |
||
654 | 663 /* prologue end (size=6) */ |
||
655 | 664 05e4 7A01 movw r14,r20 |
||
656 | 665 05e6 722F mov r23,r18 |
||
657 | 666 05e8 93E2 ldi r25,lo8(35) |
||
658 | 667 05ea 9093 0000 sts SendeBuffer,r25 |
||
659 | 668 05ee 6093 0000 sts SendeBuffer+1,r22 |
||
660 | 669 05f2 8093 0000 sts SendeBuffer+2,r24 |
||
661 | 670 05f6 03E0 ldi r16,lo8(3) |
||
662 | 671 05f8 10E0 ldi r17,hi8(3) |
||
663 | 672 05fa 60E0 ldi r22,lo8(0) |
||
664 | 673 05fc A0E0 ldi r26,lo8(SendeBuffer+3) |
||
665 | 674 05fe B0E0 ldi r27,hi8(SendeBuffer+3) |
||
666 | 675 0600 00C0 rjmp .L93 |
||
667 | 676 .L94: |
||
668 | 677 0602 F701 movw r30,r14 |
||
669 | 678 0604 E60F add r30,r22 |
||
670 | 679 0606 F11D adc r31,__zero_reg__ |
||
671 | 680 0608 9081 ld r25,Z |
||
672 | 681 060a 6F5F subi r22,lo8(-(1)) |
||
673 | 682 060c 7150 subi r23,lo8(-(-1)) |
||
674 | 683 060e 01F4 brne .L95 |
||
675 | 684 0610 E0E0 ldi r30,lo8(0) |
||
676 | 685 0612 40E0 ldi r20,lo8(0) |
||
677 | 686 0614 00C0 rjmp .L97 |
||
678 | 687 .L95: |
||
679 | 688 0616 F701 movw r30,r14 |
||
680 | 689 0618 E60F add r30,r22 |
||
681 | 690 061a F11D adc r31,__zero_reg__ |
||
682 | 691 061c 4081 ld r20,Z |
||
683 | 692 061e 6F5F subi r22,lo8(-(1)) |
||
684 | 693 0620 7150 subi r23,lo8(-(-1)) |
||
685 | 694 0622 01F4 brne .L98 |
||
686 | 695 0624 E0E0 ldi r30,lo8(0) |
||
687 | 696 0626 00C0 rjmp .L97 |
||
688 | 697 .L98: |
||
689 | 698 0628 F701 movw r30,r14 |
||
690 | 699 062a E60F add r30,r22 |
||
691 | 700 062c F11D adc r31,__zero_reg__ |
||
692 | 701 062e E081 ld r30,Z |
||
693 | 702 0630 6F5F subi r22,lo8(-(1)) |
||
694 | 703 0632 7150 subi r23,lo8(-(-1)) |
||
695 | 704 .L97: |
||
696 | 705 0634 892F mov r24,r25 |
||
697 | 706 0636 8695 lsr r24 |
||
698 | 707 0638 8695 lsr r24 |
||
699 | 708 063a 835C subi r24,lo8(-(61)) |
||
700 | 709 063c 8C93 st X,r24 |
||
701 | 710 063e 5527 clr r21 |
||
702 | 711 0640 892F mov r24,r25 |
||
703 | 712 0642 9927 clr r25 |
||
704 | 713 0644 8370 andi r24,lo8(3) |
||
705 | 714 0646 9070 andi r25,hi8(3) |
||
706 | 715 0648 24E0 ldi r18,4 |
||
707 | 716 064a 880F 1: lsl r24 |
||
708 | 717 064c 991F rol r25 |
||
709 | 718 064e 2A95 dec r18 |
||
710 | 719 0650 01F4 brne 1b |
||
711 | 720 0652 9A01 movw r18,r20 |
||
712 | 721 0654 94E0 ldi r25,4 |
||
713 | 722 0656 3695 1: lsr r19 |
||
714 | 723 0658 2795 ror r18 |
||
715 | 724 065a 9A95 dec r25 |
||
716 | 725 065c 01F4 brne 1b |
||
717 | 726 065e 822B or r24,r18 |
||
718 | 727 0660 835C subi r24,lo8(-(61)) |
||
719 | 728 0662 ED01 movw r28,r26 |
||
720 | 729 0664 8983 std Y+1,r24 |
||
721 | 730 0666 4F70 andi r20,lo8(15) |
||
722 | 731 0668 5070 andi r21,hi8(15) |
||
723 | 732 066a 440F lsl r20 |
||
724 | 733 066c 551F rol r21 |
||
725 | 734 066e 440F lsl r20 |
||
726 | 735 0670 551F rol r21 |
||
727 | 736 0672 8E2F mov r24,r30 |
||
728 | 737 0674 8295 swap r24 |
||
729 | 738 0676 8695 lsr r24 |
||
730 | 739 0678 8695 lsr r24 |
||
731 | 740 067a 8370 andi r24,0x3 |
||
732 | 741 067c 842B or r24,r20 |
||
733 | 742 067e 835C subi r24,lo8(-(61)) |
||
734 | 743 0680 8A83 std Y+2,r24 |
||
735 | 744 0682 EF73 andi r30,lo8(63) |
||
736 | 745 0684 E35C subi r30,lo8(-(61)) |
||
737 | 746 0686 EB83 std Y+3,r30 |
||
738 | 747 0688 0C5F subi r16,lo8(-(4)) |
||
739 | 748 068a 1F4F sbci r17,hi8(-(4)) |
||
740 | 749 068c 1496 adiw r26,4 |
||
741 | 750 .L93: |
||
742 | 751 068e 7723 tst r23 |
||
743 | 752 0690 01F0 breq .+2 |
||
744 | 753 0692 00C0 rjmp .L94 |
||
745 | 754 0694 C801 movw r24,r16 |
||
746 | 755 0696 0E94 0000 call AddCRC |
||
747 | 756 /* epilogue: frame size=0 */ |
||
748 | 757 069a DF91 pop r29 |
||
749 | 758 069c CF91 pop r28 |
||
750 | 759 069e 1F91 pop r17 |
||
751 | 760 06a0 0F91 pop r16 |
||
752 | 761 06a2 FF90 pop r15 |
||
753 | 762 06a4 EF90 pop r14 |
||
754 | 763 06a6 0895 ret |
||
755 | 764 /* epilogue end (size=7) */ |
||
756 | 765 /* function SendOutData size 106 (93) */ |
||
757 | 767 .global Decode64 |
||
758 | 769 Decode64: |
||
759 | 770 /* prologue: frame size=0 */ |
||
760 | 771 06a8 1F93 push r17 |
||
761 | 772 06aa CF93 push r28 |
||
762 | 773 06ac DF93 push r29 |
||
763 | 774 /* prologue end (size=3) */ |
||
764 | 775 06ae EC01 movw r28,r24 |
||
765 | 776 06b0 70E0 ldi r23,lo8(0) |
||
766 | 777 06b2 A22F mov r26,r18 |
||
767 | 778 06b4 BB27 clr r27 |
||
768 | 779 06b6 1297 sbiw r26,2 |
||
769 | 780 06b8 00C0 rjmp .L103 |
||
770 | 781 .L104: |
||
771 | 782 06ba E42F mov r30,r20 |
||
772 | 783 06bc FF27 clr r31 |
||
773 | 784 06be E050 subi r30,lo8(-(RxdBuffer)) |
||
774 | 785 06c0 F040 sbci r31,hi8(-(RxdBuffer)) |
||
775 | 786 06c2 3081 ld r19,Z |
||
776 | 787 06c4 4F5F subi r20,lo8(-(1)) |
||
777 | 788 06c6 E42F mov r30,r20 |
||
778 | 789 06c8 FF27 clr r31 |
||
779 | 790 06ca E050 subi r30,lo8(-(RxdBuffer)) |
||
780 | 791 06cc F040 sbci r31,hi8(-(RxdBuffer)) |
||
781 | 792 06ce 5081 ld r21,Z |
||
782 | 793 06d0 4F5F subi r20,lo8(-(1)) |
||
783 | 794 06d2 E42F mov r30,r20 |
||
784 | 795 06d4 FF27 clr r31 |
||
785 | 796 06d6 E050 subi r30,lo8(-(RxdBuffer)) |
||
786 | 797 06d8 F040 sbci r31,hi8(-(RxdBuffer)) |
||
787 | 798 06da 1081 ld r17,Z |
||
788 | 799 06dc 4F5F subi r20,lo8(-(1)) |
||
789 | 800 06de E42F mov r30,r20 |
||
790 | 801 06e0 FF27 clr r31 |
||
791 | 802 06e2 E050 subi r30,lo8(-(RxdBuffer)) |
||
792 | 803 06e4 F040 sbci r31,hi8(-(RxdBuffer)) |
||
793 | 804 06e6 2081 ld r18,Z |
||
794 | 805 06e8 4F5F subi r20,lo8(-(1)) |
||
795 | 806 06ea 842F mov r24,r20 |
||
796 | 807 06ec 9927 clr r25 |
||
797 | 808 06ee A817 cp r26,r24 |
||
798 | 809 06f0 B907 cpc r27,r25 |
||
799 | 810 06f2 04F0 brlt .L109 |
||
800 | 811 06f4 5D53 subi r21,lo8(-(-61)) |
||
801 | 812 06f6 FE01 movw r30,r28 |
||
802 | 813 06f8 E70F add r30,r23 |
||
803 | 814 06fa F11D adc r31,__zero_reg__ |
||
804 | 815 06fc 3D53 subi r19,lo8(-(-61)) |
||
805 | 816 06fe 330F lsl r19 |
||
806 | 817 0700 330F lsl r19 |
||
807 | 818 0702 852F mov r24,r21 |
||
808 | 819 0704 8295 swap r24 |
||
809 | 820 0706 8F70 andi r24,0x0f |
||
810 | 821 0708 382B or r19,r24 |
||
811 | 822 070a 3083 st Z,r19 |
||
812 | 823 070c 6130 cpi r22,lo8(1) |
||
813 | 824 070e 01F0 breq .L109 |
||
814 | 825 0710 912F mov r25,r17 |
||
815 | 826 0712 9D53 subi r25,lo8(-(-61)) |
||
816 | 827 0714 7F5F subi r23,lo8(-(1)) |
||
817 | 828 0716 FE01 movw r30,r28 |
||
818 | 829 0718 E70F add r30,r23 |
||
819 | 830 071a F11D adc r31,__zero_reg__ |
||
820 | 831 071c 7150 subi r23,lo8(-(-1)) |
||
821 | 832 071e 5295 swap r21 |
||
822 | 833 0720 507F andi r21,0xf0 |
||
823 | 834 0722 892F mov r24,r25 |
||
824 | 835 0724 8695 lsr r24 |
||
825 | 836 0726 8695 lsr r24 |
||
826 | 837 0728 582B or r21,r24 |
||
827 | 838 072a 5083 st Z,r21 |
||
828 | 839 072c 6350 subi r22,lo8(-(-3)) |
||
829 | 840 072e 6F3F cpi r22,lo8(-1) |
||
830 | 841 0730 01F0 breq .L109 |
||
831 | 842 0732 7E5F subi r23,lo8(-(2)) |
||
832 | 843 0734 FE01 movw r30,r28 |
||
833 | 844 0736 E70F add r30,r23 |
||
834 | 845 0738 F11D adc r31,__zero_reg__ |
||
835 | 846 073a 9295 swap r25 |
||
836 | 847 073c 990F lsl r25 |
||
837 | 848 073e 990F lsl r25 |
||
838 | 849 0740 907C andi r25,0xc0 |
||
839 | 850 0742 2D53 subi r18,lo8(-(-61)) |
||
840 | 851 0744 922B or r25,r18 |
||
841 | 852 0746 9083 st Z,r25 |
||
842 | 853 0748 7F5F subi r23,lo8(-(1)) |
||
843 | 854 .L103: |
||
844 | 855 074a 6623 tst r22 |
||
845 | 856 074c 01F0 breq .+2 |
||
846 | 857 074e 00C0 rjmp .L104 |
||
847 | 858 .L109: |
||
848 | 859 /* epilogue: frame size=0 */ |
||
849 | 860 0750 DF91 pop r29 |
||
850 | 861 0752 CF91 pop r28 |
||
851 | 862 0754 1F91 pop r17 |
||
852 | 863 0756 0895 ret |
||
853 | 864 /* epilogue end (size=4) */ |
||
854 | 865 /* function Decode64 size 88 (81) */ |
||
855 | 867 .global uart_putchar |
||
856 | 869 uart_putchar: |
||
857 | 870 /* prologue: frame size=0 */ |
||
858 | 871 0758 1F93 push r17 |
||
859 | 872 /* prologue end (size=1) */ |
||
860 | 873 075a 182F mov r17,r24 |
||
861 | 874 075c 8A30 cpi r24,lo8(10) |
||
862 | 875 075e 01F4 brne .L115 |
||
863 | 876 0760 8DE0 ldi r24,lo8(13) |
||
864 | 877 0762 0E94 0000 call uart_putchar |
||
865 | 878 .L115: |
||
866 | 879 0766 8091 C000 lds r24,192 |
||
867 | 880 076a 85FF sbrs r24,5 |
||
868 | 881 076c 00C0 rjmp .L115 |
||
869 | 882 076e 1093 C600 sts 198,r17 |
||
870 | 883 0772 80E0 ldi r24,lo8(0) |
||
871 | 884 0774 90E0 ldi r25,hi8(0) |
||
872 | 885 /* epilogue: frame size=0 */ |
||
873 | 886 0776 1F91 pop r17 |
||
874 | 887 0778 0895 ret |
||
875 | 888 /* epilogue end (size=2) */ |
||
876 | 889 /* function uart_putchar size 17 (14) */ |
||
877 | 891 .global WriteProgramData |
||
878 | 893 WriteProgramData: |
||
879 | 894 /* prologue: frame size=0 */ |
||
880 | 895 /* prologue end (size=0) */ |
||
881 | 896 /* epilogue: frame size=0 */ |
||
882 | 897 077a 0895 ret |
||
883 | 898 /* epilogue end (size=1) */ |
||
884 | 899 /* function WriteProgramData size 1 (0) */ |
||
885 | 901 .global UART_Init |
||
886 | 903 UART_Init: |
||
887 | 904 /* prologue: frame size=0 */ |
||
888 | 905 /* prologue end (size=0) */ |
||
889 | 906 077c E1EC ldi r30,lo8(193) |
||
890 | 907 077e F0E0 ldi r31,hi8(193) |
||
891 | 908 0780 88E1 ldi r24,lo8(24) |
||
892 | 909 0782 8083 st Z,r24 |
||
893 | 910 0784 A0EC ldi r26,lo8(192) |
||
894 | 911 0786 B0E0 ldi r27,hi8(192) |
||
895 | 912 0788 8C91 ld r24,X |
||
896 | 913 078a 8260 ori r24,lo8(2) |
||
897 | 914 078c 8C93 st X,r24 |
||
898 | 915 078e 8081 ld r24,Z |
||
899 | 916 0790 8068 ori r24,lo8(-128) |
||
900 | 917 0792 8083 st Z,r24 |
||
901 | 918 0794 8081 ld r24,Z |
||
902 | 919 0796 8064 ori r24,lo8(64) |
||
903 | 920 0798 8083 st Z,r24 |
||
904 | 921 079a 8AE2 ldi r24,lo8(42) |
||
905 | 922 079c 8093 C400 sts 196,r24 |
||
906 | 923 07a0 88EC ldi r24,lo8(200) |
||
907 | 924 07a2 90E0 ldi r25,hi8(200) |
||
908 | 925 07a4 0E94 0000 call SetDelay |
||
909 | 926 07a8 9093 0000 sts (Debug_Timer)+1,r25 |
||
910 | 927 07ac 8093 0000 sts Debug_Timer,r24 |
||
911 | 928 07b0 1092 0000 sts gpsState,__zero_reg__ |
||
912 | 929 /* epilogue: frame size=0 */ |
||
913 | 930 07b4 0895 ret |
||
914 | 931 /* epilogue end (size=1) */ |
||
915 | 932 /* function UART_Init size 29 (28) */ |
||
916 | 934 .global DatenUebertragung |
||
917 | 936 DatenUebertragung: |
||
918 | 937 /* prologue: frame size=0 */ |
||
919 | 938 /* prologue end (size=0) */ |
||
920 | 939 07b6 8091 0000 lds r24,UebertragungAbgeschlossen |
||
921 | 940 07ba 8823 tst r24 |
||
922 | 941 07bc 01F4 brne .+2 |
||
923 | 942 07be 00C0 rjmp .L139 |
||
924 | 943 07c0 8091 0000 lds r24,DebugGetAnforderung |
||
925 | 944 07c4 8823 tst r24 |
||
926 | 945 07c6 01F0 breq .L125 |
||
927 | 946 07c8 8091 0000 lds r24,UebertragungAbgeschlossen |
||
928 | 947 07cc 8823 tst r24 |
||
929 | 948 07ce 01F0 breq .L125 |
||
930 | 949 07d0 2BE0 ldi r18,lo8(11) |
||
931 | 950 07d2 40E0 ldi r20,lo8(DebugIn) |
||
932 | 951 07d4 50E0 ldi r21,hi8(DebugIn) |
||
933 | 952 07d6 6091 0000 lds r22,MeineSlaveAdresse |
||
934 | 953 07da 87E4 ldi r24,lo8(71) |
||
935 | 954 07dc 0E94 0000 call SendOutData |
||
936 | 955 07e0 1092 0000 sts DebugGetAnforderung,__zero_reg__ |
||
937 | 956 .L125: |
||
938 | 957 07e4 8091 0000 lds r24,Debug_Timer |
||
939 | 958 07e8 9091 0000 lds r25,(Debug_Timer)+1 |
||
940 | 959 07ec 0E94 0000 call CheckDelay |
||
941 | 960 07f0 8823 tst r24 |
||
942 | 961 07f2 01F4 brne .L128 |
||
943 | 962 07f4 8091 0000 lds r24,DebugDataAnforderung |
||
944 | 963 07f8 8823 tst r24 |
||
945 | 964 07fa 01F0 breq .L130 |
||
946 | 965 .L128: |
||
947 | 966 07fc 8091 0000 lds r24,UebertragungAbgeschlossen |
||
948 | 967 0800 8823 tst r24 |
||
949 | 968 0802 01F0 breq .L130 |
||
950 | 969 0804 22E3 ldi r18,lo8(50) |
||
951 | 970 0806 40E0 ldi r20,lo8(DebugOut) |
||
952 | 971 0808 50E0 ldi r21,hi8(DebugOut) |
||
953 | 972 080a 6091 0000 lds r22,MeineSlaveAdresse |
||
954 | 973 080e 84E4 ldi r24,lo8(68) |
||
955 | 974 0810 0E94 0000 call SendOutData |
||
956 | 975 0814 1092 0000 sts DebugDataAnforderung,__zero_reg__ |
||
957 | 976 0818 8AEF ldi r24,lo8(250) |
||
958 | 977 081a 90E0 ldi r25,hi8(250) |
||
959 | 978 081c 0E94 0000 call SetDelay |
||
960 | 979 0820 9093 0000 sts (Debug_Timer)+1,r25 |
||
961 | 980 0824 8093 0000 sts Debug_Timer,r24 |
||
962 | 981 .L130: |
||
963 | 982 0828 8091 0000 lds r24,DebugDisplayAnforderung |
||
964 | 983 082c 8823 tst r24 |
||
965 | 984 082e 01F0 breq .L132 |
||
966 | 985 0830 8091 0000 lds r24,UebertragungAbgeschlossen |
||
967 | 986 0834 8823 tst r24 |
||
968 | 987 0836 01F0 breq .L132 |
||
969 | 988 0838 0E94 0000 call Menu |
||
970 | 989 083c 1092 0000 sts DebugDisplayAnforderung,__zero_reg__ |
||
971 | 990 0840 8091 0000 lds r24,dis_zeile.2398 |
||
972 | 991 0844 8F5F subi r24,lo8(-(1)) |
||
973 | 992 0846 8093 0000 sts dis_zeile.2398,r24 |
||
974 | 993 084a 8430 cpi r24,lo8(4) |
||
975 | 994 084c 01F4 brne .L135 |
||
976 | 995 084e 1092 0000 sts dis_zeile.2398,__zero_reg__ |
||
977 | 996 .L135: |
||
978 | 997 0852 8091 0000 lds r24,dis_zeile.2398 |
||
979 | 998 0856 44E1 ldi r20,lo8(20) |
||
980 | 999 0858 849F mul r24,r20 |
||
981 | 1000 085a A001 movw r20,r0 |
||
982 | 1001 085c 1124 clr r1 |
||
983 | 1002 085e 4050 subi r20,lo8(-(DisplayBuff)) |
||
984 | 1003 0860 5040 sbci r21,hi8(-(DisplayBuff)) |
||
985 | 1004 0862 24E1 ldi r18,lo8(20) |
||
986 | 1005 0864 60E0 ldi r22,lo8(0) |
||
987 | 1006 0866 805D subi r24,lo8(-(48)) |
||
988 | 1007 0868 0E94 0000 call SendOutData |
||
989 | 1008 .L132: |
||
990 | 1009 086c 8091 0000 lds r24,GetVersionAnforderung |
||
991 | 1010 0870 8823 tst r24 |
||
992 | 1011 0872 01F0 breq .L139 |
||
993 | 1012 0874 8091 0000 lds r24,UebertragungAbgeschlossen |
||
994 | 1013 0878 8823 tst r24 |
||
995 | 1014 087a 01F0 breq .L139 |
||
996 | 1015 087c 2AE0 ldi r18,lo8(10) |
||
997 | 1016 087e 40E0 ldi r20,lo8(VersionInfo) |
||
998 | 1017 0880 50E0 ldi r21,hi8(VersionInfo) |
||
999 | 1018 0882 6091 0000 lds r22,MeineSlaveAdresse |
||
1000 | 1019 0886 86E5 ldi r24,lo8(86) |
||
1001 | 1020 0888 0E94 0000 call SendOutData |
||
1002 | 1021 088c 1092 0000 sts GetVersionAnforderung,__zero_reg__ |
||
1003 | 1022 .L139: |
||
1004 | 1023 0890 0895 ret |
||
1005 | 1024 /* epilogue: frame size=0 */ |
||
1006 | 1025 /* epilogue: noreturn */ |
||
1007 | 1026 /* epilogue end (size=0) */ |
||
1008 | 1027 /* function DatenUebertragung size 110 (110) */ |
||
1009 | 1029 .global BearbeiteRxDaten |
||
1010 | 1031 BearbeiteRxDaten: |
||
1011 | 1032 /* prologue: frame size=2 */ |
||
1012 | 1033 0892 1F93 push r17 |
||
1013 | 1034 0894 CF93 push r28 |
||
1014 | 1035 0896 DF93 push r29 |
||
1015 | 1036 0898 CDB7 in r28,__SP_L__ |
||
1016 | 1037 089a DEB7 in r29,__SP_H__ |
||
1017 | 1038 089c 2297 sbiw r28,2 |
||
1018 | 1039 089e 0FB6 in __tmp_reg__,__SREG__ |
||
1019 | 1040 08a0 F894 cli |
||
1020 | 1041 08a2 DEBF out __SP_H__,r29 |
||
1021 | 1042 08a4 0FBE out __SREG__,__tmp_reg__ |
||
1022 | 1043 08a6 CDBF out __SP_L__,r28 |
||
1023 | 1044 /* prologue end (size=11) */ |
||
1024 | 1045 08a8 8091 0000 lds r24,NeuerDatensatzEmpfangen |
||
1025 | 1046 08ac 8823 tst r24 |
||
1026 | 1047 08ae 01F4 brne .+2 |
||
1027 | 1048 08b0 00C0 rjmp .L156 |
||
1028 | 1049 08b2 8FEF ldi r24,lo8(-1) |
||
1029 | 1050 08b4 8093 0000 sts PcZugriff,r24 |
||
1030 | 1051 08b8 8091 0000 lds r24,RxdBuffer+2 |
||
1031 | 1052 08bc 8137 cpi r24,lo8(113) |
||
1032 | 1053 08be 00F4 brsh .L151 |
||
1033 | 1054 08c0 8C36 cpi r24,lo8(108) |
||
1034 | 1055 08c2 00F0 brlo .+2 |
||
1035 | 1056 08c4 00C0 rjmp .L147 |
||
1036 | 1057 08c6 8736 cpi r24,lo8(103) |
||
1037 | 1058 08c8 01F4 brne .+2 |
||
1038 | 1059 08ca 00C0 rjmp .L145 |
||
1039 | 1060 08cc 8836 cpi r24,lo8(104) |
||
1040 | 1061 08ce 01F0 breq .L146 |
||
1041 | 1062 08d0 8336 cpi r24,lo8(99) |
||
1042 | 1063 08d2 01F0 breq .+2 |
||
1043 | 1064 08d4 00C0 rjmp .L143 |
||
1044 | 1065 08d6 00C0 rjmp .L144 |
||
1045 | 1066 .L151: |
||
1046 | 1067 08d8 8437 cpi r24,lo8(116) |
||
1047 | 1068 08da 01F0 breq .L149 |
||
1048 | 1069 08dc 8637 cpi r24,lo8(118) |
||
1049 | 1070 08de 01F0 breq .L150 |
||
1050 | 1071 08e0 8137 cpi r24,lo8(113) |
||
1051 | 1072 08e2 01F0 breq .+2 |
||
1052 | 1073 08e4 00C0 rjmp .L143 |
||
1053 | 1074 08e6 00C0 rjmp .L148 |
||
1054 | 1075 .L144: |
||
1055 | 1076 08e8 2091 0000 lds r18,AnzahlEmpfangsBytes |
||
1056 | 1077 08ec 43E0 ldi r20,lo8(3) |
||
1057 | 1078 08ee 6BE0 ldi r22,lo8(11) |
||
1058 | 1079 08f0 80E0 ldi r24,lo8(DebugIn) |
||
1059 | 1080 08f2 90E0 ldi r25,hi8(DebugIn) |
||
1060 | 1081 08f4 0E94 0000 call Decode64 |
||
1061 | 1082 08f8 8091 0000 lds r24,RemoteTasten |
||
1062 | 1083 08fc 9091 0000 lds r25,DebugIn+2 |
||
1063 | 1084 0900 892B or r24,r25 |
||
1064 | 1085 0902 8093 0000 sts RemoteTasten,r24 |
||
1065 | 1086 0906 81E0 ldi r24,lo8(1) |
||
1066 | 1087 0908 8093 0000 sts DebugDataAnforderung,r24 |
||
1067 | 1088 090c 00C0 rjmp .L143 |
||
1068 | 1089 .L146: |
||
1069 | 1090 090e 2091 0000 lds r18,AnzahlEmpfangsBytes |
||
1070 | 1091 0912 43E0 ldi r20,lo8(3) |
||
1071 | 1092 0914 62E0 ldi r22,lo8(2) |
||
1072 | 1093 0916 CE01 movw r24,r28 |
||
1073 | 1094 0918 0196 adiw r24,1 |
||
1074 | 1095 091a 0E94 0000 call Decode64 |
||
1075 | 1096 091e 8091 0000 lds r24,RemoteTasten |
||
1076 | 1097 0922 9981 ldd r25,Y+1 |
||
1077 | 1098 0924 892B or r24,r25 |
||
1078 | 1099 0926 8093 0000 sts RemoteTasten,r24 |
||
1079 | 1100 092a 81E0 ldi r24,lo8(1) |
||
1080 | 1101 092c 8093 0000 sts DebugDisplayAnforderung,r24 |
||
1081 | 1102 0930 00C0 rjmp .L143 |
||
1082 | 1103 .L149: |
||
1083 | 1104 0932 2091 0000 lds r18,AnzahlEmpfangsBytes |
||
1084 | 1105 0936 43E0 ldi r20,lo8(3) |
||
1085 | 1106 0938 64E0 ldi r22,lo8(4) |
||
1086 | 1107 093a 80E0 ldi r24,lo8(MotorTest) |
||
1087 | 1108 093c 90E0 ldi r25,hi8(MotorTest) |
||
1088 | 1109 093e 0E94 0000 call Decode64 |
||
1089 | 1110 0942 00C0 rjmp .L143 |
||
1090 | 1111 .L150: |
||
1091 | 1112 0944 81E0 ldi r24,lo8(1) |
||
1092 | 1113 0946 8093 0000 sts GetVersionAnforderung,r24 |
||
1093 | 1114 094a 00C0 rjmp .L143 |
||
1094 | 1115 .L145: |
||
1095 | 1116 094c 81E0 ldi r24,lo8(1) |
||
1096 | 1117 094e 8093 0000 sts DebugGetAnforderung,r24 |
||
1097 | 1118 0952 00C0 rjmp .L143 |
||
1098 | 1119 .L148: |
||
1099 | 1120 0954 2091 0000 lds r18,AnzahlEmpfangsBytes |
||
1100 | 1121 0958 43E0 ldi r20,lo8(3) |
||
1101 | 1122 095a 62E0 ldi r22,lo8(2) |
||
1102 | 1123 095c CE01 movw r24,r28 |
||
1103 | 1124 095e 0196 adiw r24,1 |
||
1104 | 1125 0960 0E94 0000 call Decode64 |
||
1105 | 1126 0964 8981 ldd r24,Y+1 |
||
1106 | 1127 0966 8F3F cpi r24,lo8(-1) |
||
1107 | 1128 0968 01F0 breq .L152 |
||
1108 | 1129 096a 8630 cpi r24,lo8(6) |
||
1109 | 1130 096c 00F0 brlo .L154 |
||
1110 | 1131 096e 85E0 ldi r24,lo8(5) |
||
1111 | 1132 0970 8983 std Y+1,r24 |
||
1112 | 1133 .L154: |
||
1113 | 1134 0972 4AE3 ldi r20,lo8(58) |
||
1114 | 1135 0974 60E0 ldi r22,lo8(EE_Parameter) |
||
1115 | 1136 0976 70E0 ldi r23,hi8(EE_Parameter) |
||
1116 | 1137 0978 8981 ldd r24,Y+1 |
||
1117 | 1138 097a 0E94 0000 call ReadParameterSet |
||
1118 | 1139 097e 8981 ldd r24,Y+1 |
||
1119 | 1140 0980 2AE3 ldi r18,lo8(58) |
||
1120 | 1141 0982 40E0 ldi r20,lo8(EE_Parameter) |
||
1121 | 1142 0984 50E0 ldi r21,hi8(EE_Parameter) |
||
1122 | 1143 0986 6091 0000 lds r22,MeineSlaveAdresse |
||
1123 | 1144 098a 00C0 rjmp .L157 |
||
1124 | 1145 .L152: |
||
1125 | 1146 098c 1091 0000 lds r17,MeineSlaveAdresse |
||
1126 | 1147 0990 0E94 0000 call GetActiveParamSetNumber |
||
1127 | 1148 0994 2AE3 ldi r18,lo8(58) |
||
1128 | 1149 0996 40E0 ldi r20,lo8(EE_Parameter) |
||
1129 | 1150 0998 50E0 ldi r21,hi8(EE_Parameter) |
||
1130 | 1151 099a 612F mov r22,r17 |
||
1131 | 1152 .L157: |
||
1132 | 1153 099c 855B subi r24,lo8(-(75)) |
||
1133 | 1154 099e 0E94 0000 call SendOutData |
||
1134 | 1155 09a2 00C0 rjmp .L143 |
||
1135 | 1156 .L147: |
||
1136 | 1157 09a4 2091 0000 lds r18,AnzahlEmpfangsBytes |
||
1137 | 1158 09a8 43E0 ldi r20,lo8(3) |
||
1138 | 1159 09aa 6AE3 ldi r22,lo8(58) |
||
1139 | 1160 09ac 80E0 ldi r24,lo8(EE_Parameter) |
||
1140 | 1161 09ae 90E0 ldi r25,hi8(EE_Parameter) |
||
1141 | 1162 09b0 0E94 0000 call Decode64 |
||
1142 | 1163 09b4 8091 0000 lds r24,RxdBuffer+2 |
||
1143 | 1164 09b8 4AE3 ldi r20,lo8(58) |
||
1144 | 1165 09ba 60E0 ldi r22,lo8(EE_Parameter) |
||
1145 | 1166 09bc 70E0 ldi r23,hi8(EE_Parameter) |
||
1146 | 1167 09be 8B56 subi r24,lo8(-(-107)) |
||
1147 | 1168 09c0 0E94 0000 call WriteParameterSet |
||
1148 | 1169 09c4 8091 0000 lds r24,RxdBuffer+2 |
||
1149 | 1170 09c8 8B56 subi r24,lo8(-(-107)) |
||
1150 | 1171 09ca A0E0 ldi r26,lo8(EEPromArray+2) |
||
1151 | 1172 09cc B0E0 ldi r27,hi8(EEPromArray+2) |
||
1152 | 1173 /* #APP */ |
||
1153 | 1174 09ce 082E mov __tmp_reg__,r24 |
||
1154 | 1175 09d0 0E94 0000 call __eeprom_write_byte_1F2021 |
||
1155 | 1176 /* #NOAPP */ |
||
1156 | 1177 09d4 0E94 0000 call GetActiveParamSetNumber |
||
1157 | 1178 09d8 9927 clr r25 |
||
1158 | 1179 09da 0E94 0000 call Piep |
||
1159 | 1180 .L143: |
||
1160 | 1181 09de 1092 0000 sts NeuerDatensatzEmpfangen,__zero_reg__ |
||
1161 | 1182 .L156: |
||
1162 | 1183 /* epilogue: frame size=2 */ |
||
1163 | 1184 09e2 2296 adiw r28,2 |
||
1164 | 1185 09e4 0FB6 in __tmp_reg__,__SREG__ |
||
1165 | 1186 09e6 F894 cli |
||
1166 | 1187 09e8 DEBF out __SP_H__,r29 |
||
1167 | 1188 09ea 0FBE out __SREG__,__tmp_reg__ |
||
1168 | 1189 09ec CDBF out __SP_L__,r28 |
||
1169 | 1190 09ee DF91 pop r29 |
||
1170 | 1191 09f0 CF91 pop r28 |
||
1171 | 1192 09f2 1F91 pop r17 |
||
1172 | 1193 09f4 0895 ret |
||
1173 | 1194 /* epilogue end (size=10) */ |
||
1174 | 1195 /* function BearbeiteRxDaten size 179 (158) */ |
||
1175 | 1197 .global DebugGetAnforderung |
||
1176 | 1198 .global DebugGetAnforderung |
||
1177 | 1199 .section .bss |
||
1178 | 1202 DebugGetAnforderung: |
||
1179 | 1203 0000 00 .skip 1,0 |
||
1180 | 1204 .global DebugDisplayAnforderung |
||
1181 | 1205 .global DebugDisplayAnforderung |
||
1182 | 1208 DebugDisplayAnforderung: |
||
1183 | 1209 0001 00 .skip 1,0 |
||
1184 | 1210 .global DebugDataAnforderung |
||
1185 | 1211 .global DebugDataAnforderung |
||
1186 | 1214 DebugDataAnforderung: |
||
1187 | 1215 0002 00 .skip 1,0 |
||
1188 | 1216 .global GetVersionAnforderung |
||
1189 | 1217 .global GetVersionAnforderung |
||
1190 | 1220 GetVersionAnforderung: |
||
1191 | 1221 0003 00 .skip 1,0 |
||
1192 | 1222 .global SioTmp |
||
1193 | 1223 .global SioTmp |
||
1194 | 1226 SioTmp: |
||
1195 | 1227 0004 00 .skip 1,0 |
||
1196 | 1228 .global NeuerDatensatzEmpfangen |
||
1197 | 1229 .global NeuerDatensatzEmpfangen |
||
1198 | 1232 NeuerDatensatzEmpfangen: |
||
1199 | 1233 0005 00 .skip 1,0 |
||
1200 | 1234 .global NeueKoordinateEmpfangen |
||
1201 | 1235 .global NeueKoordinateEmpfangen |
||
1202 | 1238 NeueKoordinateEmpfangen: |
||
1203 | 1239 0006 00 .skip 1,0 |
||
1204 | 1240 .global UebertragungAbgeschlossen |
||
1205 | 1241 .data |
||
1206 | 1244 UebertragungAbgeschlossen: |
||
1207 | 1245 0000 01 .byte 1 |
||
1208 | 1246 .global CntCrcError |
||
1209 | 1247 .global CntCrcError |
||
1210 | 1248 .section .bss |
||
1211 | 1251 CntCrcError: |
||
1212 | 1252 0007 00 .skip 1,0 |
||
1213 | 1253 .global AnzahlEmpfangsBytes |
||
1214 | 1254 .global AnzahlEmpfangsBytes |
||
1215 | 1257 AnzahlEmpfangsBytes: |
||
1216 | 1258 0008 00 .skip 1,0 |
||
1217 | 1259 .global PC_DebugTimeout |
||
1218 | 1260 .global PC_DebugTimeout |
||
1219 | 1263 PC_DebugTimeout: |
||
1220 | 1264 0009 00 .skip 1,0 |
||
1221 | 1265 .global PcZugriff |
||
1222 | 1266 .data |
||
1223 | 1269 PcZugriff: |
||
1224 | 1270 0001 64 .byte 100 |
||
1225 | 1271 .global MotorTest |
||
1226 | 1272 .global MotorTest |
||
1227 | 1273 .section .bss |
||
1228 | 1276 MotorTest: |
||
1229 | 1277 000a 0000 0000 .skip 4,0 |
||
1230 | 1278 .lcomm dis_zeile.2398,1 |
||
1231 | 1279 .lcomm UartState.2075,1 |
||
1232 | 1280 .lcomm buf_ptr.2074,1 |
||
1233 | 1281 .lcomm crc2.2073,1 |
||
1234 | 1282 .lcomm crc1.2072,1 |
||
1235 | 1283 .lcomm crc.2071,2 |
||
1236 | 1284 .lcomm ptr.2038,2 |
||
1237 | 1285 .lcomm gpsState,1 |
||
1238 | 1286 .comm DiffNick,2,1 |
||
1239 | 1287 .comm DiffRoll,2,1 |
||
1240 | 1288 .comm SenderOkay,1,1 |
||
1241 | 1289 .comm CosinusNickWinkel,1,1 |
||
1242 | 1290 .comm CosinusRollWinkel,1,1 |
||
1243 | 1291 .comm durchschnitt_northing,4,1 |
||
1244 | 1292 .comm durchschnitt_easting,4,1 |
||
1245 | 1293 .comm gps_p,2,1 |
||
1246 | 1294 .comm gps_d,2,1 |
||
1247 | 1295 .comm skal,2,1 |
||
1248 | 1296 .comm SendeBuffer,150,1 |
||
1249 | 1297 .comm RxdBuffer,150,1 |
||
1250 | 1298 .comm MeineSlaveAdresse,1,1 |
||
1251 | 1299 .comm Debug_Timer,2,1 |
||
1252 | 1300 .comm DebugOut,50,1 |
||
1253 | 1301 .comm actualPos,34,1 |
||
1254 | 1302 .comm DebugIn,11,1 |
||
1255 | 1303 .comm VersionInfo,10,1 |
||
1256 | 1304 .comm RemoteTasten,1,1 |
||
1257 | 1305 .comm Timeout,1,1 |
||
1258 | 1306 .comm IntegralNick,4,1 |
||
1259 | 1307 .comm IntegralNick2,4,1 |
||
1260 | 1308 .comm IntegralRoll,4,1 |
||
1261 | 1309 .comm IntegralRoll2,4,1 |
||
1262 | 1310 .comm Mess_IntegralNick,4,1 |
||
1263 | 1311 .comm Mess_IntegralNick2,4,1 |
||
1264 | 1312 .comm Mess_IntegralRoll,4,1 |
||
1265 | 1313 .comm Mess_IntegralRoll2,4,1 |
||
1266 | 1314 .comm Integral_Gier,4,1 |
||
1267 | 1315 .comm Mess_Integral_Gier,4,1 |
||
1268 | 1316 .comm h,1,1 |
||
1269 | 1317 .comm m,1,1 |
||
1270 | 1318 .comm s,1,1 |
||
1271 | 1319 .comm Motor_Vorne,1,1 |
||
1272 | 1320 .comm Motor_Hinten,1,1 |
||
1273 | 1321 .comm Motor_Rechts,1,1 |
||
1274 | 1322 .comm Motor_Links,1,1 |
||
1275 | 1323 .comm Count,1,1 |
||
1276 | 1324 .comm MotorWert,5,1 |
||
1277 | 1325 .comm StickNick,2,1 |
||
1278 | 1326 .comm StickRoll,2,1 |
||
1279 | 1327 .comm StickGier,2,1 |
||
1280 | 1328 .comm MotorenEin,1,1 |
||
1281 | 1329 .comm NMEABuffer,150,1 |
||
1282 | 1330 .comm navStatus,17,1 |
||
1283 | 1331 .comm navPosLlh,29,1 |
||
1284 | 1332 .comm navPosUtm,19,1 |
||
1285 | 1333 .comm navVelNed,37,1 |
||
1286 | 1334 .comm ubxP,2,1 |
||
1287 | 1335 .comm ubxEp,2,1 |
||
1288 | 1336 .comm ubxSp,2,1 |
||
1289 | 1337 .comm CK_A,1,1 |
||
1290 | 1338 .comm CK_B,1,1 |
||
1291 | 1339 .comm msgLen,2,1 |
||
1292 | 1340 .comm msgID,1,1 |
||
1293 | 1341 .comm ignorePacket,1,1 |
||
1294 | 1342 .comm rollOffset,4,1 |
||
1295 | 1343 .comm nickOffset,4,1 |
||
1296 | 1344 /* File "uart.c": code 1286 = 0x0506 (1183), prologues 49, epilogues 54 */ |
||
1297 | DEFINED SYMBOLS |
||
1298 | *ABS*:00000000 uart.c |
||
1299 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:3 *ABS*:0000003f __SREG__ |
||
1300 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:4 *ABS*:0000003e __SP_H__ |
||
1301 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:5 *ABS*:0000003d __SP_L__ |
||
1302 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:6 *ABS*:00000000 __tmp_reg__ |
||
1303 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:7 *ABS*:00000001 __zero_reg__ |
||
1304 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:13 .text:00000000 __vector_22 |
||
1305 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1244 .data:00000000 UebertragungAbgeschlossen |
||
1306 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1283 .bss:00000015 ptr.2038 |
||
1307 | *COM*:00000096 SendeBuffer |
||
1308 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:69 .text:0000006c GPSscanData |
||
1309 | *COM*:00000011 navStatus |
||
1310 | *COM*:00000022 actualPos |
||
1311 | *COM*:00000013 navPosUtm |
||
1312 | *COM*:0000001d navPosLlh |
||
1313 | *COM*:00000025 navVelNed |
||
1314 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:162 .text:00000174 __vector_20 |
||
1315 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1226 .bss:00000004 SioTmp |
||
1316 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1284 .bss:00000017 gpsState |
||
1317 | *COM*:00000001 msgID |
||
1318 | *COM*:00000001 CK_A |
||
1319 | *COM*:00000001 CK_B |
||
1320 | *COM*:00000002 ubxP |
||
1321 | *COM*:00000002 ubxEp |
||
1322 | *COM*:00000002 ubxSp |
||
1323 | *COM*:00000001 ignorePacket |
||
1324 | *COM*:00000002 msgLen |
||
1325 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1279 .bss:00000010 buf_ptr.2074 |
||
1326 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1278 .bss:0000000f UartState.2075 |
||
1327 | *COM*:00000096 RxdBuffer |
||
1328 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1282 .bss:00000013 crc.2071 |
||
1329 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1281 .bss:00000012 crc1.2072 |
||
1330 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1280 .bss:00000011 crc2.2073 |
||
1331 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1251 .bss:00000007 CntCrcError |
||
1332 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1232 .bss:00000005 NeuerDatensatzEmpfangen |
||
1333 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1257 .bss:00000008 AnzahlEmpfangsBytes |
||
1334 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:601 .text:0000057c AddCRC |
||
1335 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:655 .text:000005d8 SendOutData |
||
1336 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:769 .text:000006a8 Decode64 |
||
1337 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:869 .text:00000758 uart_putchar |
||
1338 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:893 .text:0000077a WriteProgramData |
||
1339 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:903 .text:0000077c UART_Init |
||
1340 | *COM*:00000002 Debug_Timer |
||
1341 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:936 .text:000007b6 DatenUebertragung |
||
1342 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1202 .bss:00000000 DebugGetAnforderung |
||
1343 | *COM*:0000000b DebugIn |
||
1344 | *COM*:00000001 MeineSlaveAdresse |
||
1345 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1214 .bss:00000002 DebugDataAnforderung |
||
1346 | *COM*:00000032 DebugOut |
||
1347 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1208 .bss:00000001 DebugDisplayAnforderung |
||
1348 | .bss:0000000e dis_zeile.2398 |
||
1349 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1220 .bss:00000003 GetVersionAnforderung |
||
1350 | *COM*:0000000a VersionInfo |
||
1351 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1031 .text:00000892 BearbeiteRxDaten |
||
1352 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1269 .data:00000001 PcZugriff |
||
1353 | *COM*:00000001 RemoteTasten |
||
1354 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1276 .bss:0000000a MotorTest |
||
1355 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1238 .bss:00000006 NeueKoordinateEmpfangen |
||
1356 | C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccOcl7nO.s:1263 .bss:00000009 PC_DebugTimeout |
||
1357 | *COM*:00000002 DiffNick |
||
1358 | *COM*:00000002 DiffRoll |
||
1359 | *COM*:00000001 SenderOkay |
||
1360 | *COM*:00000001 CosinusNickWinkel |
||
1361 | *COM*:00000001 CosinusRollWinkel |
||
1362 | *COM*:00000004 durchschnitt_northing |
||
1363 | *COM*:00000004 durchschnitt_easting |
||
1364 | *COM*:00000002 gps_p |
||
1365 | *COM*:00000002 gps_d |
||
1366 | *COM*:00000002 skal |
||
1367 | *COM*:00000001 Timeout |
||
1368 | *COM*:00000004 IntegralNick |
||
1369 | *COM*:00000004 IntegralNick2 |
||
1370 | *COM*:00000004 IntegralRoll |
||
1371 | *COM*:00000004 IntegralRoll2 |
||
1372 | *COM*:00000004 Mess_IntegralNick |
||
1373 | *COM*:00000004 Mess_IntegralNick2 |
||
1374 | *COM*:00000004 Mess_IntegralRoll |
||
1375 | *COM*:00000004 Mess_IntegralRoll2 |
||
1376 | *COM*:00000004 Integral_Gier |
||
1377 | *COM*:00000004 Mess_Integral_Gier |
||
1378 | *COM*:00000001 h |
||
1379 | *COM*:00000001 m |
||
1380 | *COM*:00000001 s |
||
1381 | *COM*:00000001 Motor_Vorne |
||
1382 | *COM*:00000001 Motor_Hinten |
||
1383 | *COM*:00000001 Motor_Rechts |
||
1384 | *COM*:00000001 Motor_Links |
||
1385 | *COM*:00000001 Count |
||
1386 | *COM*:00000005 MotorWert |
||
1387 | *COM*:00000002 StickNick |
||
1388 | *COM*:00000002 StickRoll |
||
1389 | *COM*:00000002 StickGier |
||
1390 | *COM*:00000001 MotorenEin |
||
1391 | *COM*:00000096 NMEABuffer |
||
1392 | *COM*:00000004 rollOffset |
||
1393 | *COM*:00000004 nickOffset |
||
1394 | |||
1395 | UNDEFINED SYMBOLS |
||
1396 | __do_copy_data |
||
1397 | __do_clear_bss |
||
1398 | __divmodsi4 |
||
1399 | SetDelay |
||
1400 | CheckDelay |
||
1401 | Menu |
||
1402 | DisplayBuff |
||
1403 | EE_Parameter |
||
1404 | ReadParameterSet |
||
1405 | GetActiveParamSetNumber |
||
1406 | WriteParameterSet |
||
1407 | EEPromArray |
||
1408 | __eeprom_write_byte_1F2021 |
||
1409 | Piep |