赞
踩
嘉楠科技提供了2中语言的开发环境,分别是C/C++和MicroPython,本章主要介绍如何搭建CanMV-K230开发环境,基于Linux+RT-smart双系统开发。也会介绍如何CanMV-IDE环境开发方式
我是用的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)
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 IDE的GitHub地址,根据自己的系统下载对应的软件安装包:https://github.com/kendryte/canmv_ide/releases
如果被墙了,也可以到嘉楠官网下载:https://developer.canaan-creative.com/resource
下载后得到canmv-ide-windows-vx.x.x-gxxxxxx.exe文件,双击打开安装包
按照个人情况修改安装路径
安装完成
区域①菜单栏:操作文件,使用工具等。
区域②快捷按钮:区域①中的文件和编辑中部分功能的快捷方式。
区域③连接设备:连接设备和程序控制按钮。
区域④代码编辑区:编辑要运行的代码。
区域⑤串行终端:显示串口打印的调试信息。
区域⑥图像预览:显示摄像头的图像预览。
区域⑦固件信息:显示连接的串口号以及固件的相关信息。
下载名为CanMV-K230_micropython的固件,地址 https://developer.canaan-creative.com/resource
在TF卡中,使用Rufus下载镜像,操作如下
完成烧录后,查看设备管理器,可以看到多了一个串行接口:
USB-Enhanced-SERIAL-A CH342(COM80)为小核linux调试串口
USB-Enhanced-SERIAL-B CH342(COM81)为大核rt-smart调试串口
USB串行设备(COM75)为micropython REPL串口 是CanMV-IDE需要连接的串口。如果没有这个设备,请确定两个USB口都与电脑连接,TF卡烧录的固件是否为“CanMV-K230_micropython”开头的固件。
将K230开发板2个通过TYPE-C数据线连接到电脑USB口。
然后点击CanMV IDE左下角连接按钮。
弹出选择串口,选择K230开发板对应的串口号。如果有多个串口请先确定对应的串口号再点击OK打开。
连接成功会将图标变为已连接状态,同时灰色播放键变为绿色。
如果对程序进行真机在线调试,可以直接单次运行即可
提示:此步骤运行的程序,断开连接、按复位键或者关机后,程序丢失不保存
连接完成后,可以看到左下角的连接图标变成已连接符号。
如果没有打开例程,可打开文件->示例->AI demo->face_detect.py
点击绿色按钮直接运行即可
此时可以看到LCD显示摄像头画面,同时IDE右上角也有显示摄像头画面。运行结果和使用C的镜像一致
如果调试后的程序符合预期,可以让其在开发板上保留,待下次开机后自动运行
提示:此步骤的程序重新上电后会自动运行
在保持连接的情况,点击工具->保存当前打开的脚本为(main.py)到CanMV Cam
点击Yes保存程序,完成后,断开连接或者按一下复位按键,程序会自动运行。
如果有插入TF卡,程序优先保存到TF卡,并且优先运行TF卡里的main.py文件。
本章介绍了如何搭建CanMV-K230开发环境,基于Linux+RT-smart双系统开发,做镜像烧录,接下来我们学习如何进行开发。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。