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

 
 
> Low Power в STM32duino STM32L1
teastan0
сообщение Jan 23 2018, 07:13
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 23-01-18
Пользователь №: 101 207



Здравствуйте, есть программа на Arduino(беспроводной температурный датчик). Из-за большого потребления Arduino решено перейти на STM32l151cb.
STM32duino (GIT)успешно настроил на работу со своей программой, но не могу понять как правильно включить low pover run mode ну или stand by , чтобы он просыпался по RTC таймеру (Alarm x). Получается, что нужно на HAL все сконфигурировать, а то что я нахожу используется на F версии.

Может кто может помочь? wacko.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
teastan0
сообщение Jan 24 2018, 05:26
Сообщение #2





Группа: Новичок
Сообщений: 3
Регистрация: 23-01-18
Пользователь №: 101 207



А как сконфигурировать Alarm A? Может у кого примеры есть?
Go to the top of the page
 
+Quote Post
Integro
сообщение Jan 24 2018, 07:47
Сообщение #3


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

Группа: Свой
Сообщений: 167
Регистрация: 25-12-09
Из: Минск
Пользователь №: 54 460



Цитата(teastan0 @ Jan 24 2018, 08:26) *
А как сконфигурировать Alarm A? Может у кого примеры есть?

Совсем народ обленился rolleyes.gif

CODE

void AlarmTest(void) {

HAL_RTC_GetTime(&RTCHandle, &RTC_TimeStructure, RTC_FORMAT_BIN);
HAL_RTC_GetDate(&RTCHandle, &RTC_DateStructure, RTC_FORMAT_BIN);

/* Set the alarm to current time + 5s */
RTC_AlarmStructure.Alarm = RTC_ALARM_A;
RTC_AlarmStructure.AlarmTime.TimeFormat = RTC_TimeStructure.TimeFormat;
RTC_AlarmStructure.AlarmTime.Hours = RTC_TimeStructure.Hours;
RTC_AlarmStructure.AlarmTime.Minutes = RTC_TimeStructure.Minutes;
RTC_AlarmStructure.AlarmTime.Seconds = (RTC_TimeStructure.Seconds + 5) % 60;
RTC_AlarmStructure.AlarmDateWeekDay = 31;
RTC_AlarmStructure.AlarmDateWeekDaySel = RTC_ALARMDATEWEEKDAYSEL_DATE;
RTC_AlarmStructure.AlarmMask = RTC_ALARMMASK_DATEWEEKDAY | RTC_ALARMMASK_HOURS | RTC_ALARMMASK_MINUTES;
RTC_AlarmStructure.AlarmSubSecondMask = RTC_ALARMSUBSECONDMASK_NONE;
if (HAL_RTC_SetAlarm_IT(&RTCHandle, &RTC_AlarmStructure, RTC_FORMAT_BIN) != HAL_OK)
{
/* Initialization Error */
Error_Handler();
}

/* Disable all used wakeup sources: WKUP pin */
HAL_PWR_DisableWakeUpPin(PWR_WAKEUP_PIN1);

/* Clear all related wakeup flags */
/* Clear PWR wake up Flag */
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);

/* Enable WKUP pin */
HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);

/* Request to enter STANDBY mode */
HAL_PWR_EnterSTANDBYMode();
}
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 09:44
Рейтинг@Mail.ru


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