全员采样登记操作流程

描述

本文来源电子发烧友社区,作者:yuzhiwen1986, 帖子地址:https://bbs.elecfans.com/jishu_2310574_1_1.html


实验描述

以九联科技Unionpi Tiger开发板为平台,移植仓库中的GPIO代码到开发板中,源代码仓库如下:

https://gitee.com/openharmony/vendor_unionman/tree/master/unionpi_tiger/sample/hardware/gpio

因为编译问题前后断断续续搞了一个礼拜没有成功,最后再FAE的支持下搞定。本文中主要记录编译过程中遇到的问题。解决这个问题之后后面的I2C/UART的代码编译也就类似的修改。文中以GPIO为例子,根据代码可知本次实验主要实现配置GPIO 输出,并获取GPIO模式并打印。

修改代码

首先把GPIO的整个文件夹拷贝到某个目录下,我这里复制都openhamony/vendor/uniopi/unionpi_tiger/sample/hardware/下面,并在/openharmony/device/unionpi/a311d/BUILD.gn文件中增加该文件的路径。如下:
九联科技

在GIPO 目录下打开Build.gn问价增加如下内容:

import("//drivers/adapter/uhdf2/uhdf.gni")
...
ohos_executable("gpio_hdf") {
sources = [ "hdf/gpio_hdf.cpp" ]
output_name = "gpio"

include_dirs = [
"//drivers/framework/include/platform",
"//third_party/bounds_checking_function/include",
]

deps = [
"//drivers/adapter/uhdf2/platform:libhdf_platform",
]
...

install_enable = true
install_images = [ "vendor" ]
module_install_dir = "bin"
part_name = "unionpi_products"

源码编译

进入源码目录,执行如下命令进行版本编译,编译完成后,效果如下:

九联科技

九联科技

获取固件

编译完成后对进行镜像进行打包然后烧写。如下是固件打包:
九联科技

打包好之后会指出固件的生成目录,根据目录提示拷贝到Widows 环境下,试用烧录工具,根据用户手册把Image烧录到开发板

固件测试

进入到openharmony 环境里可以看到编译出来的可执行文件在/verdor/bin 目录下
九联科技
输入./gpio_test 或者./gpio_test +参数查看返回值

九联科技

遇到的问题

编译过程中一直碰到以下编译ERROR网上也搜了不少材料,之前一直也怀疑是头文件哪里引用的问题。多次更换编译文件位置未果。在FAE的指导下修改了BUILD.gn文件里面的头文件位置(前面有提到具体的修改)。

九联科技

不清楚的地方

修改的头文件引用的HDF相关,目前还不清楚源码和HDF驱动之间的关系。下一步的计划会深入的学习一下和HDF相关的知识。再次感谢FAE的指导。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分