技术解码 | YoC组件开发系列二:如何快速将YoC Makefile工程转换为YoC CDK工程

简介: 技术解码栏目:是面向开发者详细解读芯片开放社区(OCC)上关于处理器、芯片、基础软件平台、集成开发环境及应用开发平台的相关技术,方便开发者学习及快速上手,提升开发效率。

编辑语:

技术解码栏目:是面向开发者详细解读芯片开放社区(OCC)上关于处理器、芯片、基础软件平台、集成开发环境及应用开发平台的相关技术,方便开发者学习及快速上手,提升开发效率。


YoC(Yun on Chip) 以极简开发为理念,以CPU架构、芯片平台、操作系统、云服务和开发套件为基础,助力开发者从芯片到云的全链路高效设计,是面向IoT领域的全栈技术平台。


在上期的【技术解码】中,我们向大家详细介绍了如何在OCC上向YoC提交一个全新的芯片产品组件。本周我们将继续推荐YoC组件开发系列内容,本期为大家讲解如何快速将YoC Makefile工程转换为YoC CDK工程的方法。

YoC解决方案类型


根据不同的开发环境,可以将物联网开发者分为两类,分别为:


① Windows开发者

一般使用集成开发环境,比如剑池CDK, KEIL, RTT STUDIO等;


② Linux开发者

一般使用命名行开发环境,使用MAKEFILE, CMAKE, SCONSTRUCT等;


为了让Linux开发者开发的解决方案能够被Windows开发者直接使用剑池CDK进行开发,本文将介绍两种方法来解决这个问题。


01 剑池CDK工程转换

以下介绍的两种方法可以灵活结合使用,比如在没有project.cdkproj工程文件的情况下,可以先用方法一生成project.cdkproj,后续都用方法二进行直接修改,免去切换到LINUX操作系统的过程。


方法一(推荐)

使用yoctools命令直接转换:

  • 在Linux环境下,通过以下指令安装yoctools;



sudo pip install yoctools


  • 进入解决方案solution目录,执行"yoc cdk"命令直接转换;



# Here, we take Wifi_demo for exmaple to create CDK project
# Step 1
docker-ubuntu18:~/bl/bl602_yoc/solutions/wifi_demo$ ls
app  for_CDK  include  Lst  Makefile  Obj  package.yaml  README.md  SConscript  SConstruct  script  wifi_demo.mk  wifi_demo.txt
# Step 2
docker-ubuntu18:~/bl/bl602_yoc/solutions/wifi_demo$ yoc cdk
Generate cdk project.cdkproj success.
# Step 3
docker-ubuntu18:~/bl/bl602_yoc/solutions/wifi_demo$ ls
app  for_CDK  include  Lst  Makefile  Obj  package.yaml  project.cdkproj  README.md  SConscript  SConstruct  script  wifi_demo.mk  wifi_demo.txt
# conclustion - project.cdkproj is the CDK project file generated by yoctools


  • 双击project.cdkproj打开剑池CDK工程;

image.gifimage.png


  • 右键单击wifi_demo节点,选择option for wifi_demo子菜单,选择compiler TAB, 查看CPU的类型是否正确。


注意,这一步最好确认下,有些CPU类型不一定在剑池CDK支持列表里。

image.png


  • 直接按F7进行编译,直到结束;

image.pngimage.png

image.gif

方法二

直接复制一个现成的project.cdkproj进行修改:

  • 从现有的project.cdkproj文件复制到wifi_demo目录下;


  • 直接修改Project name为wifi_demo即可;


image.gifimage.png


02 剑池CDK烧写镜像

利用剑池CDK完成解决方案的开发后,需要将镜像烧写到芯片开发板里,这里介绍两种方法:


方法一(推荐)


  • 选择FLASH->Flash Management菜单进行FLASH算法文件配置;


image.gifimage.png


  • 利用FLASH.ELF进行镜像烧写;


  • 在默认的情况下,点击Flash->download或Flash download Icon后, 剑池CDK会默认下载obj/wifi_demo.elf镜像;


  • 在很多情况下,用户需要打包生成的镜像后再进行烧写。


  • 右键单击wifi_demo节点,选择option for wifi_demo子菜单,选择userTAB, 进行设置before build / after build的脚本设置。一般推荐该脚本目录就在wifi_demo根目录下。

