喜欢今日头条,偶然看到广告,半个多月前交了8.9元,报名参加了头条上Python的四天培训课,呵呵,总算是有了零的开始(还是有点收获的,见https://www.sohu.com/a/381128744_120248280)。三天前搜到这个电子工程世界论坛,马上注册了ID,发现这里可能是学习交流MicroPython的最大平台…
春节新冠疫情过后,我入手了一块支持MicroPython的开发板(性价比还行,百多元),国产自主知识产权的K210芯片,从零开始学习,尝试动手做实验。
自2018年9月6日,嘉楠科技推出自主设计研发的全球首款基于RISC-V的量产商用边缘智能计算芯片勘智K210,至今使用K210芯片的开发板已经很多了,比如号称第一款采用RISC-V芯片设计的香蕉Pi板BPI-K210,还有KD233、Sipeed M1(荔枝丹),MAIX Bit,M5Stick-V,MAIX GO,pyAI- K210,MAIX Dock,PaddlePi-K210和Maixduino等。
图为香蕉Pi板BPI-K210
最后选择Maixduino的理由挺简单的,就是这款开发板的版型能够兼容Arduino UNO的许多资源,相对来说其生态环境要好一些。作为测试的简单实验,半个月左右,先后尝试了在Maixduino上,配置Arduino IDE与PlatformIO IDE开发环境(win10)。
https://cn.bbs.sipeed.com/d/102-maixduino2-arduinowin10
https://cn.bbs.sipeed.com/d/154-maixduino8-platformio-idewin10
1、安装开发板串口驱动
正常情况下,win10 ,linux3.0+ ,mac os都可以自动识别并安装串口驱动。如果遇到驱动失败,可以去 FTDI 官网下载对应的 VCP 驱动程序。
https://www.ftdichip.com/Drivers/VCP.htm
win驱动下载地址:http://www.ftdichip.com/Drivers/CDM/CDM21228_Setup.zip
如果到驱动安装不正确,请彻底卸载原驱动,下载官方驱动,切断网络并安装驱动即可解决问题。
2、下载K210开发板固件,更新MaixPy固件相当于给开发板烧录系统,使用Type C 线连接开发板和电脑,下载开发板固件,方式有两种:
(1)GitHub发布的固件(下载最新版本)
https://codeload.github.com/sipeed/MaixPy/zip/master
https://dl.sipeed.com/MAIX/MaixPy/release/master/
这里选择了v0.5.0_31版本
通常一个固件文件中至少有四个文件,以“maixpy_v0.5.0_31_gd3e71c0”固件为例,具体说明如下:
maixpy_v0.5.0_31_gd3e71c0_m5stickv:M5STACK环境;
maixpy_v0.5.0_31_gd3e71c0_minimum: MaixPy固件最小集合,不支持 MaixPy IDE, 不包含OpenMV的相关算法;
maixpy_v0.5.0_31_gd3e71c0_with_lvgl.elf:完整版的MaixPy固件。
这里我们需要使用maixpy_v0.5.0_31_gd3e71c0_with_lvgl.elf:完整版的MaixPy固件。
3、下载烧录软件kflash_gui 应用,直接下载GitHub项目工程,下载完成点击“kflash_gui.exe”文件安装。
资料页
https://github.com/sipeed/kflash_gui
下载页面
https://github.com/sipeed/kflash_gui/releases
只下载了V1.5版本,其他还在下载之中…
出错了,无法安装kflash_gui.exe
经测试,1.24、1.25和1.32都能打开(这里使用v1.32版本来烧录固件)
附:kflash_gui 特性
支持 *.bin 和 *.kfpgk 文件, 支持文件选择器选择
支持开发板选择
可选择程序烧录到 Flash 或者 SRAM
自动检测电脑上的串口
波特率可编辑
黑白两种皮肤可供选择
界面支持中英文切换
支持烧录进度显示和烧录速度显示
支持取消下载进程
支持合并多个 bin 文件为一个 bin 文件
支持把 kfpkg 文件转换为一个 bin 文件
支持使能 bin 文件
自动识别文件是不是固件
kflash_gui 使用方法
下载文件(kflash_gui_v*.*) 下载地址:release页面
解压, 并双击 kflash_gui.exe 或 kflash_gui
可以自行建快捷方式或者固定到开始页面或者固定要任务栏方便使用; 如果是 Linux, 可以修改 kflash_gui.desktop 里面的路径, 然后用管理员身份复制到/usr/share/application 目录, 然后就可以在系统菜单里面找到kflash_gui的图标了,点击即可打开
选择 bin 文件或者 kfpkg 文件, 如果是bin文件需要指定地址,如果是固件需要指定0x0000地址
选择开发板
选择烧录到开发板的哪个位置 Flash(速度慢但是重新上电还可运行) 或者 SRAM(RAM中运行,下载快断电丢失程序)
选择串口
选择波特率,推荐1.5M
点击 下载 按钮来开始下载
如果需要取消,点击 取消 按钮
4、下载MaixPy IDE,MaixPy 使用Micropython 脚本语法,所以不像 C语言 一样需要编译,要使用MaixPy IDE , 开发板固件必须是V0.3.1 版本以上(这里使用V0.5.0), 否则MaixPy IDE上会连接不上, 使用前尽量检查固件版本和IDE 版本,都更新到最新版以保障能正常使用。
https://cn.dl.sipeed.com/MAIX/MaixPy/ide
https://dl.sipeed.com/MAIX/MaixPy/ide/_/v0.2.4/maixpy-ide-windows-0.2.4.exe
5、下载结束,进行安装
6、测试运行MaixPy IDE
(1)确定开发板:工具——选择开发板——Maixduino
(2)安装驱动,选择端口
工具——打开终端——串行端口——COM6——115200
(3)开始连接
图标绿色变红色表示已连接,见底栏,显示固件版本 V0.5.0
7、使用串口工具
(1)连接硬件
连接 Type C 线, 一端电脑一端开发板
查看设备是否已经正确识别:
在 Windows 下可以打开设备管理器来查看
如果没有发现设备, 需要确认有没有装驱动以及接触是否良好
(a) putty
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
https://xshell.en.softonic.com/download
(3)然后选择串口模式, 然后设置串口和波特率,打开串口。
4)检查固件版本
使用串口终端PuTTY打开串口,然后复位(或按ctrl+D),看输出的版本信息,与github 或者 master 分支 的固件版本对比,根据当前版本情况考虑升级到最新版本。这里烧录的固件版本是“ v0.5.0-31-gd3e71c0” 。
(5)串口终端PuTTY的控制命令:
CTRL-A-在空白行上,进入原始REPL模式
CTRL-B-在空白行上,进入常规REPL模式
CTRL-C-中断正在运行的程序
CTRL-D-在空白行上,对电路板进行软复位
CTRL-E-在空白行上进入粘贴模式
(6)有关可用模块的列表,请键入help(‘modules’)
KPU gc random uio
Maix hashlib re ujson
main heapq sensor ulab
_boot image socket uos
_thread json struct urandom
_webrepl lcd sys ure
array machine time usocket
audio math touchscreen ustruct
binascii math ubinascii utime
board micropython ucollections utimeq
builtins modules ucryptolib uzlib
cmath nes uctypes video
collections network uerrno zlib
errno os uhashlib
fpioa_manager pye_mp uheapq
Plus any modules on the filesystem
8、Hello world!
#尝试搭建K210的Micropython开发环境(Win10)
#实验程序之一:串口打印‘hello maixpy’,固件版本号