40 lines
893 B
C
40 lines
893 B
C
|
/*
|
||
|
* Copyright (c) 2006-2021, RT-Thread Development Team
|
||
|
*
|
||
|
* SPDX-License-Identifier: Apache-2.0
|
||
|
*
|
||
|
* Change Logs:
|
||
|
* Date Author Notes
|
||
|
* 2021-06-20 RiceChen the first version
|
||
|
*/
|
||
|
|
||
|
#ifndef __DRV_GPIO_H__
|
||
|
#define __DRV_GPIO_H__
|
||
|
|
||
|
#include "gd32f3x0.h"
|
||
|
#include "gd32f3x0_exti.h"
|
||
|
|
||
|
#define GD32_PIN(index, port, pin) {index, RCU_GPIO##port, \
|
||
|
GPIO##port, GPIO_PIN_##pin, \
|
||
|
EXTI_SOURCE_GPIO##port, \
|
||
|
EXTI_SOURCE_PIN##pin}
|
||
|
#define GD32_PIN_DEFAULT {-1, (rcu_periph_enum)0, 0, 0, 0, 0}
|
||
|
|
||
|
struct pin_index
|
||
|
{
|
||
|
rt_int16_t index;
|
||
|
rcu_periph_enum clk;
|
||
|
rt_uint32_t gpio_periph;
|
||
|
rt_uint32_t pin;
|
||
|
rt_uint8_t port_src;
|
||
|
rt_uint8_t pin_src;
|
||
|
};
|
||
|
|
||
|
struct pin_irq_map
|
||
|
{
|
||
|
rt_uint16_t pinbit;
|
||
|
IRQn_Type irqno;
|
||
|
};
|
||
|
|
||
|
#endif
|