19 #define GPIO_DRV_VERSION ARM_DRIVER_VERSION_MAJOR_MINOR(2, 0) 21 #define GPIO_NUMBER_OF_PIN 0x20 31 .
pinConfig = {kGPIO_DigitalInput, 0}, .portPinConfig = {0}, .interruptMode = kPORT_InterruptRisingEdge};
59 if (NULL == apPinConfig)
61 pGpioConfig = &gpioConfigDefault;
79 EnableIRQ(pinHandle->
irq);
96 GPIO_PortSet(pinHandle->
base, pinHandle->
mask);
108 GPIO_PortClear(pinHandle->
base, pinHandle->
mask);
120 GPIO_PortToggle(pinHandle->
base, pinHandle->
mask);
132 GPIO_PinWrite(pinHandle->
base, pinHandle->
pinNumber, aValue);
155 uint32_t isfr = GPIO_PortGetInterruptFlags(apBase);
168 handle(isrObj[aPortNumber][i].pUserData);
169 GPIO_PortClearInterruptFlags(apBase, (1 << i));
The GPIO Configuration KSDK.
uint32_t ksdk_gpio_read_pin(pinID_t aPinId)
void ksdk_gpio_clr_pin(pinID_t aPinId)
void ksdk_gpio_toggle_pin(pinID_t aPinId)
void(* gpio_isr_handler_t)(void *apUserData)
Access structure of the GPIO Driver.
void * pinID_t
GPIO Driver direction.
void ksdk_gpio_pin_init(pinID_t aPinId, gpio_direction_t dir, void *apPinConfig, gpio_isr_handler_t aIsrHandler, void *apUserData)
The GPIO pin handle for KSDK.
gpio_pin_config_t pinConfig
void ksdk_gpio_write_pin(pinID_t aPinId, uint8_t aValue)
void ksdk_gpio_handle_interrupt(GPIO_Type *apBase, port_number_t aPortNumber)
#define GPIO_NUMBER_OF_PIN
gpio_isr_handler_t isrHandle
void ksdk_gpio_set_pin(pinID_t aPinId)
port_interrupt_t interruptMode
GENERIC_DRIVER_GPIO Driver_GPIO_KSDK
enum gpio_direction_en gpio_direction_t
ARM_DRIVER_VERSION GENERIC_DRIVER_VERSION
clock_ip_name_t clockName
enum port_number port_number_t
GPIO PORT NAMES.
GENERIC_DRIVER_VERSION ksdk_gpio_get_version(void)
port_pin_config_t portPinConfig