image.png

image.gif

b.  用户可以通过编写脚本来满足自行开发的镜像打包处理的需求。


方法二

利用FLASH PROGRAMMER进行进行烧写:

  • 直接点击查看原文进行FLASH PROGRAMMER安装包下载;


  • 安装完成后,打开FLASH PROGRAMMER,选择下载的ELF文件;


image.gifimage.png


  • 点击Advance菜单,进行FLASH.ELF算法文件设置;


image.gifimage.png


  • 单击Start按钮开始烧写即可。


方法三

直接利用第三方烧写工具进行镜像烧写,可以不使用CKLINK LITE/CKLINK PRO这些需要芯片厂商自己提供的烧写工具。


相关文章
|
7月前
|
JSON 机器人 Linux
推荐一款嵌入式Linux开源框架与封装-cpp-tbox
推荐一款嵌入式Linux开源框架与封装-cpp-tbox
142 3
|
3月前
|
API 开发工具 Android开发
从安装到打包,手把手教你如何在Uno Platform上部署跨平台应用——一篇详尽的开发者指南
【9月更文挑战第7天】Uno Platform 是一个跨平台应用开发框架,利用UWP API构建Web、iOS、Android等多平台应用。本文详述了安装Uno Platform SDK、配置项目支持跨平台、添加主方法以及使用命令行工具进行应用打包的过程,助您快速上手 Uno Platform 并部署应用。通过简单的代码示例,让开发者轻松掌握从安装到发布的核心步骤。
232 2
|
缓存 中间件 Swift
优酷iOS工程插件化 -- 大量模块壳工程本地如何快速编译
业务快速发展,优酷工程已有大量模块,模块耦合严重且混乱,模块依赖是一颗“树”,甚至于一张“网” ,导致开发体验持续严重下降,如何解决本地调试效率低、不支持模拟器、模块整包依赖不一致等等痛点问题,文中进行了说明。
54035 6
|
编解码 人工智能 Linux
OpenHarmony 标准系统 HDF 框架音视频驱动开发
OpenHarmony 标准系统 HDF 框架音视频驱动开发
693 0
OpenHarmony 标准系统 HDF 框架音视频驱动开发
|
前端开发 Shell 测试技术
【芯片前端】以vcs编译环境为例做一个适用于芯片前端的极简版Makefile实操教程
【芯片前端】以vcs编译环境为例做一个适用于芯片前端的极简版Makefile实操教程
861 0
|
物联网 C语言 芯片
Stm32 向 keil 中添加库及应用程序 | 学习笔记
快速学习 Stm32 向 keil 中添加库及应用程序
Stm32 向 keil 中添加库及应用程序 | 学习笔记
|
Linux Shell C语言
Wujian SoC 平台_工具链流程|学习笔记
快速学习 Wujian SoC 平台_工具链流程
254 0
Wujian SoC 平台_工具链流程|学习笔记
|
编译器 C语言
QT应用编程: QtCreate编译部署开源音视频框架模块QtAV
QT应用编程: QtCreate编译部署开源音视频框架模块QtAV
211 0
QT应用编程: QtCreate编译部署开源音视频框架模块QtAV
|
物联网 调度 开发工具
技术解码 | YoC组件开发系列一:如何向OCC发布芯片产品组件
技术解码栏目:是面向开发者详细解读芯片开放社区(OCC)上关于处理器、芯片、基础软件平台、集成开发环境及应用开发平台的相关技术,方便开发者学习及快速上手,提升开发效率。
434 0
技术解码 | YoC组件开发系列一:如何向OCC发布芯片产品组件
|
开发工具 开发者
RISC-V MCU开发(九):工程模板管理
相对于平台和解决方案,工程实际上是开发者管理代码、操作配置的最小单位。而在先前的介绍中,我们介绍了MRS工程创建的过程,以及编译、烧写、调试的这些实际功能,自然而然随之而来就会有这样几个问题——这些工程是如何内置在MRS中的呢?我们又如何将已有的工程,保存为自己的模板、供其他用户使用呢?本文我们就来一一介绍。
RISC-V MCU开发(九):工程模板管理
下一篇
DataWorks