Перед началом цикла не устанавливается флаг.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Штуша-Кутуша 29 июня 2004 г. 20:05
В ответ на: А что второго цикла нету в выходном коде (смотрел дебаггером?) Или просто он не выполняется по внешним призакам? отправлено Mty 29 июня 2004 г. 19:11

flag - alarm_en;
counter - alarm_ct;
установка флага и загрузка счетчика производится в Subroutine64_0
вместо вызова во втором цикле производится только загрузка счетчика


29 alarm_ct=16;
!!! \ 0000000C .... RCALL ??Subroutine64_0
30 alarm_en=1;
31 while(alarm_en);
\ ??CrossCallReturnLabel_240:
\ 0000000E FCE6 SBRC R14,6
\ 00000010 CFFE RJMP ??

..................................................................
38 alarm_ct=16;
\ 00000018 E100 LDI R16,16
!!!! \ 0000001A 9300.... STS (test_tim + 10),R16
39 alarm_en=1;
40 while(alarm_en);
\ ??Sycle_Alarm_0:
\ 0000001E FCE6 SBRC R14,6
\ 00000020 CFFE RJMP ??Sycle_Ring_0
....................................................................

\ ??Subroutine64_0:
\ 00000000 E100 LDI R16,16
\ 00000002 9300.... STS (test_tim + 10),R16
\ 00000006 9468 SET
\ 00000008 F8E6 BLD R14,6
\ 0000000A 9508 RET

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru