реклама на сайте
подробности

 
 
> Странные проблемы с прошивкой.
slanted
сообщение Jul 15 2008, 10:05
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 140
Регистрация: 2-01-08
Пользователь №: 33 768



Пытаюсь тут соорудить одну игрушечную железяку (пара кнопок, светодиоды, мелкий матюгальничек) -- наступаю на какие-то невообразимые совершенно грабли. Если коротко: в попытках отладить это барахло дохнет уже четвертый камень (и вторая ревизия платы). Пробовал tiny2313V и мегу8.

Выглядит это так: пишу программу, зашиваю (avreal + byteblaster) -- не работает, или работают только самые примитивные вещи (счет на порту со светодиодами с busy-loop задержкой). Попытка отлаживать это дело (расставить мигания светодиодом в нужных участках программы) приводит к плавающим результатам, а потом где-то на десятой-двадцатой прошивке камень скукоживается, т.е. перестает обнаруживаться avreal'ом совсем. При этом могут происходить всякие странности, вроде мигания светодиодами в момент прошивки (хотя они висят на порту C, а SPI интерфейс на порту cool.gif. Мигание происходит не всегда, а только если камню "особенно плохо" (от чего это зависит я так и не понял). Если дать плате отлежаться примерно сутки, функциональность частично восстанавливается, пока опять не прошьешь раз пять, и тогда -- здравствуйте глюки!

Байтбластер -- боевой и проверенный, не один камень с ним зашил, кабели короткие, резисторы где положено, звонов не было. Разве что может его космическими лучами ударило и он заглючил -- посмотрю еще раз сегодня.

Плату -- мыл.

Чип -- не перегревал.

То, что упомянутый выше порт C питается от AVCC -- знаю, питание разведено как положено.

Блокировочные конденсаторы -- есть.

Подтяжка #RST к питанию -- есть.

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

Начинаю грешить на чипдип, где камни покупались (покупались в последние три-четыре месяца где-то). Купленная пару лет назад tiny12 так и не нашедшая применения, и валяющаяся на столе в скотских условиях и лапаемая пальцами со статикой шьется и читается тем же бластером на ура (раз двести по-моему уже зашил).

Ах да, еще одно: к глюкам приводит даже не то что попытка зашить чип, а просто попытка раз 10 почитать байтбластером конфигурацию и идентифицировать чип (то, что avreal делает по умолчанию, если не указать иного).

Что еще можно проверить?

Сообщение отредактировал slanted - Jul 15 2008, 10:05
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
smac
сообщение Jul 15 2008, 10:34
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 2-06-08
Из: Москва
Пользователь №: 38 003



Цитата(slanted @ Jul 15 2008, 14:05) *
Пытаюсь тут соорудить одну игрушечную железяку (пара кнопок, светодиоды, мелкий матюгальничек) -- наступаю на какие-то невообразимые совершенно грабли. Если коротко: в попытках отладить это барахло дохнет уже четвертый камень (и вторая ревизия платы). Пробовал tiny2313V и мегу8.
....
Что еще можно проверить?

Действительно странная ситуация, я бы в этом случае осциллоскопом посмотрел на ресете и питании, может провалы или вспелески где-нибудь. Может быть еще конденсаторы (особливо электролиты) между землей и плюсом посмотреть.
Go to the top of the page
 
+Quote Post
slanted
сообщение Jul 15 2008, 11:05
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 140
Регистрация: 2-01-08
Пользователь №: 33 768



Цитата(smac @ Jul 15 2008, 14:34) *
Действительно странная ситуация, я бы в этом случае осциллоскопом посмотрел на ресете и питании, может провалы или вспелески где-нибудь. Может быть еще конденсаторы (особливо электролиты) между землей и плюсом посмотреть.


Меня больше всего удивляет "отлежка" камней. Через сутки он оживает, дает себя почитать пару раз и уходит в нирвану опять.

Может его в морозилку сунуть? Или наоборот, паяльником погреть?
Go to the top of the page
 
