mitya1698 37 February 6 Posted February 6 · Report post Добрый день задумал тут устройство с клавиатурой 3*4 и процессором L412 соорудил такую схему Идея была что в нормальной работе сканируем единицами PA1-PA3 читаем PA4-PA7 Перед засыпанием всё делаем входами без подтяжек, а PA0 с подтяжкой к плюсу и просыпанием по спадающему фронту. Но вот что-то не выходит так сделать. Сканирование идет как ожидалось но 1 подтяжки на PA0 перед сном получить не могу. Как правильно это делать? Может моя идея в чем-то не верна? Quote Share this post Link to post Share on other sites More sharing options...
Сергей Борщ 181 February 6 Posted February 6 · Report post Как включаете подтяжку? Это учли: ? Quote Share this post Link to post Share on other sites More sharing options...
mitya1698 37 February 7 Posted February 7 · Report post да наверное это оно, помню что читал про этот выключатель но выпало, испробую, отпишусь. Спасибо за направление. Quote Share this post Link to post Share on other sites More sharing options...
mitya1698 37 February 9 Posted February 9 · Report post Всё получилось, ушел доже в shutdown с потреблением платы доли микроампер. и просыпанием по клавиатуре. в результате серии опытов засыпание выглядит так GPIO_InitStruct.Pin = GPIO_PIN_All; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); HAL_GPIO_Init(GPIOH, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_PULLUP; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); HAL_PWREx_EnableGPIOPullUp(PWR_GPIO_A, PWR_GPIO_BIT_0); HAL_PWREx_EnablePullUpPullDownConfig(); HAL_PWR_DisableWakeUpPin(PWR_WAKEUP_PIN1 | PWR_WAKEUP_PIN2 | PWR_WAKEUP_PIN3 | PWR_WAKEUP_PIN4); __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU); HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1_LOW); WRITE_REG( TAMP->BKP31R, 0x1 ); HAL_PWREx_EnterSHUTDOWNMode(); Спасибо за помощь. Quote Share this post Link to post Share on other sites More sharing options...