GD32VW553-IOT开发板移植适配openharmony

想玩openharmony系统已经很久了,但是苦于手上没有合适的开发板可以玩,只能作罢,偶然刷b站的时候,有看到ICEasy商城在搞开发板免费申请的活动,过段进行了申请,然后顺利的拿到了开发板,开发板全貌图如下所示

具体产品介绍可以浏览地址 https://www.iceasy.com/product/1874659379209633793,这里只做简单介绍,具体如下:

320KB RAM + 4MB Flash,支持2.4Ghzwifi6+蓝牙5.2功能,根据openharmony官网的介绍,跑轻量系统的最小配置为128KIB的ram,我们这个开发板那是绰绰有余了。

基于此,我们便开始了我们GD32Vw553-IOT开发板的openharmony的适配之路。

适配步骤开始之前,肯定是先下载ohos相关源码,这里我选用的5.0+的系统,适配多是结合网上案例或者官网亦或者源码进行的,如有错误还望帮忙指正,废话不多说,开始进入正题。

首先我们在ohos的源码vendor目录下创建xingyun/gd32vw553目录,最终全路径则为vendor/xingyun/gd32vw553,接着在这里添加我们需要的文件,我这里直接复制了vendor/hisilicon/hispark_pegasus_mini_system下的config.json文件,然后需要修改对应的文件内容

如下

bash 复制代码
{
    "product_name": "gd32vw553",
    "type": "mini",
    "version": "3.0",
    "ohos_version": "OpenHarmony 3.1",
    "device_company": "xingyun",
    "device_build_path": "device/board/xingyun/gd32vw553_iot",
    "inherit":["productdefine/common/base/mini_system.json"],
    "board": "gd32vw553_iot",
    "kernel_type": "liteos_m",
    "kernel_is_prebuilt": true,
    "kernel_version": "",
    "subsystems": [
      {
        "subsystem": "hiviewdfx",
        "components": [
          { "component": "hilog_lite" },
          { "component": "hievent_lite" },
          { "component": "hiview_lite" }
        ]
      },
      {
        "subsystem": "startup",
        "components": [
          { "component": "bootstrap_lite" },
          { "component": "init", "features":
            [
              "init_feature_begetctl_liteos = true"
            ]
          }
        ]
      },
      {
        "subsystem": "communication",
        "components": [
          { "component": "dsoftbus" }
        ]
      },
      {
        "subsystem": "systemabilitymgr",
        "components": [
          { "component": "samgr_lite" }
        ]
      },
      {
        "subsystem": "security",
        "components": [
          { "component": "device_auth" },
          { "component": "huks", "features":
            [
              "huks_use_lite_storage = true",
              "huks_config_file = \"hks_config_lite.h\""
            ]
          }
        ]
      },
 {
        "subsystem": "commonlibrary",
        "components": [
          { "component": "utils_lite",
            "features":[ "utils_lite_feature_kal_timer = true" ]
          }
        ]
      },
      {
        "subsystem": "updater",
        "components": [
          { "component": "sys_installer_lite" }
        ]
      }
    ],
    "third_party_dir": "//device/soc/hisilicon/hi3861v100/sdk_liteos/third_party",
    "product_adapter_dir": "//vendor/hisilicon/hispark_pegasus/hals"
  }

从上面可以看出,我们需要在ohos的根目录下添加device/board/xingyun/gd32vw553_iot目录,这目录里面需要添加目录liteos_m,然后再在目录中添加config.gni文件,这里可以先复制device/board/hisilicon/hispark_pegasus/liteos_m的文件使用添加好后,我们再从我们可以使用hb set命令测试我们添加的效果

如上图,已经可以看到我们添加的产品了,我们选中回车即可。这个时候我们已经可以使用hb build -f来尝试进行编译了,这个时候进行编译无疑是会报错的,因为我们还没有完成适配工作。我这里直接就报错了如下图

这里是因为我们缺少文件导致,我们需要在vendor/xingyun/gd32vw553目录下添加bundle.json文件,文件内容如下:

bash 复制代码
{
    "name": "@ohos/product_gd32vw553",
    "description": "gd32 ohos",
    "version": "3.1",
    "license": "Apache License 2.0",
    "publishAs": "code-segment",
    "dirs": {},
    "scripts": {},
    "component": {
        "name": "product_gd32vw553",
        "subsystem": "product_gd32vw553",
        "syscap": [],
        "features": [],
        "adapted_system_type": [
            "mini",
            "small"
        ],
        "rom": "",
        "ram": "",
        "deps": {
            "components": [],
            "third_party": []
        },
        "build": {
            "sub_component": [
            ],
            "inner_kits": [],
            "test": []
        }
    }
}

接着我们尝试再次编译查看错误是否更新,可以看到错误已经更新如下图。

这里重复上面的步骤,将vendor/xingyun/gd32vw553中的bundle.json复制到device/board/xingyun/gd32vw553_iot目录中,然后修改bundle.json文件,改动如下图所示

改好后我们再次进行编译,就可以看到如下图的成功截图了。

添加开发板到编译框架就算完成了,如果有报错可以参考 https://docs.openharmony.cn/pages/v5.0/zh-cn/device-dev/quick-start/quickstart-pkg-3861-tool.md 地址查看下是否有相关工具没有安装

相关推荐
北京耐用通信19 分钟前
耐达讯自动化Profinet转Devicenet网关:精细化工行业的“协议融合利器”
人工智能·物联网·网络协议·自动化·信息与通信
zhuweisky20 分钟前
ArkTS实现鸿蒙手机视频聊天、屏幕分享(HarmonyOS)
音视频·harmonyos·鸿蒙开发
大雷神2 小时前
HarmonyOS智慧农业管理应用开发教程--高高种地--第32篇:应用测试、优化与调试
华为·harmonyos
前端不太难2 小时前
HarmonyOS 游戏中,被“允许”的异常
游戏·状态模式·harmonyos
新新学长搞科研2 小时前
【智慧城市专题IEEE会议】第六届物联网与智慧城市国际学术会议(IoTSC 2026)
人工智能·分布式·科技·物联网·云计算·智慧城市·学术会议
牵牛老人2 小时前
Qt中集成 MQTT 来实现物联网通信:从原理到实战全解析
开发语言·qt·物联网
上海合宙LuatOS2 小时前
LuatOS ——Modbus RTU 通信模式
java·linux·服务器·开发语言·网络·嵌入式硬件·物联网
木斯佳2 小时前
HarmonyOS 6实战(源码教学篇)— MindSpore Lite Kit 【从证件照工具到端侧图像分割技术全解析】
华为·harmonyos
国产化创客2 小时前
ESPHome 核心原理+全流程开发与集成
物联网·智能家居·智能硬件
三声三视2 小时前
HarmonyOS 路由框架 HMRouter 全解析:从原理到实践
华为·harmonyos