首先要下载并安装GNU Tools for ARM Embedded Processors。 https://launchpad.net/gcc-arm-embedded
展开MicroPython源码,打开 stmhal\boards\ 目录
新建一个CANNON目录,将NUCLEO_F401RE下的文件复制到CANNON目录下
如果GNU Tools for ARM已经添加到系统路径,就可以跳到步骤8,直接编译
打开 stmhal 下的 makefile 文件,修改 CROSS_COMPILE = arm-none-eabi- 这一行,在 arm-none-eabi- 前添加编译器的实际路径,注意路径需要使用右斜杠
在 stmhal 目录下,输入 make BOARD=CANNON,就可以编译了。不过这时编译出的代码是不能运行的,因为两个板子的参数不同。
打开 stmhal\boards\CANNON目录,先修改文件stm32f4xx_hal_conf.h找到#define HSI_VALUE ((uint32_t)8000000)将数字8000000改为16000000,因为小钢炮使用了16M的外部时钟
打开文件 mpconfigboard.h修改LED的GPIO为PB3
修改SW的GPIO为PC13
如果还有时间和精力,可以适当修改其他GPIO
找到#define MICROPY_HW_CLK_PLLM (8)将数字8改为16
修改#define MICROPY_HW_HAS_SWITCH (1)将1改为0,因为小钢炮上没有用户按键
修改#define MICROPY_HW_LED1 (pin_A5) // Green LD2 LED o