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

 
 
> RTC и BKP регистры STM32F103, на HAL
rat
сообщение Nov 22 2017, 09:10
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



День добрый. Так получилось, что в одном проекте связался с HAL. Сделал часы и запись в бэкап регистры. На Vbat установлена батарейка 2032. Пока есть питание - часы идут, бэкап регистры пишутся и читаются. Стоит только выключить основное питание (батарейка к Vbat подключена) и часы, и бэкап регистры обнуляются. До этого делал 2 проекта с часами, но не на HAL, все работало. Никто не сталкивался с похожими сложностями?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
serglg
сообщение Nov 22 2017, 15:31
Сообщение #2


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

Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603



странно.
У меня стандартная инициализация HAL-ом STM32L476.
Если есть батарейка - ничего не теряется.
Хотя год назад в старой версии STM32Cube_FW_L4 было такое - при инициализации RTC они сбрасывали все часы в нуль.
Приходилось вручную поправлять (комментировать это место). Но потом и они поправили.

Вот как было:

CODE
void MX_RTC_Init(void)
{
RTC_TimeTypeDef sTime;
RTC_DateTypeDef sDate;

/**Initialize RTC Only
*/
hrtc.Instance = RTC;
hrtc.Init.HourFormat = RTC_HOURFORMAT_24;
hrtc.Init.AsynchPrediv = 127;
hrtc.Init.SynchPrediv = 255;
hrtc.Init.OutPut = RTC_OUTPUT_WAKEUP;
hrtc.Init.OutPutRemap = RTC_OUTPUT_REMAP_NONE;
hrtc.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH;
hrtc.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN;
if (HAL_RTC_Init(&hrtc) != HAL_OK)
{
Error_Handler();
}

/**Initialize RTC and set the Time and Date
sTime.Hours = 0x0;
sTime.Minutes = 0x0;
sTime.Seconds = 0x0;
sTime.DayLightSaving = RTC_DAYLIGHTSAVING_NONE;
sTime.StoreOperation = RTC_STOREOPERATION_RESET;
if (HAL_RTC_SetTime(&hrtc, &sTime, RTC_FORMAT_BCD) != HAL_OK)
{
Error_Handler();
}

sDate.WeekDay = RTC_WEEKDAY_MONDAY;
sDate.Month = RTC_MONTH_JANUARY;
sDate.Date = 0x1;
sDate.Year = 0x0;

if (HAL_RTC_SetDate(&hrtc, &sDate, RTC_FORMAT_BCD) != HAL_OK)
{
Error_Handler();
}
*/

/**Enable the WakeUp
*/
if (HAL_RTCEx_SetWakeUpTimer(&hrtc, 0, RTC_WAKEUPCLOCK_CK_SPRE_16BITS) != HAL_OK)
{
Error_Handler();
}

}


Сообщение отредактировал IgorKossak - Nov 22 2017, 18:42
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!
Go to the top of the page
 
+Quote Post
rat
сообщение Nov 22 2017, 15:34
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(serglg @ Nov 22 2017, 22:31) *
странно.
У меня стандартная инициализация HAL-ом STM32L476.
Если есть батарейка - ничего не теряется.
Хотя год назад в старой версии STM32Cube_FW_L4 было такое - при инициализации RTC они сбрасывали все часы в нуль.
Приходилось вручную поправлять (комментировать это место). Но потом и они поправили.


У меня STM32F103, там другие часы, вернее просто счетчик, не как в 4 семействе.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- rat   RTC и BKP регистры STM32F103   Nov 22 2017, 09:10
- - charkin   Цитата(rat @ Nov 22 2017, 12:10) День доб...   Nov 22 2017, 10:40
|- - rat   Цитата(charkin @ Nov 22 2017, 17:40) Инит...   Nov 22 2017, 11:22
- - Obam   Цитата(rat @ Nov 22 2017, 13:10) … До это...   Nov 22 2017, 11:30
|- - rat   Цитата(Obam @ Nov 22 2017, 18:30) Ну а ср...   Nov 22 2017, 12:20
|- - Obam   Цитата(rat @ Nov 22 2017, 16:20) Повторяю...   Nov 22 2017, 12:56
|- - rat   Цитата(Obam @ Nov 22 2017, 19:56) Подразу...   Nov 22 2017, 13:08
- - charkin   Вспомнил, была у меня похожая проблема - последнее...   Nov 22 2017, 11:46
- - HardEgor   Цитата(rat @ Nov 22 2017, 16:10) Стоит то...   Nov 22 2017, 13:55
|- - rat   Цитата(HardEgor @ Nov 22 2017, 20:55) Одн...   Nov 22 2017, 14:08
|- - alex2103   Цитата(HardEgor @ Nov 22 2017, 15:55) Одн...   Nov 22 2017, 14:40
|- - rat   Цитата(alex2103 @ Nov 22 2017, 21:40) 99%...   Nov 22 2017, 15:09
|- - smk   Цитата(rat @ Nov 22 2017, 17:09) Записыва...   Feb 2 2018, 20:06
- - rat   Код инициализации /* RTC init function */ static ...   Nov 23 2017, 02:31
- - rat   Проблема решилась. Дело было в разных источниках п...   Nov 23 2017, 05:39
- - batson   у меня в stm32f100 Vss и Vssa, Vdd и Vdda объедине...   Jan 26 2018, 09:39


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:19
Рейтинг@Mail.ru


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