Форум РадиоКот https://radiokot.ru/forum/ |
|
Отладка программы в Протеусе https://radiokot.ru/forum/viewtopic.php?f=20&t=75821 |
Страница 1 из 1 |
Автор: | ddimochka [ Вс июл 22, 2012 14:09:55 ] |
Заголовок сообщения: | Отладка программы в Протеусе |
Товарищи, кто знает в чем дело? Написал программу в AVR Studio. Там же отладил. Все замечательно. Запускаю в Протеусе и тут - то выскакивает такой нюанс: у меня в главной функции имеется бесконечный цикл while(1), выглядит примерно так int main(void) { bufer[0]=0; bufer[1]=0; bufer[2]=0; bufer[3]=0; DDRB=0xFF; DDRA=240; DDRC=0xFF; PORTC=0; ozhidanie(1, 's'); PORTC=1; sei(); while(1) { init_USART(); ozhidanie(1, 'm'); while(bufer[3]==0); intnapr=bufer[0]; maxnapr=bufer[1]; inttime=bufer[2]; bufer[3]=0; nagrevatel(intnapr); ozhidanie(inttime, 's'); USART_Transmit(soprotivlenie_1()); } } Т.е. получается, что некоторый кусок кода должен бесконечно повторяться. В AVR Studio все так и происходит, а вот Протеус каждый раз повторяет ВСЮ главную функцию целиком. ПОЧЕМУ?!!! У меня из-за этого принципиальные проблемы, т.к. глобальные переменные переопределяются заново и последнее их значение сбрасывается. |
Автор: | codenamehawk [ Вс июл 22, 2012 19:34:37 ] |
Заголовок сообщения: | Re: Отладка программы в Протеусе |
Делать Код: init_USART(); в цикле уже ошибка, а так ошибка в коде(который вы и не привели.) |
Автор: | brutal [ Вс июл 22, 2012 21:59:36 ] |
Заголовок сообщения: | Re: Отладка программы в Протеусе |
возможно включен watchdog - он и сбрасывает микроконтроллер... |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |