Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Нестабильная работа встроенного генератора
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
AST
Доброго всем времени суток!
Имеется девайс с ATMEGA8 работающий от встроенного генератора (8 МГц). Столкнулся с такой проблемой...
Не запускается встроенный генератор, если таймер 2 запрограммирован для работы с внешним часовым кварцем. Точнее запускается, но не на всех экземплярах микроконтроллеров (у меня пока статистика по 3 шт). Из 3-х штук один работает стабильно, 2-ой боится манипуляций с OSCCAL, а третий вообще отказывается самостоятельно запускаться на всех частотах, запускается, если пинцетом коснуться ножек XTAL1 или XTAL2 микроконтроллера. Если таймер 2 настроить на работу от CLKio, то с запуском проблем нет.
Есть ли у кого-то опыт работы в такой конфигурации?

З.Ы. Питание стабильное 5 В, керамика по питанию стоит, пайка хорошая ...
prottoss
Цитата(AST @ Dec 9 2006, 15:33) *
Доброго всем времени суток!
Имеется девайс с ATMEGA8 работающий от встроенного генератора (8 МГц). Столкнулся с такой проблемой...
З.Ы. Питание стабильное 5 В, керамика по питанию стоит, пайка хорошая ...
Возможно, не правильно установлены фьюз-биты, отвечающие за тактирование... в следствии МК пытается запустится от внешнего кварца...
AST
Цитата(prottoss @ Dec 9 2006, 11:49) *
Возможно, не правильно установлены фьюз-биты, отвечающие за тактирование... в следствии МК пытается запустится от внешнего кварца...


Фьюзы шью из под AVR Studio через фирменный AVRISP mkII, отмечена следующие строчки:
Boot Flash section size=1024
Brown-out detection level = 4.0V
Brown-out enabled
Int. RC Osc 8MHz, 64ms

Пробовал с фьюзами "играться", ставил разные скорости, разный Start-up - не помогает.
prottoss
Цитата(AST @ Dec 9 2006, 16:08) *
Фьюзы шью из под AVR Studio через фирменный AVRISP mkII...
Честно говоря, не работал с таким зверем и никого не хочу усомнить в его безглючности...НО

1. Не плохо было бы проверить установку битов в реальности другим ПО

2. В качестве эксперимента подключить вместо часового кварца "нормальный", например на 8 МГц и проверить работу МК, потому как, такое чувство, что он прям желает от часового поработать, но в следствии хилости последнего, не может раскачать генератор))).



По идее ТС2 ну ни как не может повлиять на тактирование ядра...
AST
Цитата(prottoss @ Dec 9 2006, 12:15) *
1. Не плохо было бы проверить установку битов в реальности другим ПО

Такой возможности к сожалению нет

Цитата(prottoss @ Dec 9 2006, 12:15) *
2. В качестве эксперимента подключить вместо часового кварца "нормальный", например на 8 МГц и проверить работу МК, потому как, такое чувство, что он прям желает от часового поработать, но в следствии хилости последнего, не может раскачать генератор))).

Это попробовал, запускается, но это ничего не дает в понимании проблемы.

Цитата(prottoss @ Dec 9 2006, 12:15) *
По идее ТС2 ну ни как не может повлиять на тактирование ядра...

в общем да, влиять не должен, но факт
и ведь были же у этого МК в ранних ревизиях (до G) проблемы с фьюзом CKTOPT, описанные в Errata, может и здесь чего разработчики накосячили
prottoss
Цитата(AST @ Dec 9 2006, 18:49) *
Цитата(prottoss @ Dec 9 2006, 12:15) *

1. Не плохо было бы проверить установку битов в реальности другим ПО

Такой возможности к сожалению нет
, Что, кроме указанного выше ни одного программатора???
Цитата(AST @ Dec 9 2006, 18:49) *
Цитата(prottoss @ Dec 9 2006, 12:15) *

2. В качестве эксперимента подключить вместо часового кварца "нормальный", например на 8 МГц и проверить работу МК, потому как, такое чувство, что он прям желает от часового поработать, но в следствии хилости последнего, не может раскачать генератор))).
Это попробовал, запускается, но это ничего не дает в понимании проблемы.
Это явно говорит о том, что биты установленны на тактирование от внешнего высокочастотного кварцевого резонатора
Цитата(AST @ Dec 9 2006, 18:49) *
Цитата(prottoss @ Dec 9 2006, 12:15) *

По идее ТС2 ну ни как не может повлиять на тактирование ядра...

в общем да, влиять не должен, но факт
и ведь были же у этого МК в ранних ревизиях (до G) проблемы с фьюзом CKTOPT, описанные в Errata, может и здесь чего разработчики накосячили
Может, но все же надо исключить косяк в МКII
AST
Цитата(prottoss @ Dec 9 2006, 15:04) *
Что, кроме указанного выше ни одного программатора???

Ну, да ... smile.gif

Цитата(prottoss @ Dec 9 2006, 15:04) *
Это явно говорит о том, что биты установленны на тактирование от внешнего высокочастотного кварцевого резонатора

Может я чего-то и не понимаю, но из чего сделан такой вывод?

Цитата(prottoss @ Dec 9 2006, 15:04) *
Может, но все же надо исключить косяк в МКII

На программатор я меньше всего грешу. Во первых он фирменный, во-вторых фьюзы и пишутся и читаются, если бы они не прошивались как следует, то и не считывались бы.

Я уже тут подумываю как крайняя мера перейти на тактирование от кварца, только проблема в том, что нужна частота такая, что бы внутри МК RTC крутить. Менее удобно конечно и чуть дороже, но если друго выхода не будет ...
prottoss
Цитата(AST @ Dec 9 2006, 19:35) *
Цитата(prottoss @ Dec 9 2006, 15:04) *
Это явно говорит о том, что биты установленны на тактирование от внешнего высокочастотного кварцевого резонатора

