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