更多内容请访问:与华为官方共建的鸿蒙技术社区https://ost.51cto.com,介绍ipcamera_hispark_taurus(代码版本openharmony3.1liteos-a),编译myapptest调用驱动GPIO_TEST。从配置、编译、烧录到运行。1、下载openharmony3.1代码。2.添加myapp子系统。3.编译烧录。4.运行。2.代码下载代码下载参考:openharmony3.1。3.添加myapp子系统子系统配置:添加:build\lite\components\myapp.json。{“组件”:[{“组件”:“myapptest”,“描述”:“myapptest”,“可选”:“false”,“dirs”:[“myapp”],“目标”:[“//myapp:myapp"],"rom":"","ram":"","output":[],"adapted_kernel":["liteos_a","liteos_m"],"features":[],"deps":{"third_party":["bounds_checking_function"],"components":[]}}]}编译配置:在vendor\hisilicon\hispark_taurus\config.json中添加:{"subsystem":"myapp","components":[{"component":"myapp","features":[]}]}修改驱动日志输出:修改文件:drivers\framework\test\unittest\platform\common\gpio_driver_test.c。staticint32_tGpioTestDispatch(structHdfDeviceIoClient*client,intcmd,structHdfSBuf*data,structHdfSBuf*reply){//开始修改----------------HDF_LOGD("%s:my应用测试进入!”,__func__);如果(cmd==0){constchar*readData=HdfSbufReadString(data);if(readData!=NULL){HDF_LOGE("%s:读取数据为%s!",__func__,readData);}//结束修改-------------if(reply==NULL){HDF_LOGE("%s:replyisnull!",__func__);返回HDF_ERR_INVALID_PARAM;}if(!HdfSbufWriteBuffer(reply,&g_config,sizeof(g_config))){HDF_LOGE("%s:写入回复失败",__func__);返回HDF_ERR_IO;}}else{返回HDF_ERR_NOT_SUPPORT;}returnHDF_SUCCESSadd:}myappdirectory在根目录下添加,代码见附件。目录结构如下:4.编译烧录在代码根目录下,执行编译docker环境:sudodockerrun-it-v$(pwd):/home/openharmonyswr.cn-south-1。myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5docker编译环境参考:docker。编译:执行以下三个命令:hbset.hbbuild-f如果hbset报错Invalidvendorpath,则删除ohos_config.json,执行以上命令。烧录:烧录使用hitool:编译生成四个文件中的三个,一个是源码目录下的binary。源码目录下的二进制:device\hisilicon\hispark_taurus\sdk_liteos\uboot\out\boot\u-boot-hi3516dv300.bin。将二进制复制到同目录D:\harmony_tool\hispark_taurus:添加的Hi3516DV300-emmc.xml内容如下:
