说明
设置 GPIO 引脚的方向:
输入模式:引脚用于检测外部电平信号(如读取按键状态、传感器数据)。
输出模式:引脚用于主动输出高低电平(如控制 LED 亮灭、驱动继电器)。
定义
/**
* @brief Sets the direction for a GPIO pin.
*
* @param id Indicates the GPIO pin ID.
* @param dir Indicates the GPIO input/output direction.
* @return Returns {@link WIFI_IOT_SUCCESS} if the operation is successful;
* returns an error code defined in {@link wifiiot_errno.h} otherwise.
* @since 1.0
* @version 1.0
*/
unsigned int GpioSetDir(WifiIotGpioIdx id, WifiIotGpioDir dir);
参数:
头文件
\\base\iot_hardware\interfaces\kits\wifiiot_lite\wifiiot_gpio.h
注意
使用前提
需先通过 IoSetFunc 将引脚配置为通用 GPIO 功能(如 WIFI_IOT_IO_FUNC_GPIO_9_GPIO),再调用 GpioSetDir 设置方向。
调用时机
必须在读写引脚电平(如 GpioSetOutputVal、GpioGetInputVal)之前完成方向设置,否则会导致操作失败。
例如,完整的“配置 GPIO9 为输出并控制电平”流程:
// 1. 配置GPIO9为通用GPIO功能
IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_IO_FUNC_GPIO_9_GPIO);
// 2. 设置为输出模式
GpioSetDir(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_GPIO_DIR_OUT);
// 3. 输出高电平
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 1);
通过设置引脚方向,可明确 GPIO 的角色(是“接收信号”还是“发送信号”),这是 GPIO 操作的基础步骤。