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

 
 
 
Reply to this topicStart new topic
Вячик13
сообщение Apr 18 2012, 10:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Имеется два девайса - своего изготовления на базе контроллера STM32F100 и отладочная плата STM32F103_DB и одна и та же программа для обоих. Требуется запустить модуль RTC (или хотя бы для начала генерацию часового кварца при батарейном питании).

Описание эффекта.

Программа загружается в отладочную плату. Часы идут. Выключается основное питание. Часы идут. Смотрю осциллоскопом генерацию на ножке кварца. И с основным питанием и с батарейным имеется в наличии.

Схемотехника своей платы в этом узле повторяет один в один схемотехнику отладочной платы. Загружается программа. Часы идут. Генерация на ножке кварца имеется. Выключается основное питание. Часы не идут. Генерации на ножке кварца нет. Смотрю генерацию одновременно с наличием основного питания. По мере падения уровня питания генерация уменьшается и сходит на нет. Такое впечатление, что внутренний аналоговый переключатель, управляемый детектором уровня просто не работает.
Разводка платы грамотная, конденсаторы при кварце на месте и нужного номинала (впрочем, пробовали и без них - то же самое).

Кто-нибудь что-нибудь по этому поводу может подсказать?
laughing.gif
Go to the top of the page
 
+Quote Post
kan35
сообщение Apr 27 2012, 17:43
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 537
Регистрация: 22-02-06
Пользователь №: 14 594



Может что то в инициализации..
у меня так и проблем никаких не возникает:
Код
if (BKP_ReadBackupRegister(BKP_DR1) != CHECK_CODE)
    {
        // разрешаем доступ к BKP домену    
        PWR_BackupAccessCmd(ENABLE);
        BKP_DeInit();
        RCC_LSEConfig(RCC_LSE_ON);
        while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)
        {}
        RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
        RCC_RTCCLKCmd(ENABLE);
        RTC_WaitForSynchro();
        RTC_WaitForLastTask();
        // разрешили прерывание
        RTC_ITConfig(RTC_IT_SEC, ENABLE);
        RTC_WaitForLastTask();
        RTC_SetPrescaler(32767);
        RTC_WaitForLastTask();
        BKP_WriteBackupRegister(BKP_DR1, CHECK_CODE);
    }

может поможет.
Go to the top of the page
 
+Quote Post
Вячик13
сообщение Apr 28 2012, 05:02
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Цитата(kan35 @ Apr 27 2012, 20:43) *
Может что то в инициализации..
у меня так и проблем никаких не возникает:
Код
if (BKP_ReadBackupRegister(BKP_DR1) != CHECK_CODE)
    {
        // разрешаем доступ к BKP домену    
        PWR_BackupAccessCmd(ENABLE);
        BKP_DeInit();
        RCC_LSEConfig(RCC_LSE_ON);
        while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)
        {}
        RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
        RCC_RTCCLKCmd(ENABLE);
        RTC_WaitForSynchro();
        RTC_WaitForLastTask();
        // разрешили прерывание
        RTC_ITConfig(RTC_IT_SEC, ENABLE);
        RTC_WaitForLastTask();
        RTC_SetPrescaler(32767);
        RTC_WaitForLastTask();
        BKP_WriteBackupRegister(BKP_DR1, CHECK_CODE);
    }

может поможет.

Спасибо, но у меня практически код такой же. Боюсь, что это всё-таки проблема, так называемого, инженерного кристалла. Т.е. была продана партия чипов с недоработками. Не думаю, что специально, просто проблему, наверное обнаружили после и устранили в 103.
Go to the top of the page
 
+Quote Post
Вячик13
сообщение May 4 2012, 11:38
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Причина эффекта найдена!!! Все для сведения.
В моём контроллере были разделены общие питания цифровой и аналоговой части. В результате при выключении питания напряжения падали не синхронно. И эта зараза не переключалась на батарейное питание. Соединение общих через диоды Шоттки решило проблему.

Go to the top of the page
 
+Quote Post

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

 


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


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