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

 
 
> Сбои в работе UART на чипе F2618
Pavel V.
сообщение Oct 16 2010, 14:02
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 3-06-06
Пользователь №: 17 742



На днях столкнулся со странной неисправностью.

Дано: 4 одинаковых платы на контроллере MSP430F2618. Плата подключается к компьютеру через COM-порт, в качестве преобразователя уровней на плате установлена MAX3232. Прошивка везде одинаковая, компьютер и софт тоже одни и те же.

3 платы работают без вопросов, одна же вытворяет чудеса. А конкретно - через какое-то время она перестает отвечать по UART.
Модуль UART тактируется от SMCLK (ВЧ кварц на 11.0592 МГц).

При первых разборках оказалось, что срывается генерация на ВЧ кварце, пробовал менять кварц - не помогает.

Тогда переделал прошивку на работу от DCO, который калибруется по НЧ генератору на часовом кварце. Первый запуск - полет нормальный, UART работает. Прошло пару часов.. Такая же хрень! Процессор перестал отвечать.

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

Загнать процессор в этот зависон удавалось многократно в течение дня, в том числе под отладчиком. При дебаге выяснилось, что в таком состоянии, прерывание по приему байта происходит, однако, принимается мусор (0xFF).

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

Уже не знаю что делать, прибор ответственный, зависание должно быть исключено.
Монтаж качественный - паял сам и очень аккуратно.

Осциллографа, к сожалению, нет. Хотя он бы мне очень помог..


--------------------
Good News Everyone!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Oct 16 2010, 14:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Для начала нужно выяснить, аппаратные это проблемы или программные?
В части аппаратных возникают вопросы. Какова помеховая обстановка в месте эксплуатации? От какого источника питается устройство? Внешний супервизор питания имеется или SVS используете? MAX3232 менять не пробовали? Фото платы или рисунок трассировки есть?
В части программных. Реализована ли обработка сбоя кварца (обработчик по вектору NMI) или проблему с генератором только купировали, а не ликвидировали? При ошибке делается полная реинициализация (всех регистров) USCI или только подстройка DCO? Не пробовали урезать программу, исключив все лишнее, кроме функциональных модулей обмена через UART и получить такой же результат "зависона"?
Go to the top of the page
 
+Quote Post
Pavel V.
сообщение Oct 16 2010, 14:35
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 3-06-06
Пользователь №: 17 742



Цитата(rezident @ Oct 16 2010, 18:14) *
Для начала нужно выяснить, аппаратные это проблемы или программные?

Вот это и не понятно пока. Смущает то, что проблема проявляется только на одном приборе из четырех при одинаковых условиях. А сейчас вообще перестала проявляться sad.gif

Цитата
В части аппаратных возникают вопросы. Какова помеховая обстановка в месте эксплуатации? От какого источника питается устройство?

Место эксплуатации пока на столе, питание от лабораторного источника. Пробовал как напрямую запитывать процессор (от 3.3В), так и через штатный преобразователь, установленный в приборе. Проблемы удавалось наблюдать в обоих случаях.

Цитата
Внешний супервизор питания имеется или SVS используете?

Внешний супервизор имеется.

Цитата
MAX3232 менять не пробовали? Фото платы или рисунок трассировки есть?

MAX пока менять не пробовал. Фото платы я тут выкладывал в одной теме: http://electronix.ru/forum/index.php?showt...st&p=765314

Цитата
В части программных. Реализована ли обработка сбоя кварца (обработчик по вектору NMI) или проблему с генератором только купировали, а не ликвидировали?

Пока работал от ВЧ кварца, обработчик сбоя кварца присутствовал, после того как перешел на DCO, убрал его.

Цитата
При ошибке делается полная реинициализация (всех регистров) USCI или только подстройка DCO? Не пробовали урезать программу, исключив все лишнее, кроме функциональных модулей обмена через UART и получить такой же результат "зависона"?

Реинициализацию при сбое не делал (не помогало даже физическое отключение питания, вряд ли дело в этом). Насчет урезания функциональности хорошая идея, обязательно попробую как только удастся воспроизвести проблему.

Я больше склоняюсь к версии, что это аппаратная проблема, если бы программная, то наверняка помогал бы ресет.



--------------------
Good News Everyone!
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 05:26
Рейтинг@Mail.ru


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