Как определить, поврежден ли микроконтроллер?


8

У меня есть несколько микроконтроллеров, сидящих в моем мусорном ведре. Я думаю, что некоторые из них прибыли туда, когда, запрограммировав их, они показали странное поведение. С тех пор я многому научился, например, как неправильная оптимизация компилятора может вызвать такое странное поведение. С другой стороны, некоторые из микроконтроллеров могли быть повреждены из-за статического напряжения, напряжений, превышающих допустимые пределы и т. Д. Таким образом, я считаю, что некоторые из них могут быть в исправном рабочем состоянии.

Прежде чем я все выбросил, я подумал: есть ли относительно простой или простой способ протестировать микроконтроллер, чтобы определить, хорош ли он по-прежнему?

Микро, в частности, это Atmel ATTiny13, ATTiny26 и ATTiny2313, версии DIP и SOIC.


2
В зависимости от вашего программиста, я думаю, что он должен иметь возможность поговорить с чипом перед программированием, проверить его ID и тому подобное. Вы пробовали такую ​​вещь?
dext0rb

Используя USBTiny и AVRDude, да, он укажет, если он не может установить соединение с чипом; в тех случаях я отношусь к ним как к мертвым. Иногда программирование завершается, но чип ведет себя странно. В этих случаях похоже, что правильный способ диагностики - это то, что предлагает @Passerby.
Джелтон

@JYelton Пожалуйста, смотрите этот пост, чтобы получить полезную информацию о подключении Arduino для программирования микро. Вы можете использовать команду -r avrdude, чтобы стереть устройство и посмотреть, может ли avrdude общаться с вашим устройством. Вот справочная страница для ссылки на команду avrdude.
Четан Бхаргава

Вы также можете использовать Arduino для программирования высокого напряжения, которое может (или не может) решать другие (коммуникационные) проблемы с AVR. rickety.us/2010/03/arduino-avr-high-voltage-serial-programmer
jippie

Ответы:


10

Если бы я должен был полностью проверить каждый MCU на предмет его правильной функциональности, я бы построил тестовую плату для каждого с адаптером или разъемом, чтобы облегчить замену ИС. Подключите каждый вывод ввода-вывода к визуальному выходу, такому как светодиод, и запрограммируйте его с помощью простой прошивки, которая будет проверять каждый вывод по очереди. Следующим шагом будет проверка связи и других функций в зависимости от того, насколько тщательным вы хотите быть.

Однако, если вы просто хотите быстро проверить, MCU правильно общается с программистом. Я бы использовал такой программатор, как Pocket AVR Programmer , с коммутационной платой или адаптером для каждого MCU. Затем с помощью командной строки быстро протестируйте каждый MCU, чтобы увидеть, отвечает ли он.

Примером для ATTiny2313 будет:

введите описание изображения здесь http://www.ladyada.net/make/usbtinyisp/avrdude.html


Arduino (если у вас есть один под рукой или вы хотите сохранить один под рукой) также может быть использован для тестирования их вместе с avrdude, как упоминалось @davivid. Вы можете быстро соединить их на макете.
Четан Бхаргава

4

Запрограммируйте их с неоптимизированным, простым для отладки / наблюдения кодом. Если он работает не так, как должен, а работает с известным хорошим чипом, то вы можете предположить, что чипы повреждены.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.