《DNK210使用指南 -CanMV版 V1.0》第五章 编译CanMV固件
第五章 编译CanMV固件
1)实验平台:正点原子DNK210开发板
2) 章节摘自【正点原子】DNK210使用指南 - CanMV版 V1.0
3)购买链接:https://detail.tmall.com/item.htm?&id=782801398750
4)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/k210/ATK-DNK210.html
5)正点原子官方B站:https://space.bilibili.com/394620890
6)正点原子K210技术交流企鹅群:605557868


上一章节中已经搭建好了基于CanMV的C开发环境,这么一来便可以进行基于C语言和FreeRTOS的应用开发或者编译基于MicroPython语法的应用开发方式所需的CanMV固件,本章就将带领读者体验一下CanMV固件的编译流程。
本章分为如下几个小节:
5.1 CanMV固件编译说明
5.2 获取CanMV源码
5.3 编译CanMV源码
5.1 CanMV固件编译说明
CanMV固件可由CanMV项目编译得到,如果读者对CanMV固件有裁剪或自定义功能的需求,那么可根据本章介绍的内容,亲自编译CanMV固件。
但对于大部分读者,编译CanMV固件并不是必须的,因为在A盘软件资料软件CanMV固件中提供了编译好的固件,读者可以直接使用。
因此,需不需要读者自行编译CanMV固件,完全由读者的实际情况决定,若以提供的固件不能满足读者的使用需求,那遍需要自行编译CanMV固件。当然,自行编译CanMV固件,也能对CanMV项目有更多的了解。
5.2 获取CanMV源码
CanMV项目的开源地址为:https://github.com/kendryte/canmv.git,因此可以使用Git工具获取CanMV,在新安装的Git工具使用前需要先配置用户名和用户邮箱地址:
# Linux
git config --global user.name "Your user name"
git config --global user.email "Your user email"
使用Git工具获取CanMV项目源码仓库:
# Linux
git clone https://github.com/kendryte/canmv.git $WORKSPACE/canmv/
cd $WORKSPACE/canmv/
git submodule update --init --recursive
获取到CanMV项目源码仓库后,查看仓库的Tag:
# Linux
git tag -l
在列出的所有Tag中,找到最新的Tag,然后切换到该Tag,以v1.0.5为例:
# Linux
git checkout v1.0.5
至此,已经成功获取到最新发布的CanMV源码了,若读者后续有修改CanMV源码并提交修改的需求,可以在此基础上创建一个分支:
# Linux
git switch -c dev
为方便读者使用,在A盘软件资料软件CanMV项目仓库压缩包中提供了CanMV项目仓库的仅克隆无修改的压缩包(可能不是最新版本)。
关于Git工具软件的使用介绍不是本教程文档的重点,请读者在使用中遇到问题时,善用搜索引擎。
5.3 编译CanMV源码
关于CanMV源码的编译,建议读者先详细阅读CanMV仓库下的build.md文档。
编译CanMV源码前,需要先安装一下Python依赖库:
# Linux
cd $WORKSPACE/canmv/
pip install -r requirements.txt
随后,读者请根据使用的板子,进入对应的工程目录下,对工程进行配置:
# Linux
cd projects/canmv_atk_dnk210/
python project.py \
--toolchain $TOOLS/kendryte-toolchain/bin \
--toolchain-prefix riscv64-unknown-elf- \
config
以上的配置,主要是配置编译工程所使用的工具链,如果读者有对CanMV固件功能裁剪或自定的的需求,可以执行一下命令,然后对工程进行更加详细的配置:
# Linux
python3 project.py menuconfig
工程配置完成后,便可对工程进行编译:
# Linux
python project.py build
编译完成后,将在工程的build目录下生成canmv.bin文件,即CanMV固件。
《DNK210使用指南 -CanMV版 V1.0》第五章 编译CanMV固件的更多相关文章
- MySQL与MariaDB核心特性比较详细版v1.0(覆盖mysql 8.0/mariadb 10.3,包括优化、功能及维护)
注:本文严禁任何形式的转载,原文使用word编写,为了大家阅读方便,提供pdf版下载. MySQL与MariaDB主要特性比较详细版v1.0(不含HA).pdf 链接:https://pan.baid ...
- J20航模遥控器开源项目系列教程(一)制作教程 | 基础版V1.0发布,从0到1
我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/C ...
- [原创] RestartPC64-中文版v1.0.0.9
原来发布的RestartPC-中文版和英文版v1.0.0.5,在PE64下无效.所以重新编译了64位版的RestartPC64-中文版v1.0.0.9,可以在PE64下面.正常Win64系统下面重启关 ...
- 《C++Primer》第五版习题答案--第五章【学习笔记】
<C++Primer>第五版习题答案--第五章[学习笔记] ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/15 第五章:语句 ...
- WPF 自定义 MessageBox (相对完善版 v1.0.0.6)
基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当你不得不弹出一个消息框通知用户消息时(虽然很不建议在程序中频繁 ...
- 网盘直链工具 winform版 V1.0
软件需要.net2.0支持 win7及以上版本用户无需安装 xp用户需要安装 支持网盘:好盘 坚果云 百度云 乐视云 华为网盘 微云 新浪网盘 126disk 速度盘 乐齐盘 天空网盘 千脑网盘 可乐 ...
- 保卫萝卜官方PC版——含绿色版 V1.0.6Beta
官方网站 | 安装版 | 绿色版
- 免费了 -- EXCEL插件 智表ZCELL 普及版V1.0 发布了!!!
智表(zcell)是一款浏览器仿excel表格jquery插件.智表可以为你提供excel般的智能体验,支持双击编辑.设置公式.设置显示小数精度.下拉框.自定义单元格.复制粘贴.不连续选定.合并单元格 ...
- Oracle复习(复习精简版v1.0)
自己没记不住的,超基础Oracle知识,新手可以看一下. 大多数例子是用scott用户中的emp表完成 排序:order by 列名 desc是降序,默认是升序: update 表名 set 列 ...
- 《CSS权威指南(第三版)》---第五章 字体
这章主要的内容有: 1.字体:一般使用一种通用的字体. 2.字体加粗:一般从数字100 -900 . 3.字体大小:font-size 4.拉伸和调整字体:font-stretch 5.调整字体大小: ...
随机推荐
- NumPy 数组创建方法与索引访问详解
NumPy 创建数组 NumPy 中的核心数据结构是 ndarray,它代表多维数组.NumPy 提供了多种方法来创建 ndarray 对象,包括: 使用 array() 函数 array() 函数是 ...
- ruby执行周期性任务 whenever
ruby执行周期性任务 下面看看怎么将任务写入cron服务. $ whenever #不带参数的whenever会显示转换程cron任务的代码,不写入cron任务表 $ whenever -w #写入 ...
- 对于Docker和Podman的一点使用经验
前言:本文会以多个实际的线上例子,分享自己对于Docker和Podman的一点使用经验及踩过的坑,希望对读者有一点帮助. 本文bash脚本初步加工后可直接使用(兼容mac和linux系统),对于关键点 ...
- vue特殊atribute-is
1.解决dom内模板限制 有些 HTML 元素,诸如 <ul>.<ol>.<table> 和 <select>,对于哪些元素可以出现在其内部是有严格限制 ...
- 化繁为简|AIRIOT智慧水务信息化建设解决方案
"生产自动化,管理信息化"是现代化水厂建设的目标之一,需要在水质要求.工艺.生产.管理.环境等监测方面达到精细化管理标准,这是一个高度智能化,实现化繁为简智慧进阶的工程.传统水 ...
- ChannelInboundHandlerAdapter 类
在 ChannelInboundHandlerAdapter 类中,除了 channelActive 和 channelRead 方法之外,还有其他方法用于处理不同类型的入站事件.以下是这些方法的解释 ...
- C#命令行参数解析库System.CommandLine介绍
命令行参数 平常在日常的开发过程中,会经常用到命令行工具.如cmd下的各种命令. 以下为sc命令执行后的截图,可以看到,由于没有输入任何附带参数,所以程序并未执行任何操作,只是输出了描述和用法. 系统 ...
- 【论文笔记】AlexNet
[深度学习]总目录 由于受到计算机性能的影响,虽然LeNet在图像分类中取得了较好的成绩,但是并没有引起很多的关注. 直到2012年,Alex等人提出的AlexNet网络在ImageNet大赛上以远超 ...
- Centos7安装Nginx教程,一步安装http和https
nginx是一款轻量级web服务器,主要有负载均衡和反向代理的特性. 安装准备 nginx一些模块需要依赖lib库,所以先安装lib库,执行以下命令: [root@localhost local]# ...
- vs2019 调试服务器代码
前言&使用背景: 又是我,一个不是在解决bug就是在解决bug路上的黄金程序员.今天给大家介绍一种方法是vs自带的调试工具.通常我们会遇见一种情况,那就是本地调试没有一点问题! 可一但发布到服 ...