PASII/CandeII_1.4/Include/gpio.h

31 lines
958 B
C
Raw Normal View History

#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<49><4F><EFBFBD>ƼĴ<C6BC><C4B4><EFBFBD>
extern GPO_CTRL_TYPE * GPO_CTRL; //GPIO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƼĴ<C6BC><C4B4><EFBFBD>
extern GPI_CTRL_TYPE * GPI_CTRL; //GPIO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƼĴ<C6BC><C4B4><EFBFBD>
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