diff options
Diffstat (limited to 'stmhal/sdcard.c')
-rw-r--r-- | stmhal/sdcard.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/stmhal/sdcard.c b/stmhal/sdcard.c index 5620aef5b4..ae03c9f3fa 100644 --- a/stmhal/sdcard.c +++ b/stmhal/sdcard.c @@ -9,14 +9,12 @@ #include "map.h" #include "runtime.h" #include "sdcard.h" +#include "pin.h" +#include "build/pins.h" -static SD_HandleTypeDef sd_handle; +#if MICROPY_HW_HAS_SDCARD -#define SDCARD_DETECT_GPIO_PORT (GPIOA) -#define SDCARD_DETECT_GPIO_PIN (GPIO_PIN_8) -#define SDCARD_DETECT_GPIO_PULL (GPIO_PULLUP) -#define SDCARD_DETECT_GPIO_PRESENT (GPIO_PIN_RESET) -#define __SDCARD_DETECT_GPIO_CLK_ENABLE() __GPIOA_CLK_ENABLE() +static SD_HandleTypeDef sd_handle; void sdcard_init(void) { GPIO_InitTypeDef GPIO_Init_Structure; @@ -39,10 +37,10 @@ void sdcard_init(void) { // configure the SD card detect pin // we do this here so we can detect if the SD card is inserted before powering it on GPIO_Init_Structure.Mode = GPIO_MODE_INPUT; - GPIO_Init_Structure.Pull = SDCARD_DETECT_GPIO_PULL; + GPIO_Init_Structure.Pull = MICROPY_HW_SDCARD_DETECT_PULL; GPIO_Init_Structure.Speed = GPIO_SPEED_HIGH; - GPIO_Init_Structure.Pin = SDCARD_DETECT_GPIO_PIN; - HAL_GPIO_Init(SDCARD_DETECT_GPIO_PORT, &GPIO_Init_Structure); + GPIO_Init_Structure.Pin = MICROPY_HW_SDCARD_DETECT_PIN.pin_mask; + HAL_GPIO_Init(MICROPY_HW_SDCARD_DETECT_PIN.gpio, &GPIO_Init_Structure); } void HAL_SD_MspInit(SD_HandleTypeDef *hsd) { @@ -60,7 +58,7 @@ void HAL_SD_MspDeInit(SD_HandleTypeDef *hsd) { } bool sdcard_is_present(void) { - return HAL_GPIO_ReadPin(SDCARD_DETECT_GPIO_PORT, SDCARD_DETECT_GPIO_PIN) == SDCARD_DETECT_GPIO_PRESENT; + return HAL_GPIO_ReadPin(MICROPY_HW_SDCARD_DETECT_PIN.gpio, MICROPY_HW_SDCARD_DETECT_PIN.pin_mask) == MICROPY_HW_SDCARD_DETECT_PRESENT; } bool sdcard_power_on(void) { @@ -248,3 +246,5 @@ static const mp_obj_type_t sdcard_type = { }; const mp_obj_base_t pyb_sdcard_obj = {&sdcard_type}; + +#endif // MICROPY_HW_HAS_SDCARD |