|
STM32F437 - сбрасывается после непродолжительной работы, Самопроизвольный циклический сброс |
|
|
|
Jul 28 2016, 14:39
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Есть одна относительно новая разработка на STM32f437GT6, которая была выпущена в количестве 2 шт, было всё ОК. Спаял ещё две штуки и начались проблемы: после того как микроконтроллер поработает какое-то время он начинает циклически сбрасываться. Сбрасывается он с разными интервалами, то чаще, включишь заново реже. То что он сбрасывается чётко видно на осциллограмме ножки RESET, которую я приложил. При этом никакие манипуляции с самой ножкой сброса не помогают, ни конденсатор, ни подключение её напрямую к питанию. Никакие двух дневные эксперименты с самой платой, пропайка и перекидывание микроконтроллеров тоже не помогают. Сторожевой таймер в программе не задействован. Ночью плата полежала, после чего два часа точно отработала без проблем, а через три опять всё началось. Почему микроконтроллер может так внутри себя себя сбрасывать без всяких на то причин? И так на обеих платах...
Эскизы прикрепленных изображений
|
|
|
|
|
Jul 28 2016, 14:52
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Цитата(scifi @ Jul 28 2016, 17:42)  Если в прошивке вы не инициируете сброс (сторожевой таймер, программный сброс и т.д.), то МК может сбрасываться от просаживания напряжения питания. Кстати, причина сброса потом висит в соответствующем регистре, советую туда заглянуть. Питание самого МК я посмотрел в первую очередь, оно естественно в норме и стабильно. Это я пытался дать понять словами:"Никакие двух дневные эксперименты с самой платой... не помогают". А вот про регистр не знал. Не знаю получится ли его посмотреть отладчиком, но с учётом того что плата работает доли секунды, то попробую этот регистр куда нибудь сохранить или выдать в UART. Программный сброс отпадает:во первых я его не инициализирую, а во вторых он бы был подвержен какой то логике, а у меня даже цикличность разная. Спасибо за ответ, буду пытаться понять содержимое регистра, но жду ещё мнений...
|
|
|
|
|
Jul 28 2016, 15:08
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Цитата(Lmx2315 @ Jul 28 2016, 18:01)  ..RESET подтянут к питанию? И тщательно ли мыли платы от флюса? За два дня битвы с этой проблемой плата мыта и перемыта несколько раз, а так же несколько раз пропаяна. Платы две, проблема одна на них. RESET не только подтянут был, а был подключен к питанию напрямую, об этом я написал в первом посте - после этого картинка на осциллографе естественно меняется, но сбрасывается точно так же. Ещё добавлю: микроконтроллерами занимаюсь около 18 лет, а STM32 с их момента появления и все детские болячки я естественно сразу не заложил в плату либо перепроверил.
Сообщение отредактировал IgorAVR2 - Jul 28 2016, 15:14
|
|
|
|
|
Jul 28 2016, 15:42
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Цитата(adnega @ Jul 28 2016, 18:18)  Так делать нельзя, т.к. ножка RESET может просаживаться по инициативе МК. Я знаю что так нельзя делать - это было сделано кратковременно в качестве эксперимента, но результата это никакого не дало.
|
|
|
|
|
Jul 28 2016, 15:55
|

Профессионал
    
Группа: Свой
Сообщений: 1 032
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877

|
Цитата(adnega @ Jul 28 2016, 18:18)  Так делать нельзя, т.к. ножка RESET может просаживаться по инициативе МК. Там стоит ключ на землю, и подключение к питанию даст КЗ. Подробности в RM0090 Figure 15. Simplified diagram of the reset circuit. Судя по словам IgorAVR2 ("подключил к питанию, а оно всё равно сбрасывается"), ST'шники сделали определённую работу над ошибками. Как минимум, резистор последовательный поставили :-) А так - да, смотреть RCC->CSR (или аналог, я с F437 не общался) и выводить хоть куда-нибудь, хотя бы размахиванием ножкой (нужно несколько свободных ног). Игорь, обратите внимание на несколько странную процедуру чтения этого регистра (описана в документации).
--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
|
|
|
|
|
Jul 28 2016, 17:33
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Цитата(esaulenka @ Jul 28 2016, 18:55)  Как минимум, резистор последовательный поставили :-) Ага, а это как раз ответ на вопрос который я хотел задать, а то я думаю как же он всё таки дальше сбрасывается, если RESET жёстко к плюсы заведен. Насчёт регистра понял, буду его смотреть и отпишусь. А как он называется?
|
|
|
|
|
Jul 28 2016, 18:00
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(IgorAVR2 @ Jul 28 2016, 21:08)  Ещё добавлю: микроконтроллерами занимаюсь около 18 лет, а STM32 с их момента появления и все детские болячки я естественно сразу не заложил в плату либо перепроверил. Как-то плохо это соотносится с этим: Цитата(IgorAVR2 @ Jul 28 2016, 20:52)  А вот про регистр не знал. Цитата(IgorAVR2 @ Jul 28 2016, 20:52)  Программный сброс отпадает:во первых я его не инициализирую, а во вторых он бы был подвержен какой то логике, а у меня даже цикличность разная. Как можно "инициализировать программный сброс"???  Его обычно подают. Или не подают. Чтобы отсечь программные проблемы от аппаратных в схемотехнике, существуют отладочные платы. Проверьте вашу прошивку на такой плате (может даже в усечённом виде).
|
|
|
|
|
Jul 28 2016, 20:35
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
Цитата(jcxz @ Jul 28 2016, 21:00)  Как-то плохо это соотносится с этим: Как можно "инициализировать программный сброс"???  Его обычно подают. Или не подают. Чтобы отсечь программные проблемы от аппаратных в схемотехнике, существуют отладочные платы. Проверьте вашу прошивку на такой плате (может даже в усечённом виде). Плохо соотносится, т.к. до этого не было таких проблем и про этот регистр и знать не знал и жил припеваючи, увы... "инициализировать программный сброс" - имелось ввиду не только сам программный сброс, а ещё и ватчдог например и т.д., то есть всё что не связано с внешним сбросом. Плата отладочные конечно же существуют, в том числе и у меня, но о них в этот раз и мысли нету, т.к. я сразу написал что две платы из первой партии так сказать работают с этой же программой на УРА. Одна из них тут же у меня на столе лежит и с ней всё ок. А вот точно такие же две свеже спаянные, вот с ними проблемы, что то именно аппаратное. Спасибо всем остальным отписавшимся, завтра возьму свой хороший осцил (его просто под рукой не оказалось) и им тщательно буду смотреть VDD, VDDA, а потом регистр.
|
|
|
|
|
Aug 1 2016, 16:36
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 29-05-08
Пользователь №: 37 901

|
По полученным здесь советам через регистр сброса выяснил, что сброс происходит по подаче питания, то есть микроконтроллер думает что ему передёрнули питание. После этого посмотрел ещё раз питание микроконтроллера. Оно конечно шумноватое, но сильных просаживаний нету и остаётся в пределах от 3,2 до 3,45 вольт, что на мой взгляд вполне допустимо. Осциллограмму качества питания МК прикладываю. Хотелось бы услышать стороннее мнение на качество питание по картинке.
Сообщение отредактировал IgorAVR2 - Aug 1 2016, 16:38
Эскизы прикрепленных изображений
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|