AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
31.03.2013, 22:06
|
|
Гражданин KAZUS.RU
Регистрация: 26.12.2005
Сообщений: 594
Сказал спасибо: 24
Сказали Спасибо 68 раз(а) в 45 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от niXto
|
Дроссель в питании контроллера стоит с конденсаторами после него? На сотню мкГн
|
Думал поставить, но как-то упустил. Смотрел в приведенной выше документации (AVR042) - там 47 nH
|
|
|
|
31.03.2013, 22:09
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,968
Сказал спасибо: 2,552
Сказали Спасибо 11,849 раз(а) в 5,938 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от pifa
|
Так я ее по несколько раз в день перешивал. А что даст ШИМ или моргание, если программа не запускается?
А вот сейчас на столе (без наводок) ATMega в стопоре. Читаю Flash - все без единой ошибки. Фьюзы тоже на месте. А проц. не запускается.
|
А может запускается и улетает? С чего вывод о "незапускательстве"? Вот к тому и предлагаю ШИМом проверить тактируемость контроллера, "морганием" по прерыванию от таймера - работает ли процессор. Или "житаг" Вам в помощь.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
31.03.2013, 22:16
|
|
Гражданин KAZUS.RU
Регистрация: 26.12.2005
Сообщений: 594
Сказал спасибо: 24
Сказали Спасибо 68 раз(а) в 45 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от akegor
|
А может запускается и улетает? С чего вывод о "незапускательстве"? Вот к тому и предлагаю ШИМом проверить тактируемость контроллера, "морганием" по прерыванию от таймера - работает ли процессор. Или "житаг" Вам в помощь.
|
Если программа до этого работала нормально, а тут при старте постоянно куда-то улетает, значит в программе что-то изменилось. Я прочитал Flash - все нормально.
|
|
|
|
31.03.2013, 22:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от x-files72
|
При инициализации МК можно всем нужным регистрам назначить "определенные" значения.
|
Конечно можно, и не только нужным, но многие этим пренебрегают.
|
|
|
|
31.03.2013, 22:22
|
|
Прописка
Регистрация: 11.12.2009
Адрес: Украина, Одесса
Сообщений: 217
Сказал спасибо: 89
Сказали Спасибо 76 раз(а) в 42 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Вот именно это и создает проблемы.
В условиях сильных помех нужно при старте инициализировать всю периферию МК,
даже если она не используется.
|
|
|
|
31.03.2013, 22:49
|
|
Гражданин KAZUS.RU
Регистрация: 26.12.2005
Сообщений: 594
Сказал спасибо: 24
Сказали Спасибо 68 раз(а) в 45 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от x-files72
|
Вот именно это и создает проблемы.
В условиях сильных помех нужно при старте инициализировать всю периферию МК,
даже если она не используется.
|
По умолчанию все в основном отключается, а необходимые ф-ции подключаются.
Что может навредить в работе без их предварительной инициализации (неиспользуемые устройства)?
Например, я не использую внешние прерывания, таймеры 0,2,3, АЦП.
Но они по умолчанию отключены.
|
|
|
|
31.03.2013, 23:56
|
|
Гражданин KAZUS.RU
Регистрация: 26.12.2005
Сообщений: 594
Сказал спасибо: 24
Сказали Спасибо 68 раз(а) в 45 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Вот к чему привели мои исследования.
Хочу уточнить мою схему. В шкафу стоят три разных блока. Кроме 128 еще блок с ATMega8535 и ATMEga8. Они связаны между собой по шине I2C с гальванической развязкой (ADUM2250).
Когда в результате тыканья сетевой вилкой БП только ATMEga128 она зависла наглухо и не реагировала на RESET, попробовал снять и восстановить питание. Но проц. все равно не запустился. При этом сигналы SDA=SCL=0.
Тогда снял питание с других блоков. При снятии питания с ATMega8535 128 заработала сама.
Повторил эксперимент. Снова висит. В это же время 8535 все работает, только сигналы I2C=0.
Оказалось, что внутренний Watchdog 8535 (который контролировал шину I2C) не срабатывал, т.к не был включен соотв. фьюз.
В режиме стопора изменил фьюз и все сразу восстановилось без каких-либо передергиваний.
Вот сейчас думаю, может я забыл на объекте запрограммировать WDTON и от наводок иногда виснет шина I2C. Завтра проверю.
Последний раз редактировалось pifa; 01.04.2013 в 01:34.
|
|
|
|
01.04.2013, 08:25
|
|
Прописка
Регистрация: 28.04.2008
Сообщений: 134
Сказал спасибо: 7
Сказали Спасибо 18 раз(а) в 9 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от pifa
|
Вот к чему привели мои исследования.
Хочу уточнить мою схему. В шкафу стоят три разных блока. Кроме 128 еще блок с ATMega8535 и ATMEga8. Они связаны между собой по шине I2C с гальванической развязкой (ADUM2250).
Когда в результате тыканья сетевой вилкой БП только ATMEga128 она зависла наглухо и не реагировала на RESET, попробовал снять и восстановить питание. Но проц. все равно не запустился. При этом сигналы SDA=SCL=0.
Тогда снял питание с других блоков. При снятии питания с ATMega8535 128 заработала сама.
Повторил эксперимент. Снова висит. В это же время 8535 все работает, только сигналы I2C=0.
Оказалось, что внутренний Watchdog 8535 (который контролировал шину I2C) не срабатывал, т.к не был включен соотв. фьюз.
В режиме стопора изменил фьюз и все сразу восстановилось без каких-либо передергиваний.
Вот сейчас думаю, может я забыл на объекте запрограммировать WDTON и от наводок иногда виснет шина I2C. Завтра проверю.
|
Что то подобное с зависанием было и в моей практике. Решить проблему удалось заменой классического блока питания на импульсный. Скорее всего у вас помеха лезет через сеть.
|
|
|
|
01.04.2013, 08:33
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,968
Сказал спасибо: 2,552
Сказали Спасибо 11,849 раз(а) в 5,938 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Сообщение от pifa
|
Вот к чему привели мои исследования.
Хочу уточнить мою схему. В шкафу стоят три разных блока. Кроме 128 еще блок с ATMega8535 и ATMEga8. Они связаны между собой по шине I2C с гальванической развязкой (ADUM2250).
Когда в результате тыканья сетевой вилкой БП только ATMEga128 она зависла наглухо и не реагировала на RESET, попробовал снять и восстановить питание. Но проц. все равно не запустился. При этом сигналы SDA=SCL=0.
Тогда снял питание с других блоков. При снятии питания с ATMega8535 128 заработала сама.
Повторил эксперимент. Снова висит. В это же время 8535 все работает, только сигналы I2C=0.
Оказалось, что внутренний Watchdog 8535 (который контролировал шину I2C) не срабатывал, т.к не был включен соотв. фьюз.
В режиме стопора изменил фьюз и все сразу восстановилось без каких-либо передергиваний.
Вот сейчас думаю, может я забыл на объекте запрограммировать WDTON и от наводок иногда виснет шина I2C. Завтра проверю.
|
Потому всегда и говорю: не делайте поспешных выводов, анализируйте факты.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
01.04.2013, 11:27
|
|
Прописка
Регистрация: 08.02.2010
Сообщений: 130
Сказал спасибо: 2
Сказали Спасибо 45 раз(а) в 18 сообщении(ях)
|
Re: Наводки частотника и зависание ATMega128
Уважаемый, pifa, обрати внимание на время внутреннего WTD и внешнего WDT. Внешний должен быть в 2-3 раза больше. Такое впечатление, что у тебя внешний WDT просто не дает процессору запустится, проц не успевает его сбрасывать.
RESET обязан восстанавливать работоспособность проца, RESET только для этого и существует, ни для чего другого он не нужен.
И ты должен быть в курсе, что сбрасываем WDT в основном теле программы, когда все обработчики прерываний, АЦП, и другие, независящие от основного тела программы функции выставили флаг работоспособности.
Часто бывает, что зависло тело main, а обработчик таймера работает себе приспокойненько, и наоборот. Все это видел своими глазами на реальном объекте.
Поэтому WDT необходим - поставил два , молодец, хуже не будет.
Всегда когда мне казалось, что процессор останавливается наглухо, потом оказывалось, что я неправильно работал с WDT.
Ищи ошибку в WDT - инициализации, времени срабатывания, условий сброса, флагов сброса..
GOOD LUCK!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 20:19.
|
|