📄 main.lst
字号:
177:main.c **** else
178:main.c **** alarm_time = 0x05;
351 .stabn 68,0,178,.LM29-avr_ini
352 .LM29:
353 00a0 85E0 ldi r24,lo8(5)
354 .L17:
355 00a2 8093 0000 sts alarm_time,r24
179:main.c ****
180:main.c **** if( eeprom_rb( &ALARM_ENABLE ) == eeprom_rb( &ALARM_ENABLE_CHK ) )
356 .stabn 68,0,180,.LM30-avr_ini
357 .LM30:
358 00a6 80E0 ldi r24,lo8(ALARM_ENABLE)
359 00a8 90E0 ldi r25,hi8(ALARM_ENABLE)
360 00aa 00D0 rcall eeprom_read_byte
361 00ac 182F mov r17,r24
362 00ae 80E0 ldi r24,lo8(ALARM_ENABLE_CHK)
363 00b0 90E0 ldi r25,hi8(ALARM_ENABLE_CHK)
364 00b2 00D0 rcall eeprom_read_byte
365 00b4 1817 cp r17,r24
366 00b6 11F0 breq .L23
181:main.c **** alarm_enable = eeprom_rb( &ALARM_ENABLE );
182:main.c **** else
183:main.c **** alarm_enable = 0x01;
367 .stabn 68,0,183,.LM31-avr_ini
368 .LM31:
369 00b8 81E0 ldi r24,lo8(1)
370 00ba 10C0 rjmp .L18
371 .stabn 68,0,181,.LM32-avr_ini
372 .LM32:
373 .L23:
374 00bc 80E0 ldi r24,lo8(ALARM_ENABLE)
375 00be 90E0 ldi r25,hi8(ALARM_ENABLE)
376 00c0 00D0 rcall eeprom_read_byte
377 00c2 0CC0 rjmp .L18
378 .stabn 68,0,176,.LM33-avr_ini
379 .LM33:
380 .L22:
381 00c4 80E0 ldi r24,lo8(ALARM_TIME)
382 00c6 90E0 ldi r25,hi8(ALARM_TIME)
383 00c8 00D0 rcall eeprom_read_byte
384 00ca EBCF rjmp .L17
385 .stabn 68,0,171,.LM34-avr_ini
386 .LM34:
387 .L21:
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccygaaaa.s page 11
388 00cc 80E0 ldi r24,lo8(ALARM_LEVEL)
389 00ce 90E0 ldi r25,hi8(ALARM_LEVEL)
390 00d0 00D0 rcall eeprom_read_byte
391 00d2 DBCF rjmp .L16
392 .stabn 68,0,165,.LM35-avr_ini
393 .LM35:
394 .L20:
395 00d4 80E0 ldi r24,lo8(WEIGAN_FORMAT)
396 00d6 90E0 ldi r25,hi8(WEIGAN_FORMAT)
397 00d8 00D0 rcall eeprom_read_byte
398 00da CBCF rjmp .L15
399 .L18:
400 00dc 8093 0000 sts alarm_enable,r24
184:main.c ****
185:main.c **** Beep( 2 );
401 .stabn 68,0,185,.LM36-avr_ini
402 .LM36:
403 00e0 82E0 ldi r24,lo8(2)
404 00e2 07D2 rcall Beep
186:main.c ****
187:main.c **** Set_GREEN_LED( );
405 .stabn 68,0,187,.LM37-avr_ini
406 .LM37:
407 00e4 9698 cbi 50-0x20,6
188:main.c **** Delayms( 300 );
408 .stabn 68,0,188,.LM38-avr_ini
409 .LM38:
410 00e6 8CE2 ldi r24,lo8(300)
411 00e8 91E0 ldi r25,hi8(300)
412 00ea 20D2 rcall Delayms
189:main.c **** Set_RED_LED( );
413 .stabn 68,0,189,.LM39-avr_ini
414 .LM39:
415 00ec 969A sbi 50-0x20,6
190:main.c **** Delayms( 300 );
416 .stabn 68,0,190,.LM40-avr_ini
417 .LM40:
418 00ee 8CE2 ldi r24,lo8(300)
419 00f0 91E0 ldi r25,hi8(300)
420 00f2 1CD2 rcall Delayms
191:main.c ****
192:main.c **** sei( ); // General Interrupt Enable
421 .stabn 68,0,192,.LM41-avr_ini
422 .LM41:
423 /* #APP */
424 00f4 7894 sei
193:main.c **** }
425 .stabn 68,0,193,.LM42-avr_ini
426 .LM42:
427 /* #NOAPP */
428 /* epilogue: frame size=0 */
429 00f6 1F91 pop r17
430 00f8 0895 ret
431 /* epilogue end (size=2) */
432 /* function avr_ini size 119 (116) */
433 .size avr_ini, .-avr_ini
434 .Lscope1:
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccygaaaa.s page 12
435 .stabs "",36,0,0,.Lscope1-avr_ini
436 .stabs "WatchDog_Feed:F(0,20)",36,0,196,WatchDog_Feed
437 .global WatchDog_Feed
438 .type WatchDog_Feed, @function
439 WatchDog_Feed:
194:main.c ****
195:main.c **** void WatchDog_Feed( void ) //Feed watchdog of the MAX705;
196:main.c **** {
440 .stabn 68,0,196,.LM43-WatchDog_Feed
441 .LM43:
442 /* prologue: frame size=0 */
443 /* prologue end (size=0) */
197:main.c **** if ( watchdog_feed_flag == 0 )
444 .stabn 68,0,197,.LM44-WatchDog_Feed
445 .LM44:
446 00fa 8091 0000 lds r24,watchdog_feed_flag
447 00fe 8823 tst r24
448 0100 29F4 brne .L25
198:main.c **** {
199:main.c **** watchdog_feed_flag = 1;
449 .stabn 68,0,199,.LM45-WatchDog_Feed
450 .LM45:
451 0102 81E0 ldi r24,lo8(1)
452 0104 8093 0000 sts watchdog_feed_flag,r24
200:main.c **** sbi( PORTC , WATCHDOG );
453 .stabn 68,0,200,.LM46-WatchDog_Feed
454 .LM46:
455 0108 AC9A sbi 53-0x20,4
201:main.c **** }
202:main.c **** else
203:main.c **** {
204:main.c **** watchdog_feed_flag = 0;
205:main.c **** cbi( PORTC , WATCHDOG );
206:main.c **** }
207:main.c **** }
456 .stabn 68,0,207,.LM47-WatchDog_Feed
457 .LM47:
458 010a 0895 ret
459 .L25:
460 .stabn 68,0,204,.LM48-WatchDog_Feed
461 .LM48:
462 010c 1092 0000 sts watchdog_feed_flag,__zero_reg__
463 .stabn 68,0,205,.LM49-WatchDog_Feed
464 .LM49:
465 0110 AC98 cbi 53-0x20,4
466 .stabn 68,0,207,.LM50-WatchDog_Feed
467 .LM50:
468 0112 0895 ret
469 /* epilogue: frame size=0 */
470 0114 0895 ret
471 /* epilogue end (size=1) */
472 /* function WatchDog_Feed size 14 (13) */
473 .size WatchDog_Feed, .-WatchDog_Feed
474 .Lscope2:
475 .stabs "",36,0,0,.Lscope2-WatchDog_Feed
476 .stabs "main_receiver:F(0,20)",36,0,215,main_receiver
477 .global main_receiver
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccygaaaa.s page 13
478 .type main_receiver, @function
479 main_receiver:
208:main.c **** // ********************************************************************************************
209:main.c **** // Description : Main loop.
210:main.c **** // Return value: None.
211:main.c **** // parameter : None.
212:main.c **** // ********************************************************************************************
213:main.c ****
214:main.c **** void main_receiver( void )
215:main.c **** {
480 .stabn 68,0,215,.LM51-main_receiver
481 .LM51:
482 /* prologue: frame size=0 */
483 0116 1F93 push r17
484 0118 CF93 push r28
485 /* prologue end (size=2) */
216:main.c **** // uint8_t i;
217:main.c **** bufferClean = 1; //on startup, make buffer not clean
486 .stabn 68,0,217,.LM52-main_receiver
487 .LM52:
488 .LBB2:
489 011a 81E0 ldi r24,lo8(1)
490 011c 8093 0000 sts bufferClean,r24
218:main.c **** forward_link_type = 2; //default value, 1=type B, 2=type A
491 .stabn 68,0,218,.LM53-main_receiver
492 .LM53:
493 0120 12E0 ldi r17,lo8(2)
494 0122 1093 0000 sts forward_link_type,r17
219:main.c ****
220:main.c **** counter1set = ( 1 << ICNC1 ) | ( 1 << CS10 ); //Timer1 input capture at falling edge;
495 .stabn 68,0,220,.LM54-main_receiver
496 .LM54:
497 0126 81E8 ldi r24,lo8(-127)
498 0128 8093 0000 sts counter1set,r24
221:main.c ****
222:main.c **** WriteSPI( write_4094_low , write_4094_hi ); //Configure EM4094 option bit;
499 .stabn 68,0,222,.LM55-main_receiver
500 .LM55:
501 012c 6091 0000 lds r22,write_4094_hi
502 0130 7091 0000 lds r23,(write_4094_hi)+1
503 0134 8091 0000 lds r24,write_4094_low
504 0138 9091 0000 lds r25,(write_4094_low)+1
505 013c 00D0 rcall WriteSPI
223:main.c **** Wait( 4000 ); //Wait some time for EM4094 enter in normal stat
506 .stabn 68,0,223,.LM56-main_receiver
507 .LM56:
508 013e 80EA ldi r24,lo8(4000)
509 0140 9FE0 ldi r25,hi8(4000)
510 0142 00D0 rcall Wait
511 .L49:
224:main.c ****
225:main.c **** while ( 1 ) // infinite loop
226:main.c **** {
227:main.c **** wdt_reset( );
512 .stabn 68,0,227,.LM57-main_receiver
513 .LM57:
514 /* #APP */
GAS LISTING C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccygaaaa.s page 14
515 0144 A895 wdr
228:main.c ****
229:main.c **** #ifdef WDT
230:main.c **** WatchDog_Feed( );
516 .stabn 68,0,230,.LM58-main_receiver
517 .LM58:
518 /* #NOAPP */
519 0146 D9DF rcall WatchDog_Feed
231:main.c **** #endif
232:main.c ****
233:main.c **** cbi( PORTC , TEN_485 );
520 .stabn 68,0,233,.LM59-main_receiver
521 .LM59:
522 0148 AD98 cbi 53-0x20,5
234:main.c ****
235:main.c **** if ( valid_data_flag == 0 )
523 .stabn 68,0,235,.LM60-main_receiver
524 .LM60:
525 014a 8091 0000 lds r24,valid_data_flag
526 014e 8823 tst r24
527 0150 09F0 breq .+2
528 0152 4AC0 rjmp .L50
529 .L32:
236:main.c **** {
237:main.c ****
238:main.c **** }
239:main.c **** else
240:main.c **** {
241:main.c **** valid_data_flag = 0x00;
242:main.c **** SendByte( 0x55 ); //response to PC;
243:main.c **** SendByte( 0xAA );
244:main.c **** SendByte( 0x01 );
245:main.c **** SendByte( 0x02 );
246:main.c **** Beep( 1 );
247:main.c **** Parse_Command( uart_in_command , uart_in_param );
248:main.c **** }
249:main.c ****
250:main.c **** Alarm_Check_And_Process( );
530 .stabn 68,0,250,.LM61-main_receiver
531 .LM61:
532 0154 3ED2 rcall Alarm_Check_And_Process
251:main.c ****
252:main.c **** TypeA_GetUID( ); //Get UID of TypeA;
533 .stabn 68,0,252,.LM62-main_receiver
534 .LM62:
535 0156 00D0 rcall TypeA_GetUID
253:main.c ****
254:main.c ****
255:main.c **** if ( em4094_data_valid == 0x55 )
536 .stabn 68,0,255,.LM63-main_receiver
537 .LM63:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -