Коллекция глюков Здесь публикуются все известные глюки, баги микроконтроллеров, памяти, АЦП и т.д. |
21.04.2007, 16:30
|
#1
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,381
Сказал спасибо: 1,962
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Впервые за все время попался глючный AVR (Мега64)
Ситуация такова: В общем, давно написанная и отлаженная программа, более года работющая на съемках. Потребовались некие изменения, небольшие совсем. Сделал. Зашил. Запустил. Выясняется интересная вещь - все работает, но достаточно двинуть джойстик крена, программа виснет насмерть.
Программа - IAR Си. Повесить программу на Си - это еще надо уметь. Ну да ладно, начал искать. Искал два дня, перекопал все. И код построенный проверил. И на симуляторе прогнал все варианты значений. И плавающую запятую убрал, от греха... И к старой версии компилера вернулся. И стеки принудительно увеличил. И оптимизацию убрал. И... и чего только не делал. ТО ЖЕ САМОЕ.
Начал от программы кусочки отрезать... В конце концов вышел на то, что программа МК вешается при записи любого НЕНУЛЕВОГО числа в регистр ШИМа. Причем ШИМов там шесть, все одинаковые. А вот при записи в OCR3A... После чего просто зашил то же в другой МК, на макете - все, ессно, работает...
Неисправность самого МК - последнее, что пришло в голову. За несколько лет, что работаю с АВРками, это первый раз.
Получается, что не всегда программист виноват
|
|
|
|
18.10.2007, 19:00
|
#2
|
Частый гость
Регистрация: 23.06.2006
Сообщений: 35
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Разработал устройство, в нем имеются две кнопки. При тестировании выявился глюк, при быстром многократном нажатии кнопки, МК улетает хрен знает куда,целый день лопатил программу, возился с антидребезгом который неоднократно с успехом делал, результат ноль. От безвыходности перебрасываю на другой вывод порта, и все пропало. На этом я не остановился решил выяснить в чем же всетаки проблема, вернул все назад из программы удалил анализ этого вывода, выключил все что может его использовать, и что вы думаете при быстром многократном нажатии на эту кнопку МК улетает опять таки хрен знает куда. Улетает в моем понимании выполняет то чего ненадо и то чего в программе даже нет! MC MEGA64L-8AI
|
|
|
|
18.10.2007, 21:19
|
#3
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,381
Сказал спасибо: 1,962
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Сообщение от PlehovEvgeniy
|
Разработал устройство, в нем имеются две кнопки. При тестировании выявился глюк, при быстром многократном нажатии кнопки, МК улетает хрен знает куда,целый день лопатил программу, возился с антидребезгом который неоднократно с успехом делал, результат ноль. От безвыходности перебрасываю на другой вывод порта, и все пропало. На этом я не остановился решил выяснить в чем же всетаки проблема, вернул все назад из программы удалил анализ этого вывода, выключил все что может его использовать, и что вы думаете при быстром многократном нажатии на эту кнопку МК улетает опять таки хрен знает куда. Улетает в моем понимании выполняет то чего ненадо и то чего в программе даже нет! MC MEGA64L-8AI
|
Ну, вы бы хоть написали какие именно выводы используете, на каких глюк, на чем программируете. Мое пока вслепую предположение - что глюки у вас при кнопке на пине INTx - и незаткнутом прерывании.
Вообще показали бы инит модуль программы и как с кнопками работаете.
|
|
|
|
19.10.2007, 12:01
|
#4
|
Частый гость
Регистрация: 23.06.2006
Сообщений: 35
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Да просто времени все описывать мало. Глюк происходит действительно на порту где INT, но прерывания запрещал точно, не первый "день за мужем". А перебросил кнопку на соседний вывод тогоже порта и он тоже INT, глюка нет!
|
|
|
|
18.12.2007, 15:03
|
#5
|
Прописка
Регистрация: 09.06.2007
Сообщений: 96
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
|
Собираюсь писать программу для Меги 64. Укажите всетаки, какой пин был глючный?
|
|
|
|
27.12.2007, 13:58
|
#6
|
Частый гость
Регистрация: 23.06.2006
Сообщений: 35
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
PD0/SCL/INT0
|
|
|
|
27.12.2007, 16:18
|
#7
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
На прошлой неделе попался PIC16F877A. Не хотел писатся. На Vpp давал 2,5В. Пытался ПикСтартом и ПИКФлаш2 написать, не прошло. Таких ПИКов много написал без замечаний с той же программой, теми же программаторами. Пошел в корзину. Был еще случай писался только в режиме RC осцилятора. С 12F675 тоже проблемы есть, та же программа, та же схема, 20% глючат. Еще попались LM 2576T-5.0 (так на корпусе написано), велись себя как LM 2576T ADJ. Около 20 штук.
Все это не AVR, но думаю выводы можно сделать.
__________________
Мыслю, следовательно существую
|
|
|
|
15.05.2008, 16:54
|
#8
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Впервые за все время попался глючный AVR (Мега64)
Сообщение от nml
|
Причем ШИМов там шесть, все одинаковые. А вот при записи в OCR3A...
|
Цитата:
|
В МСП430Ф149 использовал 6 выходов таймера TB. (надо было параллельно управлять шестерьмя проточными нагревателями, вот такой своеобразный ШИМ пришлось делать)
Так вот, 5 каналов работают, а выход CCR3 - ну ни в какую.
Инициализация одинаковая, управление одинаковое, а не моргает.
В конце концов порезал дорожку и вывел с выхода таймера А. (хорошо ещё пятаков от запасных ног развели, ещё от плисов такая привычка осталась )
|
http://electronix.ru/forum/index.php?showtopic=47807
|
|
|
|
15.05.2008, 17:23
|
#9
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,381
Сказал спасибо: 1,962
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Re: Впервые за все время попался глючный AVR (Мега64)
магическая тройка "нипричемтут"
в одном случае это номер канала
а в моем - есть OCR1A,OCR1B,OCR1C,OCR3A,OCR3B и OCR3C.
|
|
|
|
15.05.2008, 17:46
|
#10
|
Вид на жительство
Регистрация: 28.02.2008
Сообщений: 437
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Впервые за все время попался глючный AVR (Мега64)
Сообщение от nml
|
магическая тройка "нипричемтут"
|
а "шестёрка"..А аббревиатура "ШИМ" .. Не находите , что слишком много совпадений для "случайности"? . Не видите взаимосвязи? Закономерности? Ведь столько похожего
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:32.
|
|