40 lines
843 B
C
40 lines
843 B
C
//
|
|
// Created by erki on 4.06.22.
|
|
//
|
|
|
|
#include "radio_gpio.h"
|
|
|
|
#include "radio_hardware_instance.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void radio_gpio_init()
|
|
{
|
|
#define PINMUX_FUNCTION_A _L_(0)
|
|
#define PINMUX_PB00A_EXTINT0 ((_L_(00) << 16) | PINMUX_FUNCTION_A)
|
|
|
|
gpio_set_pin_level(OUT_RADIO_RST, false);
|
|
gpio_set_pin_direction(OUT_RADIO_RST, GPIO_DIRECTION_OUT);
|
|
|
|
gpio_set_pin_level(OUT_RADIO_SLP_TR, false);
|
|
gpio_set_pin_direction(OUT_RADIO_SLP_TR, GPIO_DIRECTION_OUT);
|
|
|
|
gpio_set_pin_direction(IN_RADIO_IRQ, GPIO_DIRECTION_IN);
|
|
gpio_set_pin_pull_mode(IN_RADIO_IRQ, GPIO_PULL_OFF);
|
|
|
|
EIC->CONFIG[0].reg |= (1 << 0);
|
|
EIC->INTENSET.reg |= (1 << 0);
|
|
EIC->CTRL.reg |= (1 << 1);
|
|
|
|
gpio_set_pin_function(IN_RADIO_IRQ, PINMUX_PB00A_EXTINT0);
|
|
|
|
#undef PINMUX_PB00A_EXTINT0
|
|
#undef PINMUX_FUNCTION_A
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|