電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 829|回復: 0
收起左側(cè)

【HarmonyOS HiSpark Wi-Fi IoT 套件試用連載】GPIO控制

[復制鏈接]

2607

主題

2607

帖子

7472

積分

高級會員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-12-22 09:56:17 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
【HarmonyOS HiSpark Wi-Fi IoT 套件試用連載】GPIO控制,   
該開發(fā)板的LED控制跟其他單片機類似,配置io口模式,然后設置高低電平




調(diào)用wifiiot_gpio.c中以下函數(shù),實現(xiàn)GPIO初始化為輸出功能,且控制該IO輸出高、低電平




unsigned int IoSetFunc(WifiIotioName id, unsigned char val)  //選擇IO的功能(GPIO、I2C、SPI、PWM等等)
unsigned int GpioSetDir(WifiIotGpioIdx id, WifiIotGpioDir dir) //設置為輸出或輸入
unsigned int GpioSetOutputVal(WifiIotGpioIdx id, WifiIotGpioValue val) //設置輸出值









IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9, 0 WIFI_IOT_IO_FUNC_GPIO_9_GPIO);//IO9設置為GPIO
GpioSetDir(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_GPIO_DIR_OUT);//IO9設置為輸出模式
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9,WIFI_IOT_GPIO_VALUE1);//IO9輸出高電平
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9,WIFI_IOT_GPIO_VALUE0);//輸出低電平







具體使用的代碼如下


tatic void *LedTask(const char *arg)
{


    while (1) {


       GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 1);
        usleep(300000);


       GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 0);
        usleep(300000);


    }


    return NULL;
}
回復

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表