Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: atmega1281 - wdt рестарт
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
GYUR22
есть устройство на Atmega128 c A и без A работает хорошо - но хочется расширится по оперативке - хочу перейти на Atmega1281
и при одном и томже коде (основная программа работает и там и там только таймер0 - разные регистры поправлены для 1281 ) - поведение устройств в момент резета по wdt (приложенный код) - а точнее рестарта после него очень разное
Mega128 - все хорошо сброс - рестарт.
Mega1281 - похоже сбрасывается, но не стартует - при SUT0,1 = 0 либо какая постоянная перезагрузка
sut1=1 - просто тупо все стоит, но после сброса питания в любом случае все работает

кварц менял взял с платы на 128 припаял на 1281 - без изменения
даже если после кривой перезагрузки - читать (т.е. сбрасиывать на момент чтения) программатором то читать читает а не рестартует - остается либо в моргании либо в тупняке - только сброс питания помогает

Если прошить бутлоадер и потом загрузить программу - то после сброса по wdt - получаем бутлоадер - как будто нет ничего в основной памяти
помогает опять только передергивание питания.....

Нешто никто 1281 через wdt не сбрасывал?

начало программы
Код
{
uint16_t i;

//this done mcu not to reset via wdt - after bootloader reset  
wdt_disable();



сброс
Код
//writing eeprom and reload mode         
         if(run_programm==4) //eprom write then load finished
         {
  
         new_prog_eeprom();  
  
         wdt_enable(WDTO_120MS);
         while(1)//endless loop for wdt - to reset chip after download
          {
;//empty body for reload on watch dog
          }

        
         }



в чем косяк не ясно....

проект в AvrStudio 4.18 +gcc WinAVR-20100110
GYUR22
сбрасывается только так - в смысле прыгает (подсмотрел в бутлоадере)

(*((void(*)(void))0x0000))();

но проблема так и не решена что с wdt то?
GYUR22
плиз хелп...
EvgenWL
Цитата(GYUR22 @ Jul 20 2011, 12:14) *
помогает опять только передергивание питания.....

После этого устройство в основной программе оказывается или в бутлоадере?
GYUR22
1.После передергивания питания все нормально - стартует основная программа
2.Если нажимаем на кнопку при включении (усолвие старта бутлоадера ) то естественно стартует бутлоадер - это все хорошо
3. Чехарда начинается при использовании рестарта по wdt только на Atmega1281

Надеюсь не путанно...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.