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

 
 
> Электрические помехи и STM32, что делать, ваах !
картошка
сообщение Apr 29 2016, 17:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 28-12-05
Из: Odessa
Пользователь №: 12 673



В общем так, при тестировании STM32 в боевых условиях с помехами и наводками, в частности: STM32F03, STM32F207 и д.р. выявилась проблема, которая на микроконтроллерах типа AVR никогда не проявлялась или очень редко проявлялась.
Небольшие наводки (естественно выше допустимых по мануалу уровней) по GPIO портам у STM32 вызывают аппаратные сбои ядра, периферии и оперативной памяти.
В одних случаях сбоит периферия: слетает инициализация или происходит установка ошибок, лечится банальной но частой переинициализацией по программному таймеру или переинициализацией после отработки некоторых условий. В других случаях происходит сбой ядра и передача управления на HARDFAULT_Handler или BUSFAULT_Handler, где вместо while (true) - поставили простое лечение NVIC_SYSTEM_Reset (). Иногда сбоит оперативная память, теряет данные. Но это все поправимо, если устанавливать контрольные суммы.

Что делать, когда заинициализированный и проверенный WATCHDOG после наводок не сработал, а внутреннее ядро СТАЛО, симптомы именно такие ! В HARDFAUL вхождения не было !!!
Проблема не в том, чтобы в оборудовании сделать ПОЛНУЮ гальваноразвязку, как устранить полное зависание и останов ядра после сбоя, если сам WATCHDOG слетает и ядро где-то шляется по адрессам ?

Видел в живую некоторые реализации схемотехники для 8051 микроконтроллера. С внешней микросхемы формирователя на 555 генерился постоянный неуправляемый сброс с определенным периодом и скважностью, остается догадываться что программа организованна по SWITCH CASE программного состояния. Но это достаточно неудобно когда организовываешь протокол обмена например по MODBUS, где циклы сброса с формирователя ассинхроны к пакетам передачи ???

Кто-нибудь знает как вывести STM32 из полного штопора ??????????????????????
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Apr 29 2016, 17:17
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Как watchdog может сломаться? Это фантастика. Вы где его сбрасываете? Не в прерывании?
В STM32F207 их там 3.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2016, 18:06
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (ViKo @ Apr 29 2016, 20:17) *
Как watchdog может сломаться? Это фантастика.

Фанастика это то, что Вы все еще верите во встроеные watchdog-и sm.gif sad.gif и вообще в чудодейственный сброс.

Это обычная перефиферия со всеми обычными и потенциальными проблемами.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 29 2016, 18:18
Сообщение #4


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(zltigo @ Apr 29 2016, 21:06) *
Фанастика это то, что Вы все еще верите во встроеные watchdog-и sm.gif sad.gif и вообще в чудодейственный сброс.

Чем встроенный watchdog хуже внешнего? Точнее, что мешает сделать такой же качественный? А то, что в STM32 его можно отключить, да, это не очень надежное решение.
Вообще-то, речь не только про сторожа. И про защиту. И про плохую землю. Про отсутствие экранов.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Apr 29 2016, 21:15
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(ViKo @ Apr 30 2016, 00:18) *
Чем встроенный watchdog хуже внешнего? Точнее, что мешает сделать такой же качественный? А то, что в STM32 его можно отключить, да, это не очень надежное решение.

Вот тем и хуже, что его отключить можно. Вотчдог должен быть неотключаемым ни программно ни каким-либо сбросом, он должен работать всегда, без необходимости его включения конфигурированием чего-либо программно. Т.е. - только простой железный внешний WD может быть надёжным. Ну это конечно после вправления рук схемотехнику по части правильной разводки и борьбы с помехами.
Мы во всех своих устройствах в обязательном порядке ставим внешний WD.

Цитата(картошка @ Apr 30 2016, 00:20) *
В AVR при компиляции программ я в конце BIN файла обычно JMP 0 ставил, а тут некуда.

Кто-ж Вам в ARM это делать мешает??
Только это всё - борьба с ветряными мельницами. Вам надо брать учебник по схемотехнике и садиться за учёбу. При кривой схеме и разводке никакие программные ухищрения не помогут.
Go to the top of the page
 
+Quote Post
картошка
сообщение May 5 2016, 12:13
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 28-12-05
Из: Odessa
Пользователь №: 12 673



