Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

AVR вылетает из while(1)

Непрочитано 01.02.2011, 14:09  
pooh_w
Прохожий
 
Регистрация: 20.11.2010
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
pooh_w на пути к лучшему
По умолчанию AVR вылетает из while(1)

Добрый день.
Столкнулся с вот такой ситуацией.
проц ATmega164p, компилятор CV

В процессе работы проц постоянно вылетает из while(1), может перезагружается?
урезал прогу до до тестового кусочка вида:

Цитата:
static bit flag = 1;
...
void main(void)
{
//....
//тут инициализация UART0,UART1
//....
#asm("sei")

putchar1(0x0D);
putchar1(0x0A);

if (flag)
{
flag = 0;
putchar1('2');
}

while (1)
{
putchar1('3');
}//end while
putchar ('4');
}
Терминалом получаю с порта примерно следующее
Цитата:
1233333333333333
1233333333333333
//.....
//итак далее
или вопрос совсем чайницкий и так и должно быть?
Реклама:
pooh_w вне форума  
Сказали "Спасибо" pooh_w
warel (27.06.2019)
Непрочитано 01.02.2011, 14:14  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

watchdog включен? Попробуйте внутри while вставить команду #asm("wdr");
omercury вне форума  
Сказали "Спасибо" omercury
warel (27.06.2019)
Непрочитано 01.02.2011, 14:27  
pooh_w
Прохожий
 
Регистрация: 20.11.2010
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
pooh_w на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

вочдог Отключен.
добавил wdr, ничего не изменилось(
pooh_w вне форума  
Сказали "Спасибо" pooh_w
warel (27.06.2019)
Непрочитано 01.02.2011, 14:34  
testerplus
Прописка
 
Регистрация: 26.01.2009
Сообщений: 249
Сказал спасибо: 23
Сказали Спасибо 102 раз(а) в 61 сообщении(ях)
testerplus на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

А прерывания правильно настроены? А то попадаете на неописанный вектор, и программа начинается сначала.
testerplus вне форума  
Сказали "Спасибо" testerplus
warel (27.06.2019)
Непрочитано 01.02.2011, 14:41  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Сообщение от pooh_w Посмотреть сообщение
В процессе работы проц постоянно вылетает из while(1), может перезагружается?
С питанием всё нормально? Ёмкостя по питанию присутствуют? BOD настроен правильно?
st_1 вне форума  
Сказали "Спасибо" st_1
warel (27.06.2019)
Непрочитано 01.02.2011, 14:49  
RY723
Заблокирован
 
Регистрация: 08.08.2007
Сообщений: 2,820
Сказал спасибо: 375
Сказали Спасибо 1,364 раз(а) в 744 сообщении(ях)
RY723 на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Уберите asm("sei") и проверьте, а лучше вставьте asm(''cli") - для чистоты эксперимента. Если будет всё нормально - значит вы некорректно работаете с прерываниями. Прерывание вызывается, а обработчика нет. Из-за этого может быть подобная бодяга.
RY723 вне форума  
Эти 2 пользователя(ей) сказали Спасибо RY723 за это сообщение:
pooh_w (03.02.2011), warel (27.06.2019)
Непрочитано 01.02.2011, 15:05  
pooh_w
Прохожий
 
Регистрация: 20.11.2010
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
pooh_w на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Включены прерывания уартов (прием, передача), но обработчики для них прописаны.
остальные прерывания отключил в поисках глюка..
гонял код в Astudio, там все ок.
BOD фузы стоят для Crystal Oscillator, slowly rising power. кристалл на 18 МГц, вроде правильно.

Последний раз редактировалось pooh_w; 01.02.2011 в 15:12.
pooh_w вне форума  
Сказали "Спасибо" pooh_w
warel (27.06.2019)
Непрочитано 01.02.2011, 15:09  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Сообщение от testerplus Посмотреть сообщение
А прерывания правильно настроены? А то попадаете на неописанный вектор, и программа начинается сначала.
Кстати - да. CV на неиспользованные векторы прерываний пишет RJMP 0.
omercury вне форума  
Эти 2 пользователя(ей) сказали Спасибо omercury за это сообщение:
pooh_w (03.02.2011), warel (27.06.2019)
Непрочитано 01.02.2011, 15:22  
pooh_w
Прохожий
 
Регистрация: 20.11.2010
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
pooh_w на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Отключил прерывания. вывел сигнал на диодик. при отключнных прерываниях действительно все нормально
остальсь найти какое из них гадило...
спасибо)
pooh_w вне форума  
Сказали "Спасибо" pooh_w
warel (27.06.2019)
Непрочитано 01.02.2011, 20:54  
pooh_w
Прохожий
 
Регистрация: 20.11.2010
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
pooh_w на пути к лучшему
По умолчанию Re: AVR вылетает из while(1)

Разрешил только 1 прерывание от USART0 (по приему), остальное все позанулял - никакого эффекта.
по прежнему вылетает в начало программы.
пролил тотже код в плату с мегой 128 - там все работает нормально((
pooh_w вне форума  
Сказали "Спасибо" pooh_w
warel (27.06.2019)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AVR JTAGICE MKII - проблемы firmware... Luxurious AVR 25 20.10.2014 10:50
Soft_UART_Init в microC AVR ??? ut3mk Микроконтроллеры, АЦП, память и т.д 0 13.08.2010 22:33


Часовой пояс GMT +4, время: 04:50.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.