Micropython移植到STM32H750
tb上买了块stm32h750vbt6的核心板,想折腾一下,正好最近在学python,于是尝试在这块板子上移植一下micropython。然而官方貌似还没支持H750系列,那就自己整。话不多说,开始干活。
首先板子长这样
其实用什么板子无所谓,重要的是移植的过程。
开发环境:win10+Ubuntu20虚拟机,当然其他版本也ok,同时会用到STM32CubeMX工具,请准备好。
第一步 下载源码
从GitHub上下载源码
git clone https://github.com/micropython/micropython
这个过程可能需要几分钟时间
下载完成后看一下micropython目录下的内容
ls micropython/

先不要急着编译,还要把库文件下载下来。
cd micropython
git submodule update --init lib
简要介绍一下三个重要的目录,其他的请自行查看
mpy-cross/
相当于一个交叉编译器,把.py文件编译成.mpy文件,是个官方的工具
,编译整个项目前请先编译mpy-cross
lib/
该目录下存放各种库文件,比如后面要用到的STM32HAL库
ports/
硬件接口,与平台相关,支持stm32,esp系列等,移植时重点关注该目录
第二步 编译
先尝试编译一下,进入mpy-cross目录,直接make
cd mpy-cross/
make
如果中间缺少工具,那缺什么就装什么,后面也是一样。
这一步完了后,进入micropython/ports/stm32目录
直接make
make -j8多线程编译加快速度
cd /ports/stm32
make -j8
如果没安装交叉编译器会报这个错
/bin/sh: 1: arm-none-eabi-gcc: not found
安装就好了
sudo apt install gcc-arm-none-eabi
make完成以后会多出一个build-PYBV10目录,里边有编译出的固件,适用的板卡为官方PYB系列,但是这不是我们想要的。

然后清除
make clean
第三步 移植
先查看一下支持的stm32板卡有哪些

注意到有NUCLEO_H743ZI板卡支持,接下来以这个目录为模板进行移植。
将NUCLEO_H743ZI目录复制一份,命名随意,比如MYH750
先进入micropython/ports/stm32/board目录再复制
cp NUCLEO_H743ZI/ MYH750 -r
然后要修改mpconfigboard.h 以及 mpconfigboard.mk这两个文件
修改后的内容如下
mpconfigboard.h
#define MICROPY_HW_BOARD_NAME "MYH750"
#define MICROPY_HW_MCU_NAME "STM32H750"
#define MICROPY_HW_ENABLE_RNG (1)
#define MICROPY_HW_ENABLE_RTC (1)
#define MICROPY_HW_ENABLE_USB (1)
#def
Micropython移植到STM32H750

本文详细记录了将Micropython移植到STM32H750VBT6核心板的过程,包括开发环境搭建、源码下载、编译配置及移植步骤。作者针对不支持的H750系列进行了自定义移植,分享了关键配置文件修改技巧,最终实现了固件编译。
最低0.47元/天 解锁文章

1076

被折叠的 条评论
为什么被折叠?



