mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-08 04:53:42 +00:00
machine: Rewrite most of the GPIO functionality
Split across device types (nrf, dummy) and use registers directly instead of the HAL.
This commit is contained in:
@@ -48,20 +48,6 @@ void RTC0_IRQHandler() {
|
||||
rtc_wakeup = true;
|
||||
}
|
||||
|
||||
void gpio_cfg(uint32_t pin, gpio_mode_t mode) {
|
||||
nrf_gpio_cfg(
|
||||
pin,
|
||||
mode == GPIO_INPUT ? NRF_GPIO_PIN_DIR_INPUT : NRF_GPIO_PIN_DIR_OUTPUT,
|
||||
mode == GPIO_INPUT ? NRF_GPIO_PIN_INPUT_CONNECT : NRF_GPIO_PIN_INPUT_DISCONNECT,
|
||||
NRF_GPIO_PIN_NOPULL,
|
||||
NRF_GPIO_PIN_S0S1,
|
||||
NRF_GPIO_PIN_NOSENSE);
|
||||
}
|
||||
|
||||
void gpio_set(uint32_t pin, bool high) {
|
||||
nrf_gpio_pin_write(pin, high);
|
||||
}
|
||||
|
||||
void _start() {
|
||||
main();
|
||||
}
|
||||
|
||||
@@ -9,11 +9,3 @@ void uart_send(uint8_t c);
|
||||
|
||||
void rtc_init();
|
||||
void rtc_sleep(uint32_t ticks);
|
||||
|
||||
typedef enum {
|
||||
GPIO_INPUT,
|
||||
GPIO_OUTPUT,
|
||||
} gpio_mode_t;
|
||||
|
||||
void gpio_cfg(uint32_t pin, gpio_mode_t mode);
|
||||
void gpio_set(uint32_t pin, bool high);
|
||||
|
||||
Reference in New Issue
Block a user