Как отключить интерфейс SDMMC в STM32 - PullRequest
0 голосов
/ 18 мая 2018

Я использую STM32L476 (с SW4STM32 и STM32CubeMX) для приложений с низким энергопотреблением.Я подключил SD-карту через интерфейс SDMMC (с FatFs) микроконтроллера.Этот интерфейс потребляет ток в диапазоне 1 мА.Поэтому я планирую отключить интерфейс SDMMC, когда он не нужен.В документации HAL я не нашел никаких API для его отключения. Как отключить интерфейс SDMMC

1 Ответ

0 голосов
/ 18 мая 2018

SDMMC находится на шине APB2, вы можете отключить часы для периферийного устройства, установив бит 10 RCC_APB2ENR в 0, это описано на стр. 259 справочного руководства для этого процессора..

Код, который вам нужен, выглядит следующим образом, в зависимости от используемой вами библиотеки.

RCC->APB2ENR &= ~RCC_APB2ENR_SDMMCEN;

Чтобы снова включить его, необходимо выполнитьнапротив, установите этот бит на 1

RCC->APB2ENR |= RCC_APB2ENR_SDMMCEN;

Вполне возможно, что в HAL есть функция, которая делает это за вас, но кто-то, кто использует библиотеку и знаком с ней, должен будет помочь с этим.

...