从零玩转CanMV-K230(2)-开发环境搭建

文章目录


前言

本章介绍如何搭建CanMV-K230开发环境,基于Linux+RT-smart双系统开发

一、编译环境搭建

我是用的vmware虚拟机:ubuntu 20.04,搭建环境如下:

直接下载压缩包,下载地址 https://github.com/kendryte/k230_sdk/releases或者https://gitee.com/kendryte/k230_sdk/releases,或者使用git clone https://github.com/kendryte/k230_sdk或者 git clone https://gitee.com/kendryte/k230_sdk.git(国内用户建议使用gitee)

bash 复制代码
git clone https://gitee.com/kendryte/k230_sdk.git

cd k230_sdk

source tools/get_download_url.sh && make prepare_sourcecode

//第一次编译需要,已经生成docker镜像后跳过此步骤
sudo docker build -f tools/docker/Dockerfile -t k230_docker tools/docker

//执行上面命令,如果您没有安装docker可以先安装docker

sudo docker run -u root -it -v $(pwd):$(pwd) -v $(pwd)/toolchain:/opt/toolchain -w $(pwd) k230_docker /bin/bash

make CONF=k230_canmv_defconfig #编译CanMV-K230板子镜像
//sdk不支持多进程编译,不要增加类似-j32多进程编译参数。

编译成功,我的虚拟机算理有限,整个编译过程大约1个小时左右,截图如下

生成的镜像如图

目录结构如下:

images目录下镜像文件说明如下:

sysimage-sdcard.img -------------是sd和emmc的非安全启动镜像;

sysimage-sdcard.img.gz --------是SD和emmc的非安全启动镜像压缩包(sysimage-sdcard.img文件的gzip压缩包),烧录时需要先解压缩。

sysimage-sdcard_aes.img.gz是SD和emmc的aes安全启动镜像压缩包,烧录时需要先解压缩。

sysimage-sdcard_sm.img.gz是SD和emmc的sm安全启动镜像压缩包,烧录时需要先解压缩。

安全镜像默认不会产生,如果需要安全镜像请参考4.3.4使能安全镜像。

大核系统的编译产物放在images/big-core目录下。

小核系统的编译产物放在images/little-core目录下。

二、镜像烧写

尽管有两个核,但是固件都在一个镜像里,所以烧录一个镜像就可以了;

烧录我建议使用windows下的烧录方式,Windows下可通过rufus工具对TF卡进行烧录(rufus工具下载地址 http://rufus.ie/downloads/)。

1)将TF卡插入PC,然后启动rufus工具,点击工具界面的"选择"按钮,选择待烧写的固件。

**注意:**这里的镜像可以是你编译产生的sysimage-sdcard.img镜像,或使用sysimage-sdcard.img.gz解压缩得到该文件。当然也可以是从官网下载的镜像文件,需要解压后烧录。

2)点击"开始"按钮开始烧写,烧写过程有进度条展示,烧写结束后会提示"准备就绪"。


稍等片刻,等待镜像烧录完成。

将烧好固件的TF卡插入CanMV-K230 TF卡插槽,Type-C线连接电脑和板端的POWER口,板子即上电,系统开始启动。

红框的中红灯亮,则说明开发板正常上电。此时查看串口信息。系统上电后,默认会有两个串口设备,可分别用于访问小核Linux和大核RTSmart

小核Linux默认用户名root,密码为空。大核RTSmart系统中开机会自动启动一个应用程序,可按q键退出至命令提示符终端。

系统启动后默认运行人脸检测程序,将摄像头对准人脸,在显示器上会将人脸框出。


总结

本章介绍了如何搭建CanMV-K230开发环境,基于Linux+RT-smart双系统开发,做镜像烧录,接下来我们学习如何进行开发。

相关推荐
Oliverro6 分钟前
嵌入式音视频通话EasyRTC基于WebRTC技术驱动智能带屏音箱:开启智能交互新体验
人工智能·音视频
終不似少年遊*1 小时前
MindSpore框架学习项目-ResNet药物分类-模型优化
人工智能·深度学习·机器学习·计算机视觉·分类·数据挖掘·华为云
GpuGeek1 小时前
一文走进GpuGeek | conda常用命令
人工智能·conda·gpu算力·云平台
背太阳的牧羊人1 小时前
SemanticSplitterNodeParser 和 Sentence-BERT 的区别和联系是什么
人工智能·深度学习·bert
饮啦冰美式2 小时前
PPO近端策略优化算法
人工智能·深度学习·算法
电棍2332 小时前
近日部署跑通的若干多模态模型总结与论文概述
人工智能·深度学习
VI8664956I262 小时前
企业级AI革命!私有化部署开源大模型:数据安全+自主可控,打造专属智能引擎
人工智能·开源
麦麦麦造2 小时前
[特殊字符]Meilisearch:AI驱动的现代搜索引擎
人工智能·搜索引擎
水煮蛋不加蛋2 小时前
AutoGen 框架解析:微软开源的多人 Agent 协作新范式
人工智能·microsoft·ai·开源·大模型·llm·agent
Silence4Allen2 小时前
大模型微调终极方案:LoRA、QLoRA原理详解与LLaMA-Factory、Xtuner实战对比
人工智能·大模型·微调·xtuner·llamafactory