Цитата(jcxz @ Apr 30 2016, 00:15) *
Только это всё - борьба с ветряными мельницами. Вам надо брать учебник по схемотехнике и садиться за учёбу. При кривой схеме и разводке никакие программные ухищрения не помогут.


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

Цитата(johnshadow @ Apr 30 2016, 23:02) *
На STM32L151, который был расположен прямо возле эл. двигателя и аналогично зависал, помог отказ от использования PLL.


Хороший совет. Ведь внутренняя система PLL по любому сделана по схеме НАПРЯЖЕНИЕ-ЧАСТОТА с цифровым счетчиком и цифровым компаратором обратной связи. Любая помеха наводит на накопительную RC цепь приличную наводку или ее изменение.


Цитата(khach @ May 1 2016, 13:40) *
В таких сложных случаях спасет только второй (медленный) ватчдог с ключем по питанию процессора. Приходилось такое ваять в схеме с тиратроном- помехи от тиратрона бывают запредельные и сбивают все что можно. При этом схемотехника и экранирование силы быле сделаны правильно- второй ватчдог срабатывал только при спонтанных пробоях тиратрона (то ли от космических частиц, то ли от износа) короче это было аварийное событие, но проц после этого оживал.


Спасибо. Правильно приняли - что береженного Бог бережет.

Сообщение отредактировал картошка - May 5 2016, 12:14
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 6 2016, 05:09
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(картошка @ May 5 2016, 18:13) *
Схему запретили трогать и давать какие-либо рекомендации по поводу надежности и улучшения ее работы - под страхом физической расправы с последующим увольнением с работы. Ну нет худа без добра, за это время стал специалистом по программным костылям.

Вас там не уважают как спеца или схемотехник чей-то родственник?
На заре моей карьеры работал я в конторе, где тоже местный царёк ни в какую не хотел менять схемотехнику заведомо ущербную (что было очевидно всем коллегам). Он на использовании старого кривого оборудования получал хорошие откаты не вкладывая ни копья в исправление схемных проблем.
А мне также приходилось бороться с ветряными мельницами - ставил костыль за костылём, а баги всё новые вылезали. На простой задаче пришлось наворотить такого....
Один хрен - прошло совсем немного времени с моего ухода оттуда и всё то оборудование заказчикам пришлось выкинуть - из говна конфетку не сделаешь ни какими программными ухищрениями.
Сейчас жалею только что раньше не уволился. Жалею о бессмысленно потраченном времени, которое мог-бы посвятить полезным делам.
Так что - если такое отношение - не теряйте времени зря.

PS: На текущей работе, к моему мнению как программиста, схемотехники и начальство прислушиваются. Если надо - устраиваем дискуссии и меняем схему по моему требованию. Потому что ПО то писать мне, а без ПО железка никому не нужна. Так и должно быть.
Ну конечно если Вы не студент без опыта работы и если соображаете в схемотехнике конечно.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение May 6 2016, 10:41
Сообщение #8


Гуру
******

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



Цитата(jcxz @ May 6 2016, 08:09) *
На текущей работе, к моему мнению как программиста, схемотехники и начальство прислушиваются. Если надо - устраиваем дискуссии и меняем схему по моему требованию. Потому что ПО то писать мне, а без ПО железка никому не нужна. Так и должно быть.
Ну конечно если Вы не студент без опыта работы и если соображаете в схемотехнике конечно.

