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

 
 
 
Reply to this topicStart new topic
> STM32F373 RTC FLAG_LSERDY не работает?
Михась
сообщение Jan 18 2015, 11:11
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 161
Регистрация: 29-09-10
Пользователь №: 59 816



STM32F373 RTC FLAG_LSERDY не работает?

Суть вопроса - хочу знать, что произошел отказ часового кварца и перейти на LSI. Для этого проверяю состояние флага раз в 1 секунду
такой функцией:

// если произошел отказ кварца во время работы, перйдем на LSI
if ((RCC_GetFlagStatus(RCC_FLAG_LSERDY) == 0)){

RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI); // Начинаем тактировать RTC от LSI

RTC_WaitForSynchro(); //Wait for RTC APB registers synchronisation
RTC_InitStructure.RTC_AsynchPrediv = 0x63;
RTC_InitStructure.RTC_SynchPrediv = 0x18F;
RTC_Init(&RTC_InitStructure);
}

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

Цитата
Set and cleared by hardware to indicate when the external 32 kHz oscillator is
stable. After the LSEON bit is cleared, LSERDY goes low after 6 external low-
speed oscillator clock cycles.


В чем подвох?

Go to the top of the page
 
+Quote Post
Михась
сообщение Jan 19 2015, 15:08
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 161
Регистрация: 29-09-10
Пользователь №: 59 816



Что-то я повозился и пришел к выводу что LSERDY устанавливается один раз, а потом не меняется.

Go to the top of the page
 
+Quote Post

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

 


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


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