+Quote Post
smac
сообщение Jul 15 2008, 13:34
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 2-06-08
Из: Москва
Пользователь №: 38 003



Цитата(slanted @ Jul 15 2008, 15:05) *
Меня больше всего удивляет "отлежка" камней. Через сутки он оживает, дает себя почитать пару раз и уходит в нирвану опять.

Может его в морозилку сунуть? Или наоборот, паяльником погреть?

Мне все-таки кажется, что проблема не в камне. Если это возможно, то попробуйте сделать для камня простенькую макетку (ну например порты на "расческу") и помигать диодом, чтобы точно определить в камне или плате проблема.
Вообще ощущение такое, что либо где-то плохой контакт (непропай, микротрещина и т. п.) либо наоборот утечка, только не "чистое" к. з. Ну например грязь или остатки флюса между землей и ресетом.
Go to the top of the page
 
+Quote Post
slanted
сообщение Jul 17 2008, 09:04
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 140
Регистрация: 2-01-08
Пользователь №: 33 768



Цитата(smac @ Jul 15 2008, 17:34) *
Мне все-таки кажется, что проблема не в камне. Если это возможно, то попробуйте сделать для камня простенькую макетку (ну например порты на "расческу") и помигать диодом, чтобы точно определить в камне или плате проблема.
Вообще ощущение такое, что либо где-то плохой контакт (непропай, микротрещина и т. п.) либо наоборот утечка, только не "чистое" к. з. Ну например грязь или остатки флюса между землей и ресетом.


Блин, там вся плата из себя подобную макетку и представляет :-). Ее задача -- посчитать количество импульсов от геркона за период времени, и зажечь соответствующее количество светодиодов. Я делал железки и посложнее, запускались, что характерно, с первого раза. А вот тут -- на ровном месте грабли.

Короче, я потыкал в неё осциллографом. Сигналы везде нормальные, кроме ресета. При питании +5В, на ресете что-то около трех с половиной с какой-то помехой. С частотой в пять-десять герц ресет кратковременно подпрыгивает до +5, с этой же частотой помаргивают светодиоды (там в самом начале программа действительно мигает лампочками, типа, все нормально). Подтяжка ресета кверху -- десять килоом вроде-бы.

Замыкание подтягивающего резистора пинцетом приводит к тому что мусор исчезает, но глюки остаются теми же. Что странно -- байтбластер не может при чтении утянуть ресет книзу, дотягивает только где-то вольт до полутора. На остальных камнях утягивает нормально.



Цитата(Огурцов @ Jul 15 2008, 17:58) *
Как-то огреб такой глюк - шил мегу 8, как мегу 128. Тестовая прога запускалась только при совершенно определенном коде, но работала каким-то неожиданным образом. Плюсом напряжение на пинах было ни то, ни се. Иначе выглядела мертвой.


Нет, код правильный. Напряжение на ресете, правда, плавает. На остальных пинах вроде в норме.

Цитата(Serjio @ Jul 15 2008, 18:33) *
А от чего питается плата (проц. соответственно)? Пульсаций питания там не может быть?


Сетевой блок питания. Посмотрел осциллографом -- питание ровное, как стол.
Go to the top of the page
 
+Quote Post
777777
сообщение Jul 18 2008, 04:48
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(slanted @ Jul 17 2008, 13:04) *
Короче, я потыкал в неё осциллографом. Сигналы везде нормальные, кроме ресета. При питании +5В, на ресете что-то около трех с половиной с какой-то помехой. С частотой в пять-десять герц ресет кратковременно подпрыгивает до +5, с этой же частотой помаргивают светодиоды (там в самом начале программа действительно мигает лампочками, типа, все нормально). Подтяжка ресета кверху -- десять килоом вроде-бы.


Ну а как насчет схемы все-таки? Или она секретная?

А насчет ресета - если там нет банального замыкания с одним из соседних выводов, то объяснение только одно - ты запрограммировал ресет как линию порта и проц туда что-то иногда выдает.
Go to the top of the page
 