Я вообще считаю, что программист должен быть ведущим темы. Именно он должен ставить задачи схемотехнику. И это вопрос не уважения, а вопрос правильности организации.
Ну например надо закрутить двигатель - я это могу сделать несколькими способами и от этого будет изменена схемотехника. Или мне надо померить период импульса - я буду решать что за процессор и на какую ногу подать сигнал. Ну и так далее ...
Но именно поэтому программист должен хорошо, а не поверхностно разбираться в схемотехнике, быть неплохим инженером и иметь хороший кругозор.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- картошка   Электрические помехи и STM32   Apr 29 2016, 17:00
- - Сега   Может быть стоит пересмотреть схемотехнику?   Apr 29 2016, 17:02
|- - картошка   Цитата(Сега @ Apr 29 2016, 21:02) Может б...   Apr 29 2016, 17:07
|- - adnega   Цитата(картошка @ Apr 29 2016, 20:07) Кто...   Apr 29 2016, 17:20
|- - картошка   Цитата(adnega @ Apr 29 2016, 21:20) А зач...   Apr 29 2016, 17:28
|- - adnega   Цитата(картошка @ Apr 29 2016, 20:28) Вот...   Apr 29 2016, 17:41
|- - картошка   Цитата(adnega @ Apr 29 2016, 21:41) Помех...   Apr 29 2016, 18:02
|- - adnega   Цитата(картошка @ Apr 29 2016, 21:02) Пом...   Apr 29 2016, 18:08
- - 1113   Цитата(картошка @ Apr 29 2016, 20:00) ест...   Apr 29 2016, 17:09
|- - картошка   Цитата(1113 @ Apr 29 2016, 21:09) где об ...   Apr 29 2016, 17:14
- - x893   Поставте внешний watchdog, хоть 5 внешних - один д...   Apr 29 2016, 17:16
|- - картошка   Цитата(ViKo @ Apr 29 2016, 21:17) Как wat...   Apr 29 2016, 17:21
||- - ViKo   Цитата(картошка @ Apr 29 2016, 20:21) Так...   Apr 29 2016, 17:23
|- - картошка   Цитата(ViKo @ Apr 29 2016, 21:17) Как wat...   Apr 29 2016, 17:47
||- - ViKo   Цитата(картошка @ Apr 29 2016, 20:47) За ...   Apr 29 2016, 18:04
||- - amiller   Цитата(ViKo @ Apr 29 2016, 21:04) Пока ес...   Apr 29 2016, 18:10
|- - amiller   Цитата(ViKo @ Apr 29 2016, 20:17) Как wat...   Apr 29 2016, 17:48
|- - zltigo   QUOTE (ViKo @ Apr 29 2016, 21:18) Чем вст...   Apr 29 2016, 18:20
|- - ViKo   Цитата(jcxz @ Apr 30 2016, 00:15) Вот тем...   Apr 29 2016, 21:20
||- - jcxz   Цитата(ViKo @ Apr 30 2016, 03:20) Да, сог...   Apr 29 2016, 21:35
- - Сега   А что за помехи такие? От чего наводится?   Apr 29 2016, 17:19
- - 1113   Цитата(картошка @ Apr 29 2016, 20:00) при...   Apr 29 2016, 17:20
- - ViKo   Так защиту по входам поставьте, если не школьник. ...   Apr 29 2016, 17:28
|- - картошка   Цитата(ViKo @ Apr 29 2016, 21:28) Так защ...   Apr 29 2016, 17:33
|- - scifi   Цитата(картошка @ Apr 29 2016, 20:33) Но ...   Apr 29 2016, 17:41
|- - ViKo   Цитата(картошка @ Apr 29 2016, 20:33) Не ...   Apr 29 2016, 18:11
|- - rudy_b   Цитата(картошка @ Apr 29 2016, 20:33) Не ...   Apr 29 2016, 18:11
|- - картошка   Цитата(rudy_b @ Apr 29 2016, 22:11) Что-т...   Apr 29 2016, 18:52
|- - adnega   Цитата(картошка @ Apr 29 2016, 21:52) Воп...   Apr 29 2016, 19:04
||- - картошка   Цитата(adnega @ Apr 29 2016, 23:04) Тогда...   Apr 29 2016, 19:37
|- - rudy_b   Цитата(картошка @ Apr 29 2016, 21:52) Сог...   Apr 30 2016, 13:17
|- - jcxz   Цитата(rudy_b @ Apr 30 2016, 19:17) По ум...   May 1 2016, 06:31
- - 1113   с чего решили?   Apr 29 2016, 17:35
- - adnega   Уж если речь идет об STM32, то советую пролистать ...   Apr 29 2016, 17:57
|- - картошка   Цитата(adnega @ Apr 29 2016, 21:57) Уж ес...   Apr 29 2016, 18:20
|- - adnega   Цитата(картошка @ Apr 29 2016, 21:20) Печ...   Apr 29 2016, 18:34
- - Огурцов   как бы посмотреть схему и плату ? хотя бы чтобы та...   Apr 29 2016, 18:27
|- - картошка   Цитата(Огурцов @ Apr 29 2016, 22:27) как ...   Apr 29 2016, 19:12
|- - Шаманъ   Цитата(картошка @ Apr 29 2016, 22:12) Шо ...   Apr 30 2016, 04:57
|- - Огурцов   Цитата(картошка @ Apr 29 2016, 19:12) Схе...   Apr 30 2016, 07:03
|- - картошка   Цитата(Огурцов @ Apr 30 2016, 11:03) ну в...   May 5 2016, 13:14
|- - khach   Цитата(картошка @ May 5 2016, 15:14) Разр...   May 5 2016, 13:53
||- - Mekong   Цитата(khach @ May 5 2016, 18:53) О, эксп...   May 5 2016, 19:48
|- - Alechek   Цитата(картошка @ May 5 2016, 18:14) У ме...   May 5 2016, 14:53
|- - картошка   Цитата(Alechek @ May 5 2016, 18:53) Вам н...   May 5 2016, 15:35
- - ViKo   Есть NMI в STM32. Пользуетесь? Если в программе е...   Apr 29 2016, 19:14
- - AleksBak   ТС не томи - ответь уже! Помог неучтенный NMI_...   Apr 30 2016, 11:22
- - johnshadow   На STM32L151, который был расположен прямо возле э...   Apr 30 2016, 20:02
- - khach   В таких сложных случаях спасет только второй (мед...   May 1 2016, 10:40
|- - AVI-crak   Непонятно, в чём смысл возврата в точку сбоя при а...   May 1 2016, 13:11
- - Огурцов   начать с замены программатора на с эзернетом, прог...   May 5 2016, 14:22
- - rudy_b   Забавно. Судя по вашим словам периодическое срабат...   May 5 2016, 17:29
|- - agregat   Цитата(rudy_b @ May 5 2016, 20:29) Забавн...   May 5 2016, 18:25
- - khach   А кто-нибудь изолированный SWD использовал? Вот эт...   May 5 2016, 17:30
|- - Corvus   Цитата(khach @ May 5 2016, 20:30) А кто-н...   May 5 2016, 20:03
|- - Огурцов   Цитата(khach @ May 5 2016, 17:30) можно л...   May 6 2016, 07:23
|- - khach   Цитата(Огурцов @ May 6 2016, 09:23) на тр...   May 6 2016, 10:48
- - mantech   Цитата(картошка @ Apr 29 2016, 20:00) Кто...   May 5 2016, 19:05
- - Огурцов   теперь понятно - нужен свой программатор со своей ...   May 6 2016, 12:25
|- - khach   Цитата(Огурцов @ May 6 2016, 14:25) тепер...   May 6 2016, 12:49
|- - Шаманъ   Цитата(khach @ May 6 2016, 15:49) Так в т...   May 6 2016, 13:48
- - Огурцов   а на самом деле таки да, только не один, а два - с...   May 6 2016, 15:33
|- - Шаманъ   Цитата(Огурцов @ May 6 2016, 18:33) а на ...   May 6 2016, 16:30
- - Огурцов   вообще, вроде бы вопрос был про swd-swd, а не про ...   May 6 2016, 18:38
|- - Шаманъ   Цитата(Огурцов @ May 6 2016, 21:38) вообщ...   May 6 2016, 20:04
|- - khach   Цитата(Шаманъ @ May 6 2016, 22:04) Я прос...   May 7 2016, 09:39
|- - Шаманъ   Цитата(khach @ May 7 2016, 12:39) Ну и ка...   May 7 2016, 10:24
|- - khach   Цитата(Шаманъ @ May 7 2016, 12:24) Может ...   May 7 2016, 10:40
|- - Шаманъ   Цитата(khach @ May 7 2016, 13:40) JTAG оп...   May 7 2016, 12:09
||- - khach   Цитата(Шаманъ @ May 7 2016, 14:09) Подклю...   May 7 2016, 12:40
||- - Шаманъ   Цитата(khach @ May 7 2016, 15:40) Да не р...   May 7 2016, 14:13
|- - Огурцов   Цитата(khach @ May 7 2016, 11:40) не зара...   May 7 2016, 16:36
- - Огурцов   отлично, теперь у нас есть решения на все случаи ж...   May 6 2016, 20:21


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

 


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


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