Jump to content

    
Sign in to follow this  
pan_oleg

STM32F101x + LSE

Recommended Posts

День добрый.

У меня проблема с STM32F101CBT6, в котором иногда, (и это иногда не поддается систематизации) не хочет запускаться генератор на 32КГц. Код висит в цикле

 

/* Enable LSE */

RCC_LSEConfig(RCC_LSE_ON);

/* Wait till LSE is ready */

while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)

{

}(тут и весим вечно)

 

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

За окном гдето 0...-3 ­°С. Однак потом етот баг перестал появлятся при погружении в за окно (температура там та же). Пробовал на двух кромбах (платка с контроллером и , обвязкой по питанию и кварцами - 32кГц и 8 МГц), наблюдал то же. теперь и не знаю на что думать. Извесно олько где весит - не может дождатся RCC_FLAG_LSERDY. Vbat - оставлен в воздухе.

Подскажите, может кто в курсе, куда копать.

 

Заренее благодарен, Олег.

Share this post


Link to post
Share on other sites
День добрый.

У меня проблема с STM32F101CBT6, в котором иногда, (и это иногда не поддается систематизации) не хочет запускаться генератор на 32КГц.

Не пробовали поиграться с номиналами нагрузочных ёмкостей кварца?

Попробуйте их уменьшить...

Share this post


Link to post
Share on other sites
Извесно олько где весит - не может дождатся RCC_FLAG_LSERDY.

Еще такой вопрос - когда в этом цикле - на кварце точно генерации нет ? и если нет - пробовали завести с толкача (коснуться пальцем) ? Коли поможет - то или обвязка или кварцы сами - "маленькие такие ,кругленькие " ;-)

Share this post


Link to post
Share on other sites

По поводу запуска с толчка, когда как. Заметил что при касании на корпус кварца иногда помогало, и в отладке STM32-H103 на землю корпус посажен кварца (и вроде так лучше везде делать). Я у себя посадил корпус кварца на землю, а также Vbat c Vdd соединил, как в доке сказано, вроде как лучше. Вероятнось нормального запуска увеличилась. Пробовал кварц брать с STM32-H103 отладки, тоже с задержкой стартует.

По поводу посмотремь осцилографом, нет пока возможности.

Может кондеры не такие взял, NPO? X7R?

Share this post


Link to post
Share on other sites

видел про 3 секунды. иногда 3, а иногда 30 секунд, или 10 минут, когда как,

при том при тех же температурных условиях,

например ноч девайса в холодильнике при -15, и может запустится, n раз запустится, потом нет

ничего не могу понять, может сделать задержку на 3 сек после велючения генераторана 32кГц, а потом проверять бит его состояния?

Share this post


Link to post
Share on other sites
Guest MALLOY2

Вы лучше сделайте так.

включите генератор, далее проверяйте флаг готовности если он в течении 6 секунд не будет установлен скажем зажгите светодиод, в майн поставте вечный цикл да бы никак не грешить на программу. Если при таком раскладе у вас будут какие то не понятки со стартом переходите на шаманство с железом, попробуйте емкостя поменять возмите несколько кварцев, могу еще заметить факт что кварцы 32 кГц китайские в маленьком крулом корпусе боятся ударов, тобиш не бейте их :).

Share this post


Link to post
Share on other sites

попробувал кварц уменшить до 5 пФ, не помогает,

светодиодик я зажигаю, и место где весит точно известно,

 

/* Enable LSE */

RCC_LSEConfig(RCC_LSE_ON);

/* Wait till LSE is ready */

while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)

{

}(тут и весим вечно)

 

тоесть, или кварц не запускается, или біт что он запустился STM32 не выставил, а почему не запкстился не пойму

P.S. буду рад любым идеям, ато мне только бредовые уже лезут в голову

Share this post


Link to post
Share on other sites
попробувал кварц уменшить до 5 пФ, не помогает,

светодиодик я зажигаю, и место где весит точно известно,

 

/* Enable LSE */

RCC_LSEConfig(RCC_LSE_ON);

/* Wait till LSE is ready */

while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)

{

}(тут и весим вечно)

 

тоесть, или кварц не запускается, или біт что он запустился STM32 не выставил, а почему не запкстился не пойму

P.S. буду рад любым идеям, ато мне только бредовые уже лезут в голову

 

Тут идеи могут быть только две - у вас проблемы или с железом (кривой кварц/ёмкости/длинные проводники/плохое питание и т.д.) или что-то в софте не так.

 

Почему бы вам не опробовать LSE генератор на фирменной плате - взять какой-нибудь кит от Олимекса или другой, где могут быть исключены проблемы с разводкой/некачественными комплектующими?

Share this post


Link to post
Share on other sites

У меня начинаются подозрения, что STM что-то не договорил...

Отладка Olimex STM32H103 после прогулки чуть на мороз (опять же за окно) тоже весит, не стартует LSE. :crying:

На нем STM32F103, у меня STM32F101CBT6.

Чо все STM32 с багом, или у Olimex отладочная плато тож с багом?

чото мне это все не нравится

Share this post


Link to post
Share on other sites
У меня начинаются подозрения, что STM что-то не договорил...

Отладка Olimex STM32H103 после прогулки чуть на мороз (опять же за окно) тоже весит, не стартует LSE. :crying:

На нем STM32F103, у меня STM32F101CBT6.

Чо все STM32 с багом, или у Olimex отладочная плато тож с багом?

чото мне это все не нравится

Ну а если не выносить плату за окно - то с олимексом всё стабильно?

 

А от какого источника запитана плата? Каким напряжением?

И сколько там у вас за окном? :)

Share this post


Link to post
Share on other sites
У меня начинаются подозрения, что STM что-то не договорил...

Отладка Olimex STM32H103 после прогулки чуть на мороз (опять же за окно) тоже весит, не стартует LSE. :crying:

На нем STM32F103, у меня STM32F101CBT6.

Чо все STM32 с багом, или у Olimex отладочная плато тож с багом?

чото мне это все не нравится

были подобные проблемы с RTC DS1306 - проблемы в пылинках и прочем мусоре, протиралось бензином и всё работало... вообще подобные вещи лаком покрывают.

Share this post


Link to post
Share on other sites

та не много за окном, может -1...0.

питание у меня LM1117ADJ - 3.0V выдает, кондеры 4 шт 0,1мкф

не пойму, ладно, допустим у мення чото, а чо же олымекс выделуется отладка ?

Share this post


Link to post
Share on other sites
та не много за окном, может -1...0.

питание у меня LM1117ADJ - 3.0V выдает, кондеры 4 шт 0,1мкф

не пойму, ладно, допустим у мення чото, а чо же олымекс выделуется отладка ?

А фирменную плату вы от USB компьютера запитываете?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this