سلام
واحد RTC میکروی stm32f407 رو با کلاک خارجی 32.768 کیلوهرتز راه اندازی کردم و VBAT هم متصل هست
مقداری را داخل رجیستر پشتیبان واحد ذخیره می کنم تا در حین خاموش روشن شدن میکرو بتوان این مقدار را خواند تا دیگر تنظیمات RTC به حالت ابتدایی برنگردد
ولی این اتفاق نمی افته هر مقدار داخل رجیستر پشتیبان ذخیره شده و درست است ولی در خواندن مشکل دارد و مقدرا 0 رو بر می گردونه
داخل برنامه هم به این روش
نمی دونم چرا درست کار نمی کنه ؟؟؟؟!!!!
واحد RTC میکروی stm32f407 رو با کلاک خارجی 32.768 کیلوهرتز راه اندازی کردم و VBAT هم متصل هست
مقداری را داخل رجیستر پشتیبان واحد ذخیره می کنم تا در حین خاموش روشن شدن میکرو بتوان این مقدار را خواند تا دیگر تنظیمات RTC به حالت ابتدایی برنگردد
ولی این اتفاق نمی افته هر مقدار داخل رجیستر پشتیبان ذخیره شده و درست است ولی در خواندن مشکل دارد و مقدرا 0 رو بر می گردونه
void rtc_intialize(void)
{
RTC_TimeTypeDef sTime = {0};
RTC_DateTypeDef sDate = {0};
/* USER CODE BEGIN RTC_Init 1 */
/* USER CODE END RTC_Init 1 */
/** 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_DISABLE;
hrtc.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH;
hrtc.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN;
if (HAL_RTC_Init(&hrtc) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN Check_RTC_BKUP */
/* USER CODE END Check_RTC_BKUP */
/** 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 = 0x25;
sDate.Year = 0x20;
if (HAL_RTC_SetDate(&hrtc, &sDate, RTC_FORMAT_BCD) != HAL_OK)
{
Error_Handler();
}
HAL_RTCEx_BKUPWrite(&hrtc,RTC_BKP_DR1,0x1111);
}
داخل برنامه هم به این روش
rtc_data=HAL_RTCEx_BKUPRead(&hrtc,RTC_BKP_DR1);
if(rtc_data!=0x1111)
{
rtc_intialize();
}
نمی دونم چرا درست کار نمی کنه ؟؟؟؟!!!!
دیدگاه