#ifndef _GPIO__H__ #define _GPIO__H__ #include "ARMCM0.h" #include "lib.h" extern PIN_CONFIG_TYPE * PIN_CONFIG; extern GPIO_CTRL_TYPE * GPIO_CTRL; //GPIO控制寄存器 extern GPO_CTRL_TYPE * GPO_CTRL; //GPIO输出控制寄存器 extern GPI_CTRL_TYPE * GPI_CTRL; //GPIO输入控制寄存器 extern GPIO_IRQ_CTRL_TYPE * GPIO_IRQ_CTRL; void PIN_Set_GPIO(uint32_t io,uint8_t fun); void PIN_Pullup_Enable(enum _QFN_TYPE_ type, uint32_t io); void PIN_Pullup_Disable(enum _QFN_TYPE_ type, uint32_t io); void GPIO_Set_Output(uint32_t io); void GPIO_Set_Input(uint32_t io, uint32_t invert_bits); void GPIO_Input_Enable(uint32_t io); void GPIO_Input_Disable(uint32_t io); void GPIO_Pin_Set(uint32_t io); void GPIO_Pin_Clear(uint32_t io); void GPIO_Pin_Turn(uint32_t io); uint32_t GPIO_Pin_Read(uint32_t io); void io_irq_enable(uint32_t io, void * p_callback); void io_irq_disable(uint32_t io); void io_irq_disable_all(void); void GPIO_Set_Input_DIR(uint32_t io); #endif