@brief Configure a GPIO pin mode @param pin GPIO pin number (0-29 for RP2040, 0-47 for RP2350) @param mode Pin mode: Input, Output, InputPullup, or InputPulldown
| 29 | /// @param pin GPIO pin number (0-29 for RP2040, 0-47 for RP2350) |
| 30 | /// @param mode Pin mode: Input, Output, InputPullup, or InputPulldown |
| 31 | inline void pinMode(int pin, PinMode mode) FL_NOEXCEPT { |
| 32 | gpio_init(pin); |
| 33 | |
| 34 | switch (mode) { |
| 35 | case PinMode::Output: |
| 36 | gpio_set_dir(pin, GPIO_OUT); |
| 37 | break; |
| 38 | case PinMode::Input: |
| 39 | gpio_set_dir(pin, GPIO_IN); |
| 40 | gpio_pull_up(pin); // Disable pull-up |
| 41 | gpio_pull_down(pin); // Disable pull-down |
| 42 | break; |
| 43 | case PinMode::InputPullup: |
| 44 | gpio_set_dir(pin, GPIO_IN); |
| 45 | gpio_pull_up(pin); |
| 46 | break; |
| 47 | case PinMode::InputPulldown: |
| 48 | gpio_set_dir(pin, GPIO_IN); |
| 49 | gpio_pull_down(pin); |
| 50 | break; |
| 51 | default: |
| 52 | gpio_set_dir(pin, GPIO_IN); |
| 53 | break; |
| 54 | } |
| 55 | } |
| 56 | |
| 57 | /// @brief Write a digital value to a GPIO pin |
| 58 | /// @param pin GPIO pin number |
no outgoing calls
no test coverage detected