Может я чего-то и не понимаю, но из чего сделан такой вывод?
Вы в первом посте все симптомы описали. То запускается, то не запускается, то от пинцета...По ним я и сделал вывод что это оно самое, к тому же при подключении "нормального" кварца, как Вы сами сказали, МК запустился...
AST
Цитата(prottoss @ Dec 9 2006, 15:50) *
Вы в первом посте все симптомы описали. То запускается, то не запускается, то от пинцета...По ним я и сделал вывод что это оно самое, к тому же при подключении "нормального" кварца, как Вы сами сказали, МК запустился...

Всё верно, но ведь на ножках XTAL1/2 висел часовой кварц и стабильно генерил, но сам МК при этом не запускался даже на 32768, т.к. в фьюзах прописана работа от встроенного RC 8 МГц. А вот это кстати странно, что часовой кварц запускался до запуска программы, т.к. теоретически если стоит работа от встроенного генератора, то ножки XTAL должны быть портами ввода/вывода, т.к. таймер 2 ещё не сконфигурирован на работу с внешним кварцем.
defunct
Попробуйте отключить Brown-Out Detector.
Неисключена вероятность, что именно из-за неверной работы BOD, Ваш МК просто постоянно сбрасывается. Вам же видно только последстивие сброса - "МК не запускается" т.к. выбрано достаточно длительное время старта.
AST
Цитата(defunct @ Dec 9 2006, 19:04) *
Попробуйте отключить Brown-Out Detector.
Неисключена вероятность, что именно из-за неверной работы BOD, Ваш МК просто постоянно сбрасывается. Вам же видно только последстивие сброса - "МК не запускается" т.к. выбрано достаточно длительное время старта.

Хотел проверить BOD, перешил фьюзы на внутренний генератор (BOD пока оставил), отпаял тестовый кварц на 4 МГц, и вернул на место часовой кварц, включил стало всё запускаться (со включеным BOD). Прямо шаманство какое-то ... как теперь ловить этот глюк прямо не знаю
prottoss
Цитата(defunct @ Dec 9 2006, 23:04) *
Попробуйте отключить Brown-Out Detector. Неисключена вероятность, что именно из-за неверной работы BOD, Ваш МК просто постоянно сбрасывается. Вам же видно только последстивие сброса - "МК не запускается" т.к. выбрано достаточно длительное время старта.
Не вижу связи между BOD и тактовым генератором Меги... тем более человек сказал, что питание 5 вольт стабильное...
SasaTheProgrammer
Цитата(AST @ Dec 9 2006, 19:01) *
Хотел проверить BOD, перешил фьюзы на внутренний генератор (BOD пока оставил), отпаял тестовый кварц на 4 МГц, и вернул на место часовой кварц, включил стало всё запускаться (со включеным BOD). Прямо шаманство какое-то ... как теперь ловить этот глюк прямо не знаю

Есть такие грабли (наступал smile.gif ): при первом включении тактовая частота 1МГц. А программатору, скорее всего, была указана "авансом" 8. При этом фьюзы действительно шьются и читаются, а прошивка нет.
defunct
Цитата(prottoss @ Dec 9 2006, 20:16) *
Не вижу связи между BOD и тактовым генератором Меги... тем более человек сказал, что питание 5 вольт стабильное...

BOD - возможный источник сброса.
Если МК будет постоянно сбрасываться, то со стороны (при стартап-тайм = 64ms) будет казаться, что не запускается тактовый генератор, хотя МК будет при этом нормально программироваться без внешнего клока, что мы и наблюдаем в этом топике.

А про "стабильность" питания мне отсюда не видно. У меня тоже казалось бы было стабильное питание - импульсник 24V -> DC/DC 9-36 -> 5 + 2*10uf танталы и с десяток 0.1uf керамики, девайсы на AU чипах отказались работать, и очень долго пришлось искать причину отказа. Как оказалось причина была именно в BOD, который сбрасывал МК даже будучи настроенным на уровнь 2.7V... кто бы мог подумать, т.к. все замеры уровня на reset'e показывали стабильные 5.1V (кондер и pull-up естессно были).

Никаких проблем с AI чипами и включенным BOD'ом не наблюдалось.
Screw
Цитата(AST @ Dec 9 2006, 14:49) *
Цитата(prottoss @ Dec 9 2006, 12:15) *

1. Не плохо было бы проверить установку битов в реальности другим ПО

Такой возможности к сожалению нет


Попробуйте AVREAL или UNIPROF. Программаторы а-ля "5 проводков", подключаются к LTP, работают есс-но через ISP.
AST
Да, похоже дело все таки в кривом программировании фьюзов. Сейчас пускал новый экземпляр девайса. Действовал так:
установил частоту работы по ISP 250кГц (в 4 раза меньше внутренней 1 Мгц)
попробовал считать сигнатуру - считалось коректно
установил фьюзы на работу от внутреннего генератора 8 МГц, ну и включил BOD на 4В
зашил фьюзы - ОК
зашил программу - НЕ запускается
попробовал ВЫКЛ/ВКЛ питание - НЕ запускается
ещё раз прошил фьюзы - девайс заработал

Значит всё таки AVRISP mkII г..но ... называется хотел время сэкономить - купил фирменную вещь
smile3046.gif

Спасибо всем за помощь!
Screw
У меня был похожий глюк - программа прошивалась, фьюзы нормально зашиты были, но не работало. Оказалось, что evolution версия CVAVR создавала кривой hex файл.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.