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

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

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

鴻蒙OS 用戶程序和驅(qū)動(dòng)交互代碼

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-9-16 17:56:33 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
鴻蒙OS 用戶程序和驅(qū)動(dòng)交互代碼,   
用戶程序和驅(qū)動(dòng)交互代碼 UART驅(qū)動(dòng)成功初始化后,會(huì)創(chuàng)建/dev/uartdev-5設(shè)備節(jié)點(diǎn),通過(guò)設(shè)備節(jié)點(diǎn)與UART驅(qū)動(dòng)交互的代碼如下: 1.  #include<stdlib.h> 2.  #include<unistd.h> 3.  #include<fcntl.h> 4.  #include“hdf_log.h“ 5.    6.  #defineHDF_LOG_TAG “hello_uart“ 7.  #defineINFO_SIZE 16 8.    9.  int main(void) 10.    { 11.        int ret; 12.        int fd; 13.        const char info[INFO_SIZE] = {“ HELLOUART! “}; 14.      15.        fd = open(“/dev/uartdev-5“,O_RDWR); 16.        IF (fd < 0) { 17.            HDF_LOGE(“hello_uart uartdev-5open faiLED %d“, fd); 18.            return -1; 19.        } 20.        ret = write(fd, info, INFO_SIZE); 21.        if (ret != 0) { 22.            HDF_LOGE(“hello_uart writeuartdev-5 ret is %d“, ret); 23.        } 24.        ret = close(fd); 25.        if (ret != 0) { 26.            HDF_LOGE(“hello_uart uartdev-5close failed %d“, fd); 27.            return -1; 28.        } 29.        return ret; 30.    } 在build/lite/product/ipcamera_hi3516dv300.json產(chǎn)品配置的hdf子系統(tǒng)下增加hello_uart_sample組件,代碼如下: 1.已復(fù)制 { 2.    “subsystem“: [ 3.      { 4.        “name“: “hdf“, 5.        “component“: [ 6.          { “name“:“hdf_sample“, “dir“:“//vendor/huawei/hdf/sample/platform/uart:hello_uart_sample“,“features“:[] } 8.      } } 如上代碼均為示例代碼,完整代碼可以在vendor/huawei/hdf/sample查看。 示例代碼默認(rèn)不參與編譯,需要手動(dòng)添加到編譯腳本中。


編譯和燒寫(xiě)

  • 連接串口。
      
圖 1 連接串口圖

34.png (83.59 KB, 下載次數(shù): 0)

下載附件  保存到相冊(cè)  

1 小時(shí)前 上傳




        

        
    • 單擊Serial port打開(kāi)串口。
        
    • 輸入“com11“串口編號(hào)并連續(xù)輸入回車(chē)直到串口顯示“hisillicon“。
        
    • 單板初次啟動(dòng)或修改啟動(dòng)參數(shù),請(qǐng)進(jìn)入步驟2,否則進(jìn)入步驟3。
        



(單板初次啟動(dòng)必選)修改U-boot的bootcmd及bootargs內(nèi)容:該步驟為固化操作,若不修改參數(shù)只需執(zhí)行一次。每次復(fù)位單板均會(huì)自動(dòng)進(jìn)入系統(tǒng)。 U-boot引導(dǎo)程序默認(rèn)會(huì)有2秒的等待時(shí)間,用戶可使用回車(chē)打斷等待并顯示“hisillicon“,通過(guò)
reset命令可再次啟動(dòng)系統(tǒng)。

36.png (64.53 KB, 下載次數(shù): 0)

下載附件  保存到相冊(cè)  

1 小時(shí)前 上傳

輸入
“reset”指令并回車(chē),重啟單板,啟動(dòng)成功如下圖,輸入回車(chē)串口顯示OHOS字樣。

37.png (92.74 KB, 下載次數(shù): 0)

下載附件  保存到相冊(cè)  

1 小時(shí)前 上傳 根目錄下,在命令行輸入指令“
./bin/hello_uart”執(zhí)行寫(xiě)入的demo程序,顯示成功結(jié)果如下圖所示

38.png (11.83 KB, 下載次數(shù): 0)

下載附件  保存到相冊(cè)  

1 小時(shí)前 上傳
作者:瘋殼 注:文檔和視頻中所有的圖片及代碼截圖皆為示意圖,具體以HarmonyOS官網(wǎng)發(fā)布內(nèi)容為準(zhǔn)。

發(fā)表回復(fù)

本版積分規(guī)則


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