|

鸿蒙OS 用户程序和驱动交互代码,
用户程序和驱动交互代码 UART驱动成功初始化后,会创建/dev/uartdev-5设备节点,通过设备节点与UART驱动交互的代码如下: 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产品配置的hdf子系统下增加hello_uart_sample组件,代码如下: 1.已复制 { 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查看。 示例代码默认不参与编译,需要手动添加到编译脚本中。
编译和烧写
图 1 连接串口图
34.png (83.59 KB, 下载次数: 0)
下载附件 保存到相册
1 小时前 上传
- 单击Serial port打开串口。
- 输入“com11“串口编号并连续输入回车直到串口显示“hisillicon“。
- 单板初次启动或修改启动参数,请进入步骤2,否则进入步骤3。
(单板初次启动必选)修改U-boot的bootcmd及bootargs内容:该步骤为固化操作,若不修改参数只需执行一次。每次复位单板均会自动进入系统。 U-boot引导程序默认会有2秒的等待时间,用户可使用回车打断等待并显示“hisillicon“,通过
reset命令可再次启动系统。
36.png (64.53 KB, 下载次数: 0)
下载附件 保存到相册
1 小时前 上传
输入
“reset”指令并回车,重启单板,启动成功如下图,输入回车串口显示OHOS字样。
37.png (92.74 KB, 下载次数: 0)
下载附件 保存到相册
1 小时前 上传 根目录下,在命令行输入指令“
./bin/hello_uart”执行写入的demo程序,显示成功结果如下图所示
38.png (11.83 KB, 下载次数: 0)
下载附件 保存到相册
1 小时前 上传
作者:疯壳 注:文档和视频中所有的图片及代码截图皆为示意图,具体以HarmonyOS官网发布内容为准。 |
|