1 .file "led.c" 2 .arch atmega1284p 3 __SREG__ = 0x3f 4 __SP_H__ = 0x3e 5 __SP_L__ = 0x3d 6 __tmp_reg__ = 0 7 __zero_reg__ = 1 8 .global __do_copy_data 9 .global __do_clear_bss 10 .global J17Mask 11 .data 14 J17Mask: 15 0000 01 .byte 1 16 .global J17Blinkcount 17 .global J17Blinkcount 18 .section .bss 21 J17Blinkcount: 22 0000 00 .skip 1,0 23 .global J16Mask 24 .data 27 J16Mask: 28 0001 01 .byte 1 29 .global J16Blinkcount 30 .global J16Blinkcount 31 .section .bss 34 J16Blinkcount: 35 0001 00 .skip 1,0 36 .global LED2_Timing 37 .global LED2_Timing 40 LED2_Timing: 41 0002 0000 .skip 2,0 42 .global LED1_Timing 43 .global LED1_Timing 46 LED1_Timing: 47 0004 0000 .skip 2,0 48 .text 49 .global LED_Init 51 LED_Init: 52 /* prologue: frame size=0 */ 53 /* prologue end (size=0) */ 54 0000 87B1 in r24,39-0x20 55 0002 8C60 ori r24,lo8(12) 56 0004 87B9 out 39-0x20,r24 57 0006 4298 cbi 40-0x20,2 58 0008 4398 cbi 40-0x20,3 59 000a 1092 0000 sts J16Blinkcount,__zero_reg__ 60 000e 80E8 ldi r24,lo8(-128) 61 0010 8093 0000 sts J16Mask,r24 62 0014 1092 0000 sts J17Blinkcount,__zero_reg__ 63 0018 8093 0000 sts J17Mask,r24 64 /* epilogue: frame size=0 */ 65 001c 0895 ret 66 /* epilogue end (size=1) */ 67 /* function LED_Init size 15 (14) */ 69 .lcomm delay.0,1 70 .lcomm J16Bitmask.1,1 71 .lcomm J17Bitmask.2,1 72 .lcomm J16Warn.3,1 73 .lcomm J17Warn.4,1 74 .lcomm from_nc.5,1 75 .global LED_Update 77 LED_Update: 78 /* prologue: frame size=0 */ 79 /* prologue end (size=0) */ 80 001e 8091 0000 lds r24,delay.0 81 0022 8150 subi r24,lo8(-(-1)) 82 0024 8093 0000 sts delay.0,r24 83 0028 8F3F cpi r24,lo8(-1) 84 002a 01F0 breq .+2 85 002c 00C0 rjmp .L2 86 002e 89E0 ldi r24,lo8(9) 87 0030 8093 0000 sts delay.0,r24 88 0034 8091 0000 lds r24,PPM_in+50 89 0038 9091 0000 lds r25,(PPM_in+50)+1 90 003c 8158 subi r24,lo8(-127) 91 003e 9F4F sbci r25,hi8(-127) 92 0040 01F0 breq .L4 93 0042 8091 0000 lds r24,PPM_in+50 94 0046 9091 0000 lds r25,(PPM_in+50)+1 95 004a 8158 subi r24,lo8(-(127)) 96 004c 8093 0000 sts from_nc.5,r24 97 .L4: 98 0050 8091 0000 lds r24,FC_StatusFlags 99 0054 9927 clr r25 100 0056 8073 andi r24,lo8(48) 101 0058 9070 andi r25,hi8(48) 102 005a 892B or r24,r25 103 005c 01F4 brne .L6 104 005e 8091 0000 lds r24,VersionInfo+6 105 0062 80FF sbrs r24,0 106 0064 00C0 rjmp .L5 107 .L6: 108 0066 8091 0000 lds r24,EE_Parameter+78 109 006a 8823 tst r24 110 006c 01F0 breq .L7 111 006e 8091 0000 lds r24,J16Warn.3 112 0072 8823 tst r24 113 0074 01F4 brne .L8 114 0076 84E0 ldi r24,lo8(4) 115 0078 8093 0000 sts J16Blinkcount,r24 116 .L8: 117 007c 81E0 ldi r24,lo8(1) 118 007e 8093 0000 sts J16Warn.3,r24 119 .L7: 120 0082 8091 0000 lds r24,EE_Parameter+79 121 0086 8823 tst r24 122 0088 01F0 breq .L11 123 008a 8091 0000 lds r24,J17Warn.4 124 008e 8823 tst r24 125 0090 01F4 brne .L10 126 0092 84E0 ldi r24,lo8(4) 127 0094 8093 0000 sts J17Blinkcount,r24 128 .L10: 129 0098 81E0 ldi r24,lo8(1) 130 009a 8093 0000 sts J17Warn.4,r24 131 009e 00C0 rjmp .L11 132 .L5: 133 00a0 1092 0000 sts J16Warn.3,__zero_reg__ 134 00a4 1092 0000 sts J17Warn.4,__zero_reg__ 135 00a8 8091 0000 lds r24,EE_Parameter+74 136 00ac 8093 0000 sts J16Bitmask.1,r24 137 00b0 8091 0000 lds r24,EE_Parameter+76 138 00b4 8093 0000 sts J17Bitmask.2,r24 139 .L11: 140 00b8 8091 0000 lds r24,J16Warn.3 141 00bc 8823 tst r24 142 00be 01F0 breq .+2 143 00c0 00C0 rjmp .L12 144 00c2 8091 0000 lds r24,EE_Parameter+108 145 00c6 282F mov r18,r24 146 00c8 3327 clr r19 147 00ca 24FF sbrs r18,4 148 00cc 00C0 rjmp .L13 149 00ce 8091 0000 lds r24,MotorenEin 150 00d2 8823 tst r24 151 00d4 01F4 brne .L13 152 00d6 25FD sbrc r18,5 153 00d8 00C0 rjmp .L78 154 00da 00C0 rjmp .L46 155 .L13: 156 00dc 9091 0000 lds r25,EE_Parameter+75 157 00e0 983F cpi r25,lo8(-8) 158 00e2 00F0 brlo .L17 159 00e4 8091 0000 lds r24,Parameter_J16Timing 160 00e8 8D3D cpi r24,lo8(-35) 161 00ea 00F0 brlo .L17 162 00ec 8091 0000 lds r24,J16Bitmask.1 163 00f0 8823 tst r24 164 00f2 04F0 brlt .L22 165 00f4 00C0 rjmp .L87 166 .L17: 167 00f6 983F cpi r25,lo8(-8) 168 00f8 00F0 brlo .L21 169 00fa 8091 0000 lds r24,Parameter_J16Timing 170 00fe 8530 cpi r24,lo8(5) 171 0100 01F4 brne .L21 172 0102 8091 0000 lds r24,J16Bitmask.1 173 0106 87FF sbrs r24,7 174 0108 00C0 rjmp .L22 175 .L87: 176 010a 4298 cbi 40-0x20,2 177 010c 00C0 rjmp .L23 178 .L22: 179 010e 429A sbi 40-0x20,2 180 .L23: 181 0110 81E0 ldi r24,lo8(1) 182 0112 00C0 rjmp .L79 183 .L21: 184 0114 8091 0000 lds r24,J16Blinkcount 185 0118 8150 subi r24,lo8(-(-1)) 186 011a 8093 0000 sts J16Blinkcount,r24 187 011e 8F3F cpi r24,lo8(-1) 188 0120 01F0 breq .+2 189 0122 00C0 rjmp .L42 190 0124 8091 0000 lds r24,EE_Parameter+111 191 0128 85FF sbrs r24,5 192 012a 00C0 rjmp .L26 193 012c 9091 0000 lds r25,from_nc.5 194 0130 892F mov r24,r25 195 0132 8695 lsr r24 196 0134 8093 0000 sts J16Blinkcount,r24 197 0138 9923 tst r25 198 013a 01F4 brne .L27 199 013c 8091 0000 lds r24,J16Bitmask.1 200 0140 87FF sbrs r24,7 201 0142 00C0 rjmp .L28 202 0144 4298 cbi 40-0x20,2 203 0146 00C0 rjmp .L29 204 .L28: 205 0148 429A sbi 40-0x20,2 206 .L29: 207 014a 1092 0000 sts J16Mask,__zero_reg__ 208 014e 00C0 rjmp .L42 209 .L27: 210 0150 8091 0000 lds r24,J16Mask 211 0154 9091 0000 lds r25,J16Bitmask.1 212 0158 8823 tst r24 213 015a 01F4 brne .L31 214 015c 8093 0000 sts from_nc.5,r24 215 0160 80E8 ldi r24,lo8(-128) 216 0162 8093 0000 sts J16Mask,r24 217 0166 9923 tst r25 218 0168 04F0 brlt .L46 219 016a 00C0 rjmp .L78 220 .L31: 221 016c 9823 and r25,r24 222 016e 01F0 breq .L35 223 0170 429A sbi 40-0x20,2 224 0172 00C0 rjmp .L36 225 .L35: 226 0174 4298 cbi 40-0x20,2 227 .L36: 228 0176 8695 lsr r24 229 .L79: 230 0178 8093 0000 sts J16Mask,r24 231 017c 00C0 rjmp .L42 232 .L26: 233 017e 8091 0000 lds r24,Parameter_J16Timing 234 0182 8695 lsr r24 235 0184 8093 0000 sts J16Blinkcount,r24 236 0188 8091 0000 lds r24,J16Mask 237 018c 8130 cpi r24,lo8(1) 238 018e 01F4 brne .L38 239 0190 1092 0000 sts from_nc.5,__zero_reg__ 240 0194 80E8 ldi r24,lo8(-128) 241 0196 00C0 rjmp .L76 242 .L38: 243 0198 8695 lsr r24 244 .L76: 245 019a 8093 0000 sts J16Mask,r24 246 019e 8091 0000 lds r24,J16Mask 247 01a2 9091 0000 lds r25,J16Bitmask.1 248 01a6 00C0 rjmp .L84 249 .L12: 250 01a8 8091 0000 lds r24,J16Blinkcount 251 01ac 8150 subi r24,lo8(-(-1)) 252 01ae 8093 0000 sts J16Blinkcount,r24 253 01b2 8F3F cpi r24,lo8(-1) 254 01b4 01F4 brne .L42 255 01b6 89E0 ldi r24,lo8(9) 256 01b8 8093 0000 sts J16Blinkcount,r24 257 01bc 8091 0000 lds r24,J16Mask 258 01c0 8130 cpi r24,lo8(1) 259 01c2 01F4 brne .L44 260 01c4 80E8 ldi r24,lo8(-128) 261 01c6 00C0 rjmp .L77 262 .L44: 263 01c8 8695 lsr r24 264 .L77: 265 01ca 8093 0000 sts J16Mask,r24 266 01ce 8091 0000 lds r24,J16Mask 267 01d2 9091 0000 lds r25,EE_Parameter+78 268 .L84: 269 01d6 8923 and r24,r25 270 01d8 01F0 breq .L46 271 .L78: 272 01da 429A sbi 40-0x20,2 273 01dc 00C0 rjmp .L42 274 .L46: 275 01de 4298 cbi 40-0x20,2 276 .L42: 277 01e0 8091 0000 lds r24,J17Warn.4 278 01e4 8823 tst r24 279 01e6 01F0 breq .+2 280 01e8 00C0 rjmp .L48 281 01ea 9091 0000 lds r25,EE_Parameter+108 282 01ee 97FF sbrs r25,7 283 01f0 00C0 rjmp .L49 284 01f2 8091 0000 lds r24,MotorenEin 285 01f6 8823 tst r24 286 01f8 01F4 brne .L49 287 01fa 96FD sbrc r25,6 288 01fc 00C0 rjmp .L82 289 01fe 00C0 rjmp .L70 290 .L49: 291 0200 9091 0000 lds r25,EE_Parameter+77 292 0204 983F cpi r25,lo8(-8) 293 0206 00F0 brlo .L53 294 0208 8091 0000 lds r24,Parameter_J17Timing 295 020c 8D3D cpi r24,lo8(-35) 296 020e 00F0 brlo .L53 297 0210 8091 0000 lds r24,J17Bitmask.2 298 0214 8823 tst r24 299 0216 04F0 brlt .L58 300 0218 00C0 rjmp .L85 301 .L53: 302 021a 983F cpi r25,lo8(-8) 303 021c 00F0 brlo .L57 304 021e 8091 0000 lds r24,Parameter_J17Timing 305 0222 8530 cpi r24,lo8(5) 306 0224 01F4 brne .L57 307 0226 8091 0000 lds r24,J17Bitmask.2 308 022a 87FF sbrs r24,7 309 022c 00C0 rjmp .L58 310 .L85: 311 022e 4398 cbi 40-0x20,3 312 0230 00C0 rjmp .L59 313 .L58: 314 0232 439A sbi 40-0x20,3 315 .L59: 316 0234 81E0 ldi r24,lo8(1) 317 0236 8093 0000 sts J17Mask,r24 318 023a 00C0 rjmp .L66 319 .L57: 320 023c 8091 0000 lds r24,J17Blinkcount 321 0240 8150 subi r24,lo8(-(-1)) 322 0242 8093 0000 sts J17Blinkcount,r24 323 0246 8F3F cpi r24,lo8(-1) 324 0248 01F4 brne .L66 325 024a 8091 0000 lds r24,Parameter_J17Timing 326 024e 8695 lsr r24 327 0250 8093 0000 sts J17Blinkcount,r24 328 0254 8091 0000 lds r24,J17Mask 329 0258 8130 cpi r24,lo8(1) 330 025a 01F4 brne .L62 331 025c 80E8 ldi r24,lo8(-128) 332 025e 00C0 rjmp .L80 333 .L62: 334 0260 8695 lsr r24 335 .L80: 336 0262 8093 0000 sts J17Mask,r24 337 0266 8091 0000 lds r24,J17Mask 338 026a 9091 0000 lds r25,J17Bitmask.2 339 026e 00C0 rjmp .L86 340 .L48: 341 0270 8091 0000 lds r24,J17Blinkcount 342 0274 8150 subi r24,lo8(-(-1)) 343 0276 8093 0000 sts J17Blinkcount,r24 344 027a 8F3F cpi r24,lo8(-1) 345 027c 01F4 brne .L66 346 027e 89E0 ldi r24,lo8(9) 347 0280 8093 0000 sts J17Blinkcount,r24 348 0284 8091 0000 lds r24,J17Mask 349 0288 8130 cpi r24,lo8(1) 350 028a 01F4 brne .L68 351 028c 80E8 ldi r24,lo8(-128) 352 028e 00C0 rjmp .L81 353 .L68: 354 0290 8695 lsr r24 355 .L81: 356 0292 8093 0000 sts J17Mask,r24 357 0296 8091 0000 lds r24,J17Mask 358 029a 9091 0000 lds r25,EE_Parameter+79 359 .L86: 360 029e 8923 and r24,r25 361 02a0 01F0 breq .L70 362 .L82: 363 02a2 439A sbi 40-0x20,3 364 02a4 00C0 rjmp .L66 365 .L70: 366 02a6 4398 cbi 40-0x20,3 367 .L66: 368 02a8 429B sbis 40-0x20,2 369 02aa 00C0 rjmp .L72 370 02ac 8091 0000 lds r24,FC_StatusFlags2 371 02b0 8860 ori r24,lo8(8) 372 02b2 00C0 rjmp .L83 373 .L72: 374 02b4 8091 0000 lds r24,FC_StatusFlags2 375 02b8 877F andi r24,lo8(-9) 376 .L83: 377 02ba 8093 0000 sts FC_StatusFlags2,r24 378 02be 439B sbis 40-0x20,3 379 02c0 00C0 rjmp .L74 380 02c2 8091 0000 lds r24,FC_StatusFlags2 381 02c6 8061 ori r24,lo8(16) 382 02c8 8093 0000 sts FC_StatusFlags2,r24 383 02cc 0895 ret 384 .L74: 385 02ce 8091 0000 lds r24,FC_StatusFlags2 386 02d2 8F7E andi r24,lo8(-17) 387 02d4 8093 0000 sts FC_StatusFlags2,r24 388 .L2: 389 02d8 0895 ret 390 /* epilogue: frame size=0 */ 391 /* epilogue: noreturn */ 392 /* epilogue end (size=0) */ 393 /* function LED_Update size 357 (357) */ 395 /* File "led.c": code 372 = 0x0174 ( 371), prologues 0, epilogues 1 */ DEFINED SYMBOLS *ABS*:00000000 led.c C:\Temp/cc2SJusC.s:3 *ABS*:0000003f __SREG__ C:\Temp/cc2SJusC.s:4 *ABS*:0000003e __SP_H__ C:\Temp/cc2SJusC.s:5 *ABS*:0000003d __SP_L__ C:\Temp/cc2SJusC.s:6 *ABS*:00000000 __tmp_reg__ C:\Temp/cc2SJusC.s:7 *ABS*:00000001 __zero_reg__ C:\Temp/cc2SJusC.s:14 .data:00000000 J17Mask C:\Temp/cc2SJusC.s:21 .bss:00000000 J17Blinkcount C:\Temp/cc2SJusC.s:27 .data:00000001 J16Mask C:\Temp/cc2SJusC.s:34 .bss:00000001 J16Blinkcount C:\Temp/cc2SJusC.s:40 .bss:00000002 LED2_Timing C:\Temp/cc2SJusC.s:46 .bss:00000004 LED1_Timing C:\Temp/cc2SJusC.s:51 .text:00000000 LED_Init .bss:00000006 delay.0 C:\Temp/cc2SJusC.s:69 .bss:00000007 J16Bitmask.1 C:\Temp/cc2SJusC.s:70 .bss:00000008 J17Bitmask.2 C:\Temp/cc2SJusC.s:71 .bss:00000009 J16Warn.3 C:\Temp/cc2SJusC.s:72 .bss:0000000a J17Warn.4 C:\Temp/cc2SJusC.s:73 .bss:0000000b from_nc.5 C:\Temp/cc2SJusC.s:77 .text:0000001e LED_Update UNDEFINED SYMBOLS __do_copy_data __do_clear_bss PPM_in FC_StatusFlags VersionInfo EE_Parameter MotorenEin Parameter_J16Timing Parameter_J17Timing FC_StatusFlags2