+Quote Post
slanted
сообщение Jul 18 2008, 08:49
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 140
Регистрация: 2-01-08
Пользователь №: 33 768



Цитата(777777 @ Jul 18 2008, 08:48) *
Ну а как насчет схемы все-таки? Или она секретная?


Далась вам эта схема. Нет там никакого криминала, RC-цепочка на ресете, пара блокировочных кондеров на питании, восемь штук светодиодов через резисторы от портов C, B и D. Ну, еще транзистор на OC1B, который управляет динамиком.

Цитата(Igor26 @ Jul 18 2008, 10:04) *
Было такое один раз с Мегой128. Заменил - всё стало нормально.

А почему тогда напряжение не логических уровней? А почему тогда программатор кристалл видит?


В общем-то, я ее домучал сегодня.
Флюс, зараза.
Помог ацетон, спирт, протереть, просушить, и так два или три раза. Шиться, по крайней мере, начало без глюков. Ну, плюс еще мелкий баг в программе, но после его исправления железяка заработала вся и сразу. Тем не менее две тиньки и одна мега таки остались трупами -- видимо, что-то такое туда зашилось, после чего они ушли в себя.

Да, флюс -- CT-brand 61B.
Go to the top of the page
 
+Quote Post
delamoure
сообщение Jul 18 2008, 08:58
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 176
Регистрация: 2-04-08
Из: Днепропетровск
Пользователь №: 36 406



Цитата(slanted @ Jul 18 2008, 11:49) *
Тем не менее две тиньки и одна мега таки остались трупами -- видимо, что-то такое туда зашилось, после чего они ушли в себя.


Imho поможет параллельный программатор.


--------------------
Ребята, как же это вы без гравицапы пепелац выкатываете из гаража? Это непорядок. ©
Go to the top of the page
 
+Quote Post
slanted
сообщение Jul 18 2008, 10:45
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 140
Регистрация: 2-01-08
Пользователь №: 33 768



Цитата(delamoure @ Jul 18 2008, 12:58) *
Imho поможет параллельный программатор.


Да нету нигде в ближайшем окружении. Проще выкинуть нафиг и взять следующий камень.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- slanted   Странные проблемы с прошивкой.   Jul 15 2008, 10:05
|- - Огурцов   Как-то огреб такой глюк - шил мегу 8, как мегу 128...   Jul 15 2008, 13:58
- - Serjio   А от чего питается плата (проц. соответственно)? П...   Jul 15 2008, 14:33
- - Tiny   Я бы поставил МК на отдельную панельку, повесил бы...   Jul 15 2008, 15:51
|- - slanted   Цитата(Tiny @ Jul 15 2008, 19:51) У больш...   Jul 17 2008, 09:07
- - _Pasha   Цитата(slanted @ Jul 15 2008, 14:05) дохн...   Jul 15 2008, 17:16
- - 777777   Цитата(slanted @ Jul 15 2008, 14:05) Пыта...   Jul 16 2008, 06:16
- - Ivan A-R   Одна тинька у меня сдохла подобным образом. Правда...   Jul 16 2008, 12:45
- - delamoure   Может, всё-же длинный кабель от программатора? Сим...   Jul 17 2008, 08:43
- - ArtemKAD   А как там на счет WDT ? В программе сбрасываешь?   Jul 17 2008, 09:05
|- - slanted   Цитата(ArtemKAD @ Jul 17 2008, 13:05) А к...   Jul 17 2008, 09:19
- - ArtemKAD   ЦитатаЧто странно -- байтбластер не может при чтен...   Jul 17 2008, 09:11
- - delamoure   Народ задумался... Попробуйте теперь упорядочить и...   Jul 17 2008, 09:46
|- - slanted   Цитата(delamoure @ Jul 17 2008, 13:46) На...   Jul 17 2008, 09:50
- - Igor26   ЦитатаПри питании +5В, на ресете что-то около трех...   Jul 18 2008, 06:04


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 22:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01487 секунд с 7
ELECTRONIX ©2004-2016