打印
[STM32F4]

在NUCLEO-F412ZG上移植MicroPython

[复制链接]
1474|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 hbzjt2011 于 2016-11-8 21:43 编辑

    MicroPython支持多种开发板,除了官方标准的基于STM32F405RGT6,还支持NUCLEO_F411RE、STM32F4DISC、ESP8266、CC3200等开发板。最近刚拿到申请的NUCLEO-F412ZG,便进行了移植和运行测试。
移植步骤:
【1】准备一台装有Linux系统虚拟机的笔记本,因为在Linux系统下编译MicroPython源码要比Windows下方便的多,不用安装arm-none-eabi编译工具,而且速度也要快,我这里使用的Linux系统为Ubuntu 14.04LTS;
【2】在MicroPython官网下载MicroPython源码;
【3】下载STM32 ST-LINK Utility工具用来给开发板下载编译好的固件; STSW_LINK004_V3.8.0.zip (18.14 MB)
【4】在源码的micropython-master\micropython-master\stmhal\boards目录下新建NUCLEO_F412ZG文件夹,并将NUCLEO_F411RE文件夹下的内容复制到该文件夹下;


【5】修改mpconfigboard.h配置文件中的开发板名称为NUCLEO-F412ZG和LED引脚为412板子上PB0、PB7、PB14,同时可根据需要配置时钟,I2C,SPI,串口,按键等,保存;


【6】接下来进入stmhal目录下,修改Makefile文件中的开发板名称为NUCLEO_F412ZG,然后在stmhal目录下输入make BOARDS=NUCLEO_F412ZG来编译源码;


编译完成后会生成build-NUCLEO_F412ZG文件夹,同时在 该文件夹下生成firmware.dfu文件和firmware.hex文件;



【7】接下来使用ST-LINK Utility工具下载固件到开发板;

【8】下载完成后,保留ST-Link上的USB接线,同时使用另一根MicroUSB线连接开发板的CN13,此时电脑上会出现两个磁盘文件;


同时可以使用设备管理器查看设备端口号,至此移植MicroPython成功。

如果出现Pyboard的驱动安装不成功的情况,右键属性,更新驱动程序选择PYBFlash磁盘更新即可。

【9】使用PuTTY等串口调试软件连接开发板,波特率设置为115200,连接成功后就可以进行MicroPython的程序测试了。


测试控制LED灯程序及效果。



【话外篇】最后晒几张板子的高清靓照:




板载芯片

888118226893691140.jpg (364.53 KB )

888118226893691140.jpg

Screenshot_8.png (110.25 KB )

Screenshot_8.png
评分
参与人数 2威望 +6 收起 理由
secretmimi + 3 赞一个!
shaoziyang + 3 很给力!
沙发
wahahaheihei| | 2016-11-8 22:05 | 只看该作者
不错,跟那个ESP8266跑Node MCU有一拼。

使用特权

评论回复
板凳
paderboy| | 2016-11-9 08:50 | 只看该作者
不错,有板子可以试试看。。。

使用特权

评论回复
地板
shaoziyang| | 2016-11-9 10:00 | 只看该作者
这样是使用STM32F411的内核进行编译的,不能充分利用STM32F412ZGT6的Flash和SRAM。

官方源码的STM HAL还是很旧的版本,不支持新的芯片,不知道什么时候会更新。在更新前,这种方法也很不错了。

使用特权

评论回复
5
dirtwillfly| | 2016-11-9 16:05 | 只看该作者

使用特权

评论回复
6
jinyi7016| | 2016-12-14 15:18 | 只看该作者
我只看到硬盘要爆了~~

使用特权

评论回复
7
Brand2| | 2016-12-14 21:19 | 只看该作者
楼主用Linux系统?

使用特权

评论回复
8
hbzjt2011|  楼主 | 2016-12-14 23:37 | 只看该作者
Brand2 发表于 2016-12-14 21:19
楼主用Linux系统?

恩,在linux虚拟机里编译调试的

使用特权

评论回复
9
皈依| | 2016-12-15 22:11 | 只看该作者
这个厉害!赞一个

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:欢迎参与LabVIEW版块的讨论学习! 点我一键即达

157

主题

2338

帖子

41

粉丝