#include "st02d.h" #include "iot_gpio.h" #include "iot_gpio_ex.h" #define WIFI_IOT_IO_NAME_GPIO_8 8 #define WIFI_IOT_IO_NAME_GPIO_14 14 #define WIFI_IOT_IO_NAME_GPIO_0 0 #define WIFI_IOT_IO_NAME_GPIO_1 1 #define WIFI_IOT_I2C_IDX_1 1 #define OUT1_GPIO 13 #define OUT2_GPIO 7 uint8_t RxBuffer[3]; void ST02D_Init(void) { IoTGpioInit(OUT1_GPIO); IoTGpioSetFunc(OUT1_GPIO, IOT_GPIO_FUNC_GPIO_13_GPIO); IoTGpioSetDir(OUT1_GPIO, IOT_GPIO_DIR_IN); // 设置GPIO_8为输出模式 IoTGpioInit(OUT2_GPIO); IoTGpioSetFunc(OUT2_GPIO, IOT_GPIO_FUNC_GPIO_7_GPIO); IoTGpioSetDir(OUT2_GPIO, IOT_GPIO_DIR_IN); // 设置GPIO_8为输出模式 IoTGpioInit(WIFI_IOT_IO_NAME_GPIO_14); IoTGpioSetFunc(WIFI_IOT_IO_NAME_GPIO_14, IOT_GPIO_FUNC_GPIO_14_GPIO); IoTGpioSetDir(WIFI_IOT_IO_NAME_GPIO_14, IOT_GPIO_DIR_OUT); // 设置为输入模式 IoTGpioInit(WIFI_IOT_IO_NAME_GPIO_8); IoTGpioSetFunc(WIFI_IOT_IO_NAME_GPIO_8, IOT_GPIO_FUNC_GPIO_8_GPIO); IoTGpioSetDir(WIFI_IOT_IO_NAME_GPIO_8, IOT_GPIO_DIR_OUT); // 设置为输入模式 } // /*************************************************************** // * 函数名称: Button_Left_Read_Data // * 说 明: 读取数据 // * 参 数: 无 // * 返 回 值: 无 // ***************************************************************/ // void Button_Left_Read_Data(void) // { // IoTGpioRegisterIsrFunc(WIFI_IOT_IO_NAME_GPIO_14, IOT_INT_TYPE_EDGE, IOT_GPIO_EDGE_FALL_LEVEL_LOW,func, 0); // } // /*************************************************************** // * 函数名称: Button_Right_Read_Data // * 说 明: 读取数据 // * 参 数: 无 // * 返 回 值: 无 // ***************************************************************/ // void Button_Right_Read_Data(void) // { // IoTGpioRegisterIsrFunc(WIFI_IOT_IO_NAME_GPIO_8, IOT_INT_TYPE_EDGE, IOT_GPIO_EDGE_FALL_LEVEL_LOW,func, 0); // } /*************************************************************** * 函数名称: Button_Left_Read_Data * 说 明: 读取数据 * 参 数: 无 * 返 回 值: 无 ***************************************************************/ uint8_t Button_Left_Read_Data(void) { IotGpioValue temp = {0}; IoTGpioGetInputVal(OUT1_GPIO,&temp); return temp; } /*************************************************************** * 函数名称: Button_Right_Read_Data * 说 明: 读取数据 * 参 数: 无 * 返 回 值: 无 ***************************************************************/ uint8_t Button_Right_Read_Data(void) { IotGpioValue temp = {0}; IoTGpioGetInputVal(OUT2_GPIO,&temp); return temp; } /*************************************************************** * 函数名称: BeepStatusSet * 说 明: Beep状态设置 * 参 数: status,ENUM枚举的数据 * OFF,关 * ON,开 * 返 回 值: 无 ***************************************************************/ void BeepStatusSet(SwitchStatus status) { if (status == ON) { IoTGpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_8, 1); // 设置GPIO_7输出高电平点亮灯 } if (status == OFF) { IoTGpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_8, 0); // 设置GPIO_7输出低电平关闭灯 } } /*************************************************************** * 函数名称: LedWarnStatusSet * 说 明: LED_Warn状态设置 * 参 数: status,ENUM枚举的数据 * OFF,关 * ON,开 * 返 回 值: 无 ***************************************************************/ void LedWarnStatusSet(SwitchStatus status) { if (status == ON) { IoTGpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_14, 1); // 设置GPIO_14输出高电平点亮灯 } if (status == OFF) { IoTGpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_14, 0); // 设置GPIO_14输出低电平关闭灯 } }