Внутрисхемное программирование ATmega

Обсуждаем контроллеры компании Atmel.
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Доброе время суток.
Несколько лет назад собрал зарядное устройство для автомобильного аккумулятора на базе компьютерного БП и блока управления на ATmega 16. Все эти годы он отлично работал, но последнее время стал глючить. Решил перепрошить контроллер, для этого на плате есть разъем. При подключении программатора и попытке считывания, CodeVision выдает сообщение "AVRProg error getting ID". Я не разбираюсь в программировании и по этому решил обратиться к специалистам. По какой причине выскакивает эта ошибка и что нужно сделать для того, чтобы перепрошить контроллер? Подскажите пожалуйста.
Krismi70
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Пт ноя 22, 2024 14:08:43

Re: Внутрисхемное программирование ATmega

Сообщение Krismi70 »

программатор не может определить тип контроллера (IDent).....т.е. или контроллер действительно его "забыл" (потерял), либо цепи в схеме мешают работе программатора или ещё что (на общий вопрос-такой же ответ)
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Когда я собирал зарядное, то программировал контроллер этим же программатором, но только не внутрисхемно. Контроллер SMD. По поводу "что-то мешает", порты MOSI, MISO, SCK задействованы на выводах индикатора, может поэтому? Может нужно, просто, отключать индикатор, но он впаян.
Аватара пользователя
АлександрЛ
Друг Кота
Сообщения: 43765
Зарегистрирован: Пн ноя 30, 2009 03:00:01
Откуда: Нерезиновая

Re: Внутрисхемное программирование ATmega

Сообщение АлександрЛ »

"что-то мешает", порты MOSI, MISO, SCK задействованы на выводах индикатора, может поэтому?

Какой именно "индикатор"? Если светодиодный, то может и мешать.
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Индикатор ЖКИ 1602. И когда я подключаю программатор на нем высвечивается вся информация.
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Внутрисхемное программирование ATmega

Сообщение Ivanoff-iv »

вся информация? это что? как при нормальной работе или из программатора в него летит?
если как при нормальной работе - то у тебя ресет не работает - или провод в обрыве или ресет внутри меги заблокирован (скорее всего провод, потому как мега 16 вроде этого не умеет)
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Информация на индикаторе, как при нормальной работе. Провода в норме, на проводе RESET кроме 10 ком на +5В больше ничего нет.
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Внутрисхемное программирование ATmega

Сообщение Ivanoff-iv »

значит точно ресет не работает - разбирайся почему...
попробуй принудительно его на минус замкнуть
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Внутрисхемное программирование ATmega

Сообщение Jack_A »

Осцилла, конечно, нет? Тогда хоть простейшим пробником на светодиоде посмотри уровень на пине РЕСЕТ. В режиме программирования он должен утягиваться в 0. Без этого, конечно, никакого программирования.
Прозвонить переходник. Другого программатора поблизости нет, конечно?
А чтоб окружение не мешало, я в своих поделках иногда рвал цепи окружения, а для приведения в рабочй режим - коммутировал джамперами. Или пайкой, по крайности. Только с заземлением, чтоб не убить статикой, и изолированным от сети паяльником.
----------
Действительно, ресет не работает, бо в режиме программирования МК неживой и ничего на выход выдавать не может.
Изображение
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Внутрисхемное программирование ATmega

Сообщение Ivanoff-iv »

ещё есть вариант, что мк уходит в ресет, просто экран по памяти показывает старое, тем самым создавая ощущение продолжаающего работать устройства...
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Внутрисхемное программирование ATmega

Сообщение Jack_A »

Ну только если показывает не в динамике.
Изображение
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Ivanoff-iv, при подключении программатора происходит штатная работа устройства. Нажатием кнопок можно перелистывать меню, включать режимы. Меня смущает другое, что к пину RESET, по схемному решению автора устройства, подключена кнопка "Меню-Сброс", которая, при нажатии, садит пин на землю. При подключенном программаторе и нажатии на кнопку, прибор выходит в меню.
OKF
Это не хвост, это антенна
Сообщения: 1379
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Внутрисхемное программирование ATmega

Сообщение OKF »

Когда я собирал зарядное, то программировал контроллер этим же программатором, но только не внутрисхемно. Контроллер SMD. По поводу "что-то мешает", порты MOSI, MISO, SCK задействованы на выводах индикатора, может поэтому? Может нужно, просто, отключать индикатор, но он впаян.

1602 мешать не должен, если только сильно хитро не включен, что маловероятно. Вы бы схему подключений индикатора привели бы?
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Вот схема блока управления
Вложения
ZU_ATmega16_clock.rar
(21.91 КБ) 86 скачиваний
Krismi70
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Пт ноя 22, 2024 14:08:43

Re: Внутрисхемное программирование ATmega

Сообщение Krismi70 »

Изображение
OKF
Это не хвост, это антенна
Сообщения: 1379
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Внутрисхемное программирование ATmega

Сообщение OKF »

1602 не мешает. А программатор какой?
Аккумулятор на сколько вольт/ампер?
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Внутрисхемное программирование ATmega

Сообщение Ivanoff-iv »

похоже программатор непричём... раз напрямую на ресет прицепленная кнопка не можт мегу остановить...
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Beloff12
Прорезались зубы
Сообщения: 228
Зарегистрирован: Сб фев 12, 2011 01:29:29

Re: Внутрисхемное программирование ATmega

Сообщение Beloff12 »

Программатор AVR910 USB. Этим же программатором я и прошивал контроллер, только не внутрисхемно, контроллер SMD. А по поводу аккумулятора, то прибор рассчитан на зарядку 12 вольтовых аккумуляторов от 7 до 100 Ач по алгоритмам IUoU или IUIoU, в зависимости от типа и емкости аккумулятора. Все параметры алгоритмов настраиваются в меню. Прибор прекрасно отработал более 5 лет, заряжал разные аккумуляторы без проблем. А по поводу программатора, то недавно прошивал Mega8 и все было нормально.
Вложения
Алгоритм.gif
(35.18 КБ) 54 скачивания
OKF
Это не хвост, это антенна
Сообщения: 1379
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Внутрисхемное программирование ATmega

Сообщение OKF »

Я бы попробовал другой программатор. И скорость пониже поставил бы. Фьюзы вы знаете какие писались?
На схеме нарисовано +12 на аккумулятор. Это обфускация?)
А исходники есть? А то можно и на мега8 переделать.
Аватара пользователя
Starichok51
Модератор
Сообщения: 19039
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Внутрисхемное программирование ATmega

Сообщение Starichok51 »

Beloff12 писал(а):недавно прошивал Mega8 и все было нормально.
у той мега8 не был запрещен ресет фьюзом. а у твоей мега16 - запрещен. это уже давно понятно, что по кнопке вместо сброса идет работа с меню. нужен параллельный программатор. или доктор фьюзов, чтобы восстановить заводскую настройку фьюзов. тогда ты сможешь записать прошивку заново.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Ответить

Вернуться в «AVR»