第八章 CanMV IDE初体验

《DNK210 使用指南 -CanMV 版 V1.0》第八章 CanMV IDE初体验

在前面的章节中,已经介绍了如何编译CanMV固件、如何将CanMV固件烧录至Kendryte K210以及在Windows下搭建好了CanMV的开发环境,本章将简单介绍CanMV IDE的部分使用方法。

本章分为如下几个小节:

8.1 CanMV IDE简介

8.2 体验CanMV IDE

8.1 CanMV IDE简介

CanMV IDE是嘉楠科技针对CanMV的MicroPython语法应用开发推出的一款跨平台集成开发环境软件,主要用于编写在CanMV上运行的MicroPython代码。

CanMV IDE提供了基础的设备连接、MicroPython脚本编辑、运行MicroPython脚本程序等功能。在MicroPython脚本编辑上,CanMV IDE实现了MicroPython语法的关键字高亮、代码补全、代码对齐等功能,为用户开发MicroPython脚本程序提供了非常大的便捷。在运行MicroPython脚本程序上,CanMV IDE提供了一键式的脚本运行方式,并且在脚本程序运行时,能够实时显示摄像头采集的图像,并实时计算显示图像画面在各种色彩空间下的直方图,这些都能加速用户开发基于MicroPython语法的应用。

因为CanMV IDE为CanMV的MicroPython语法应用开发提供了开发过程中要使用到的绝大多数功能,因此搭建基于CanMV的MicroPython语法的开发环境也就是安装CanMV IDE。

CanMV IDE是与CanMV一样都是开源的项目,CanMV IDE的源代码在GitHub上开源,其仓库的地址为:https://github.com/kendryte/canmv_ide.git

8.2 体验CanMV IDE

CanMV IDE能够与运行CanMV固件的Kendryte K210通过串口进行连接,连接成功后,不仅能够一键运行已经编辑好的MicroPython脚本,还能够访问Kendryte K210的文件系统。

在CanMV IDE的主界面中,可通过点击左下角的“连接”按钮或快捷键Ctrl+E,打开设备连接窗口,如下图所示:

图8.2.1 设备连接窗口

在设备连接窗口中,需要正确选择CanMV IDE与Kendryte K210连接使用的COM端口号,然后点击“OK”按钮,便可进行设备连接。高级设置是用来配置连接模式的,只要能连接成功,便不用理会高级设置,若连接不成功,可更换高级设置中的连接模式,然后尝试重新连接。

设备连接成功后,“连接”按钮变为“断开连接”按钮,同时CanMV IDE主界面右下角会显示CanMV固件版本等信息,如下图所示:

图8.2.2 设备连接成功

此时,可以点击CanMV IDE主界面左下角的“开始(运行脚本)”按钮或快捷键Ctrl+R运行CanMV IDE默认的“Hello World”例程。

CanMV IDE默认的“Hello World”例程被运行后,便可在CanMV IDE上直接观察到运行情况,如下图所示:

图8.2.3 观察脚本程序运行情况

如上图所示,在“帧缓冲区”窗口中实时显示了Kendryte K210通过摄像头采集到的画面,同时,“帧缓冲区”窗口还提供了“录制”、“缩放”和“禁用”三个按钮,这三个按钮的功能如下所示:

“录制”:将“帧缓冲区”窗口中的图像数据录制成视频,并保存到PC的文件系统中;

“缩放”:根据“帧缓冲区”窗口的大小,对“帧缓冲区”显示的图像画面进行缩放;

“禁用”:禁止在“帧缓冲区”窗口中显示图像数据(在大多数其概况下,这将有利于提高MicroPython脚本的运行速度)。

接下来是“直方图”窗口,在“直方图”窗口中可以查看“帧缓冲区”窗口中图像数据的在各个色彩空间下的直方图,CanMV IDE一共提供了四种色彩空间的直方图,分别为:RGB色彩空间、灰度色彩空间、LAB色彩空间和YUV色彩空间,如下图所示:

图8.2.4 “直方图”窗口中各个色彩空间下的直方图

在CanMV IDE的左下角有一个“串行终端”窗口,在脚本例程中调用“print()”等方法打印的数据,都将会在“串行终端”窗口中显示。值得注意的是,“串行终端”窗口只能显示接收到的数据,并不能通过“串行终端”窗口发送数据,若需要使用具有发送和接收的交互式串口终端,可以在CanMV IDE上方工具栏中依次找到“工具(T) à打开终端à新终端”。

CanMV IDE也可以访问Kendryte K210上的文件系统,在CanMV IDE上方工具栏中点击“工具”按钮,可以看到如下窗口:

图8.2.5 工具窗口

上图中红框框出的便是CanMV IDE提供的用于访问Kendryte K210上文件系统的工具,它们的功能如下所示:

“保存当前打开的脚本为(boot.py)到CanMV Cam”:将当前CanMV IDE脚本编辑窗口中打开的脚本文件保存到Kendryte K210文件系统的根目录下,并重命名为“boot.py”。

“保存房前打开的脚本为(main.py)到CanMV Cam”:将当前CanMV IDE脚本编辑窗口中打开的脚本文件保存到Kendryte K210文件系统的根目录下,并重命名为“main.py”。

“保存文件到CanMV Cam”:选择PC文件系统中的文件,并将其保存到Kendryte K210文件系统中的指定位置。

对于文件系统、“boot.py”文件和“main.py”文件的说明如下:

