开发环境搭建

根据开发用户群不同,YoC开发支持Linux命令行开发和Windows CDK集成开发环境开发。

Windows开发环境搭建

Windows下的开发环境搭建只需要从CDK下载路径安装CDK即可,推荐使用最新的版本。

Linux开发环境搭建

在Linux开发环境下使用yoctools进行芯片开发移植,需要安装yoctools开发工具,利用yoctools可以方便的进行项目组件化管理。

yoctools版本说明

YoC版本 yoctools版本 备注
7.3 1.xx.xx -
7.4 2.0.0 Manifest管理组件清单
之后版本 >=2.0.0 Manifest管理组件清单

yoctools命令快速上手

本章节介绍如何在Linux开发环境下使用yoc命令创键并且编译一个工程。

安装Linux基础环境

以ubuntu 16.04 版本为基础。

如果用户还没有 Linux 环境,可以在 windows 下安装一个virtualbox ubuntu虚拟机,也可以安装 WSL

安装 YocTools

通过 pip 命令来安装 yoctools 到你的系统中,建议使用 python2 作为默认 python。

sudo pip install yoctools

YocTools具体使用说明请见YocTools

创建工作空间

通过 init 命令来初始YoC 的开发环境:

mkdir yoc_workspace
cd yoc_workspace
yoc init

注意:”yoc init“命令默认使用master分支,如需要拉取其他分支可以使用"yoc init -b v7.4.0"

执行完毕之后,如果在yoc_workspace目录生成一个隐藏的.yoc文件,说明初始化成功了。

创建示例工程

使用install命令下载helloworldsolution,命令如下

yoc install helloworld

注意:”yoc install helloworld“命令默认使用master分支,如需要拉取其他分支可以使用"yoc install helloworld -b v7.4.0"

下载 helloworld 示例工程,以及该所依赖的组件,每一个组件都对应一个 git 仓库,通过 git clone 命令将远程代码库中代码复制到本地目录。下载完组件后,当前的工作目录结构如下:

├── boards
├── components
└── solutions/helloworld/

工程编译

在工程里执行make命令,实现工程的编译:

cd solutions/helloworld
make

默认开发板为盘古C2,如需更换开发板,则在make后增加BOARD,比如更改为cb5654

make BOARD=cb5654

如果您是第一次使用 yoctools , make 命令会自动下载对应的编译工具链,并安装到系统中,您将看以下信息:

scons: Reading SConscript files ...
100.00% [##################################################] Speed: 6.787MB/S
scons: done reading SConscript files.
scons: Building targets ...

编译完成之后目录结构如下:

ls
app  generated  Makefile  out  package.yaml  README.md  SConstruct  yoc.elf  yoc_sdk

固件烧写

生成的固件为generated/data/prim,固件包为generated/images.zip,可以在当前目录通过以下命令烧写固件包到开发板中:

make flashall

注意:固件烧写需要有Flash算法文件支持,如何制作Flash算法文件请参考Flash算法适配

调试

概述

GDB 是 GNU 开源组织发布的一个强大的程序调试工具,一般来说,主要包含下面四个方面的功能:

  • 启动程序,可以按照用户自定义的要求随心所欲的运行程序。
  • 可让被调试的程序在所指定的断点处停住。
  • 当程序被停住时,可以检查此时程序中所发生的事。
  • 动态的改变程序的执行环境。
下载并运行debug_server

从平头哥官网下载并安装debug server

安装成功后,保证开发板与PC正确连接,成功连接如下图所示

@debug server 连接成功

常用命令
命令 介绍 示例
file 读取文件 file yoc.elf
target 连接目标调试系统 target remote 192.168.56.1:1025
break 设置断点 b voice_cp.c:461
step 单步执行 si
list 查看源代码 list 或 l
print 查看数据 p g_tick_count

详细介绍GDB

如遇问题,详见FAQ

results matching ""

    No results matching ""