主要内容
- 一、Plus-F5270开发板介绍
- 二、Keil MDK社区版的安装
- 三、集成灵动微MM32F522E支持包
- 四、Hello World
- 五、MicroPython编译
- 六、MicroPython烧录和使用
- 七、相关公开课资源
逐飞科技的Plus-F5270是2022年全国大学生物联网设计竞赛用开发板,它拥有一颗安谋科技“星辰”STAR-MC1架构的灵动微MM32F5277E高性能芯片,集成DSP和FPU。接口丰富,结构合理,是一款典型的多功能实验用板。
开箱体验
拆开盒子,里面一共有5件东西:
1、 Plus-F5270开发板
2、 创芯工坊PWLINK2(DAP)
3、 母对母杜邦线12根
4、 USB Type-C数据线
5、 开发板说明页
可以看到里面的Plus-F5270开发板长这样:
相关接口的示意图:
颜色:黑色盖油白色丝印
尺寸:长154MM,宽98.5MM
电压:DC座供电6-14V,USB口供电5V
这里简单讲一下,如何通过PWLINK2调试器将Plus-F5270和电脑连接。
首先拿出套件里的PWLINK2的烧录器,就是包装袋里面有“防BUG符”的那个。
拆开包装,把它上面的杜邦线一根一根准确的接到板子上。
具体的SWD调试接口引脚定义如图所示。
另外一头接到电脑的USB端口。
这样我们的烧录模式就准备好了。
Keil MDK的安装
Keil MDK是业界知名的开发工具,但商业版的价格不菲,一年几千美金的样子。
好在ARM公司这次推出了免费的Keil MDK社区版(Arm Keil MDK-Community),大家可以用它来给咱们的Plus-F5270调试和烧录程序。
获取Arm Keil MDK-Community之前,要先拥有一个ARM官网的账号。
免费注册地址:
https://www.keil.arm.com/mdk-community/
注册成功后,就可以点击Download Keil MDK进行下载了。
安装成功后,务必先以管理员身份运行Keil MDK(不然你可能无法正常激活)。
然后选择File > 许可证管理,选择Single-User License。
点击 Get LIC via Internet...
此时会弹出Keil网站的许可证管理页面。填完其它信息后,在产品序列号 (PSN) 字段中输入社区版专用序列号:42B2L-JM9GY-LHN8C,提交表格。
如果没什么意外的话,你的邮箱会收到一个许可证 ID 代码 (LIC) 。把这个代码填到 μVision 的LIC 字段中,然后单击“Add LIC”。
这样你的Keil MDK社区版就可以正式投入使用了。
集成灵动微MM32F522E的开发包
虽然你现在可以使用Keil MDK,但Keil MDK此刻还不认得搭载灵动微MM32F522E芯片的开发板。咱们需要安装灵动微官网MM32F522E系列的开发支持包。
下载地址:
https://mindmotion.com.cn/support/software/keil_pack/
解压后你会看到一大堆文件,找到我们的MM32F277E。直接安装即可。
注:安装前请确定自己的Keil MDK是 5.13 或更新版本。
这里演示一个Hello World工程文件的调试和烧录。
如果你是Keil MDK的熟手,可以自行新建工程并开始敲代码。
新手的话,就在灵动微官网下载相关例程进行测试吧(下载例程需要有灵动微官网的账号,免费注册一个即可)。
链接:https://mindsdk.mindmotion.com.cn/
灵动微官网的SDK区域有很多例程,我们这里找到demo_apps,下载basic分类里的Hello World。下载解压后有四个目录,如图所示。
进入mdk目录,直接运行以.uvprojx结尾的工程文件。
你可以看到一段非常经典的C语言代码,根据自己的要求对其修改,点击“Build Target”。如果没报错,就可以进入烧录环节了。
这里需要提醒的是,记得在项目对应的设备选项中,确认MM32F5277E的软件支持包已经正确集成。
如果前面的工作都没有问题,找到“Flash”选项,点击“Download”。这个示例程序不大,Keil MDK的烧录速度很快。
成功后,找个串口访问工具来看看我们的程序跑起来没有。
我这里用的是Tera Term,对应的串口是COM4,波特率115200。
你用Putty之类的工具也是一样的。
可以看到,我这里的程序运行成功了。
注:把DAPLink或者JLink作为调试器,Keil或者Segger Ozone作为烧录工具,对Plus-F5270来说都可以。如果你手边配件比较丰富,完全可以自行搭配。不一定要跟我一样。
MicroPython的编译和烧录
Python是一款非常容易使用的脚本语言,它的语法简洁,功能强大,容易扩展。而MicroPython是Python的一个精简版本,可以运行在MCU这样性能有限的微控制器上。
这次2022年全国大学生物联网设计竞赛,安谋科技&灵动微的命题也推荐使用MicroPython来进行产品的开发。
首先,我们要访问灵动微苏勇老师的Gitee频道,下载相关源代码。
链接:https://gitee.com/suyong_yq/micropython-su
一般情况下在Linux平台编译MicroPython更方便,Ubuntu和Fedora都OK。
当然你也可以和我一样,用MSYS2+Windows 10 的方式编译。它可以在Windows系统中模拟Linux常用的命令行工具,只是要注意Python3的兼容性问题。
找到“/micropython-su-master/micropython-1.16/ports/mm32f5”这个目录。
执行:make CROSS=1
到这里,我们的MicroPython固件已经编译成功。
注:如果不想自己配编译环境,又有修改代码的需求,可以用这个Docker镜像来完成。
https://hub.docker.com/r/verd...
由于我电脑上有多个固件版本,为了提高辨识度,我把编译好的固件更名为fireware0724.hex。
接下来将编译好的固件烧录到开发板。
在Keil MDK新建一个项目,然后在该项目的Output选项卡中选择我们刚才编译好的文件。
回到Flash选项卡,点击Download。
烧录完成后,访问串口看我们的MicroPython能用没有。
至此,我们可以在这块开发板上用MicroPython来实现应用了。
如果你文件比较多,又不想经常烧录开发板,可以把自己的程序写到MicroSD卡,板子加电后会自动识别相关外部存储器。
默认挂载的目录是“/sd”。
需要注意的一点是,如果需要开机执行自己的Python代码,得把自己的主程序命名为boot.py或者main.py,这样系统才能识别成功。
这里举个例子:
在MicroSD的主分区内新建文件boot.py
写入一句代码:print ('hello world')
保存后将卡插入开发板。
重新加电,按Reset按钮。
从输出可以看到,boot.py正确执行了,当前程序所在的目录是/sd。
如果你手边没有MicroSD卡,也可以直接写入板载存储。都是OK的。
最后给大家推荐两个教学视频,包括了Plus-F5270、MindSDK、PWLink2-Lite、Keil MDK、MicroPython的内容。值得新玩家参考。
安谋科技&灵动 2022年全国大学生物联网设计竞赛技术指导
https://www.bilibili.com/vide...
灵动微电子 MicroPython在MM32F5上的应用
https://www.bilibili.com/vide...