文件系统:对于运行了CanMV固件的Kendryte K210,访问的文件系统主要为外扩的NOR Flash和TF卡。当未插入TF卡启动时,NOR Flash上的文件系统是便是CanMV访问的默认文件系统;当插入TF卡启动后,TF卡上的文件系统便是CanMV访问的默认文件系统。

“boot.py”文件:该脚本文件会在Kendryte K210上电运行CanMV固件后首先被运行,类似于初始化。

“main.py”文件:该脚本文件会在“boot.py”文件之后后被运行,类似于应用程序,因此仅需将“main.py”文件替换为自定义的脚本文件,便可以实现在Kendryte K210上电后自动运行某一程序。

以上便是CanMV IDE简单的使用介绍,当然,CanMV IDE的功能不止如此,有兴趣的读者,可以自行摸索一下,对于本章没有介绍到的功能,大部分也都会在后续的实验章节中陆续介绍。

#程序员##嵌入式##嘉楠科技##AI芯片##开发#
正点原子DNK210开发板教程 文章被收录于专栏

正点原子DNK210开发板教程:DNK210使用指南 -CanMV版 V1.0

全部评论

相关推荐

2025-11-21 22:25
门头沟学院 HTML5
我是个没天赋的人,努力学习也只考上了个一本,家里条件也不怎么样。大一玩了一年,没怎么学技术,也没有卷绩点,全在游戏小说抖音中度过。大二上接触了牛客,看到了许多优秀的同龄人。很多双非的同学,甚至不少学院本的同学都进了大厂实习。我把他们作为榜样,决定好好学习。我每天都至少学八九个小时,很多次都想要放弃,想哭,我都坚持了下来。我总是告诉自己,只要努力,就一定能有好的结果。这几个月过的很累,但也很充实。转眼就到大二下了,我决定去找实习了,但是学校的认可度让我感到心底发凉,明明和广工这种知名双非分差不多,结果总被问是不是公办本科。两个月投了一千份实习,只有四个面试,最终去了个中小厂实习。结果就是改了两个月bug,虽然mt人挺好,但是实在学不了什么东西,所以就离职开始面试。凭借这段实习,确实多了不少中小厂面试,但是大厂依旧没有面试机会。除了字节腾讯所有大厂都投了,结果依旧是0面试。最终有幸获得美团的面试机会,面试也幸运的通过,然后入职了。为了省钱坐十几个小时硬座到北京,到北京的第一天,由于太激动想要租房,结果被坑了2600,之前实习的地方,房东也故意不退押金,加起来总共损失3000多。虽然很难过,但是我还是忍受了下来,我想着实习才刚开始,会好起来的。实习了大半个月,跟学校这边沟通一直不成功,我每天都寝食难安,精神都快崩溃了,经常凌晨两三点才睡着,想要跳楼。最后迫于无奈,我一大早我坐高铁回去,恳求院主任给我一个机会,我怎么恳求讲理都没用,甚至都磕头下跪了,还是没用。院主任一点机会都没给我,连让我跟各科老师沟通机会都不给,要不休学要不辞职。我没得选择,这段实习我看的比我的生命还重要,这不仅是我这大半年的心血,更是未来的一份希望。我只能休学,我想着现在好好实习,多学点技术,到时候秋招早点拿到offer,然后再补这学期的课也不是不行。但是,现实总是事与愿违。这三个月说实话并没有学到什么东西,前一个月很闲,这两个月事很多,每天基本都是九点后下班,但都是杂活。产出都是靠我看文档加上代码写上去的。我真的很想锻炼一下技术,但是总是不尽人意。三个月了,我到现在都还没做过一个像样点的需求。产出是能编,但有破绽不说还没锻炼到技术。我好想真正的做一下需求啊,我好想真正的走完一遍流程,去上线一次啊。接下来两个月,我不知道该怎么坚持下去了,现在每天都想哭,很焦虑,很难受。冒着将来可能延毕的风险,我赌上了一切,结果输的这么彻底,可能我就只是个小丑吧。如果家庭好点就不用卷了,如果我聪明一点就能上个好学校了,如果大一有人带我,我就不会摆烂了,如果院主任给我个机会,我就不用这么苦了,如果我实习能有机会好好锻炼自己,我就不用这么难受焦虑了。但是没办法,我又能怎么办呢,无非是咬紧牙关罢了,毕竟没人能够帮助我,只能靠自己我可真是个小丑啊
HasonoCell:你很棒了bro....其实我看网上休学一年的人很多的也都顺利毕业了,真的不用特别焦虑这个事。另外实习也是,有一段大厂实习已经比很多很多人厉害了,跟你一届的很多人现在估计都没意识到未来的压力呢,实习就算没产出也不用特别焦虑,好好总结一下已经做过的事情,然后趁着休学这年继续冲一下,要相信未来会有好结果的。你应该也挺眼熟我的,我之前字节横向挂的时候也是难过的不行,觉得自己好没用,结果百度出乎意料的offer了,很多事其实都很顺其自然,认真做事,好结果也许就在下个路口等着你。 很喜欢的一句话是:木已成舟。不要老是沉浸在过去的遗憾中无法自拔噢,要努力过好当下。 好好休息一下吧,辛苦了,你已经很棒了噢
点赞 评论 收藏
分享
2025-12-15 14:25
云南大学 Java
lei22:入职可能会看学信网,最好别伪装,这个简历找实习肯定是够的,肯定会有收 28 届实习生的公司的,多投就行
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务