#ifndef HD_GPIO_H_ #define HD_GPIO_H_ #include "ch32v30x.h" /* 电源控制引脚 */ #define J1_PwrCtrl_GPIO_PROT GPIOE #define J1_PwrCtrl_GPIO_PIN GPIO_Pin_7 #define J2_PwrCtrl_GPIO_PROT GPIOE #define J2_PwrCtrl_GPIO_PIN GPIO_Pin_8 #define J3_PwrCtrl_GPIO_PROT GPIOE #define J3_PwrCtrl_GPIO_PIN GPIO_Pin_9 #define J4_PwrCtrl_GPIO_PROT GPIOE #define J4_PwrCtrl_GPIO_PIN GPIO_Pin_10 #define J5_PwrCtrl_GPIO_PROT GPIOE #define J5_PwrCtrl_GPIO_PIN GPIO_Pin_11 #define J6_PwrCtrl_GPIO_PROT GPIOE #define J6_PwrCtrl_GPIO_PIN GPIO_Pin_12 #define J7_PwrCtrl_GPIO_PROT GPIOE #define J7_PwrCtrl_GPIO_PIN GPIO_Pin_13 #define J8_PwrCtrl_GPIO_PROT GPIOE #define J8_PwrCtrl_GPIO_PIN GPIO_Pin_14 #define J9_PwrCtrl_GPIO_PROT GPIOE #define J9_PwrCtrl_GPIO_PIN GPIO_Pin_15 /* 安卓模块供电使能引脚 */ #define GPIO_PwrCtrl_GPIO_PROT GPIOE #define GPIO_PwrCtrl_GPIO_PIN GPIO_Pin_3 /* 安卓模块拉低复位引脚 */ #define GPIO_PwrKey_GPIO_PROT GPIOE #define GPIO_PwrKey_GPIO_PIN GPIO_Pin_2 /* 喂狗引脚 */ #define WDI_GPIO_PROT GPIOC #define WDI_GPIO_PIN GPIO_Pin_13 /* LED引脚 */ #define LED_GPIO_PROT GPIOC #define LED_GPIO_PIN GPIO_Pin_9 /* 485读写控制引脚 */ #define J0De_GPIO_PROT GPIOC #define J0De_GPIO_PIN GPIO_Pin_8 #define J1De_GPIO_PROT GPIOC #define J1De_GPIO_PIN GPIO_Pin_8 #define J2De_GPIO_PROT GPIOC #define J2De_GPIO_PIN GPIO_Pin_7 #define J3De_GPIO_PROT GPIOC #define J3De_GPIO_PIN GPIO_Pin_7 #define J4De_GPIO_PROT GPIOC #define J4De_GPIO_PIN GPIO_Pin_6 #define J5De_GPIO_PROT GPIOC #define J5De_GPIO_PIN GPIO_Pin_6 #define J6De_GPIO_PROT GPIOD #define J6De_GPIO_PIN GPIO_Pin_15 #define J7De_GPIO_PROT GPIOD #define J7De_GPIO_PIN GPIO_Pin_15 #define J8De_GPIO_PROT GPIOD #define J8De_GPIO_PIN GPIO_Pin_14 #define J9De_GPIO_PROT GPIOD #define J9De_GPIO_PIN GPIO_Pin_13 /* 控制从mcu复位 */ #define ctrlSlave_GPIO_PROT GPIOD #define ctrlSlave_GPIO_PIN GPIO_Pin_0 #define GPIOTypeDef GPIO_TypeDef #define GPIOPin uint16_t /* Bit_SET and Bit_RESET enumeration */ typedef enum { GPIO_RESET = 0, GPIO_SET }BitOperation; #define write GPIO_SET #define read GPIO_RESET uint8_t mcu_GPIO_Init(void); void PwrCtrl_GPIO_Init(void); void Android_GPIO_Init(void); void WDI_GPIO_Init(void); void LED_GPIO_Init(void); void Host485De_GPIO_Init(void); void Slave485De_GPIO_Init(void); void ctrlSlave_GPIO_Init(void); void HD_GPIO_Write(GPIOTypeDef *GPIOx, GPIOPin GPIO_Pin, BitOperation BitVal); uint8_t HD_InputGPIO_Read(GPIOTypeDef *GPIOx, GPIOPin GPIO_Pin); uint8_t HD_OutputGPIO_Read(GPIOTypeDef *GPIOx, GPIOPin GPIO_Pin); #endif