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

 
 
> Тестирование узлов микроконтроллера
EugeNNe
сообщение Apr 4 2006, 04:15
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 424
Регистрация: 6-03-06
Из: Н.Новгород
Пользователь №: 14 997



Заказчик проекта требует чтобы через определённые промежутки времени по ходу выполнения программы проводилось тестирование основных узлов микроконтроллера, в частности ОЗУ, таймеров, АЦП и что очень интересно Flasha. Схемотехническая часть уже сформирована и не подразумевает наличия каких либо источников тестовых сигналов. Микроконтроллер Mega64, ПО разрабатывается в
среде WinAVR. Может быть кто-нибудь что-нибудь посоветует ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SasaVitebsk
сообщение Apr 6 2006, 20:29
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(defunct @ Apr 4 2006, 08:51) *
Помоему тривиальная задача..
RAM тестировать просто - частями. Заполнить участок кодом $FF, прочитать и сравнить с $FF, потом заполнить $00, также прочитать и сравнить. Потом смещенным кодом $80, $81, $82...$FF, 0.. также прочитать и сравнить. Флеш тоже просто. Если программа занимает меньше 50% флеша, то продублировать ее в памяти. Тест будет сводиться к сравнению рабочей части с резервной. АЦП проверить можно, сделав контрольный замер с MUX'ом настроенным на источник Vbg (внутренний ИОН). Таймеры - запустить таймер и параллельно сделать задержку на определенное число тактов. остановить таймер и сравнить значение TCNT с числом тактов, на которое осуществлялась задержка.

Что вызывает у Вас затруднения?


Задача с ОЗУ и EEPROM отнюдь не тривиальная. В своё время я пытался её реализовать в серийном проекте, но забросил. Если это делается при сбросе или можно на время теста ПОЛНОСТЬЮ остановить работу, то тогда да. А если нет, то тестить достаточно сложно. С FLASH - всё понятно CRC16. Если он нарушился, то дублирование может не помочь. smile.gif

Но вот другой вопрос насколько это нужно. В том проекте о котором я писал, я просто что могу то тестирую, что не могу - то выдаю Ok. smile.gif Заказчик и не догадывается. За 4 года выпуска и более 3 тысяч изделий ни разу не было возврата по причине что тест не проходит. Вообще за 15 лет работы я сделал вывод что МП в изделии - это самая надёжная вещь. smile.gif Может накрыться кондёр кварца, но не МП. И тестить его это просто дополнительный гимор. А заказчик как правило не разбирается в таких вещах. Так зачем его огорчать. Лучше потратить силы на WDT и защиту от сбоев и помех различными протоколами. Вот это даёт значительный выигрышь в стабильности работы изделия.
Go to the top of the page
 
+Quote Post



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

 


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


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