STM32F4x1 烧录工具+相关资料解读
STM32F411简单应用STM32F411简单应用我以前写过关于这个芯片的一些简单介绍:
就是这样,其实是一个引脚引出来的最小系统https://github.com/WeActTC/MiniSTM32F4x1我们在这个链接里面下载网店给的一些资料
都是两个稳压器
这个手册呢,一百多页,细节不是很多
这个大几百页,细节繁复参考手册
microPython的引脚定义,板子完美支持mpyhttps://micropython.org/
引脚的定义是这样的,编程的时候对照的看
还有原理图,我们写程序就按照这个写
我买的板子,有这样的一些改进
这个固件,可以让你的板子成为一个下载器
不知道这个东西存在的意义,可以看这里http://wiki.geniekits.com/doku.php?id=usb_express:cmsis-dap外国靓仔的一篇文章附上
刷好以后,对应的接口
主要的三种开发方式
我这个没有焊接SPI的芯片
那烧录的时候就烧录这个固件
如果是4MB,8MB的就刷对应的固件就好听说你想装逼?自己编译一个固件?git clone https://github.com/micropython/micropython.gitcd micropythongit submodule update --initcd mpy-crossmake -j4cd ../ports/stm32/boards那运行这些命令,WLS或者Ubuntu下
复制这个文件夹下的文件到micropython/ports/stm32/boards然后运行下面这个cd YourPath/micropython/ports/stm32/make BOARD=WeAct_F411CE CROSS_COMPILE=/mnt/e/MCU/tools/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi- -j# 或者make BOARD=WeAct_F411CE -jCROSS_COMPILECROSS_COMPILE=/mnt/e/MCU/tools/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi- -j改成自己的编译器路径/* 板子版本为 V2.0 设置为 1 ,其他设置为 0 例如.V1.3,V2.1 V3.0 */#define VERSION_V20 (1)/* 使用内置flash改1 使用外置flash改0 */#define MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE (1)// Flash Size:// 4MB Flash 32Mbit// 8MB Flash 64Mbit// 16MB Flash 128Mbit#define MICROPY_HW_SPIFLASH_SIZE_BITS (32 * 1024 * 1024)编译的时候,可以做一些简单的配置
SPI的大小
板子的版本WeAct HID FW Bootloader C语言开发程序下载工具,本工作室根据官方HID bootloader制作的图形化操作下载程序软件,更方便WeAct Studio Download Tool 本工作室制作的下载工具,可以通过串口和USB下载程序或固件,可用于micropython固件的烧录或程序下载,非常好用,推荐!STM32_HID_Bootloader C语言开发官方HID bootloader,想了解更多请访问https://github.com/WeActTC/STM32_HID_Bootloader.gitSTM32CubeProgmmer STM32官方下载工具,下载请访问ST WebSiteWeActToolBox 网络调试助手和串口调试助手链接:https://pan.baidu.com/s/1Ugz7GwJ0j41GaBrUv0c0Og 提取码:lhla我下载工具就推荐官方的,官方的网不好进,所以工具在网盘了。
就这个
第二个
那么你应该是有一个ST-Link V2的
点击连接方式,然后连接
接着就会读出来很多数据,我们接下来烧录一个mpy的固件
点击这里
选固件
内置空间
成功的日志
忘了给大家看连接成功的样子了
现在是mpy的固件了,可以使用Python开发了
串口连接
这不就成功了~import pyb, micropythonmicropython.alloc_emergency_exception_buf(100)class Foo(object): def __init__(self, timer, led): self.led = led timer.callback(self.cb) def cb(self, tim): self.led.toggle()blue = Foo(pyb.Timer(1, freq=2), pyb.LED(1)) # LED(1) -> PC13
带一点补全,不是很多
虚拟的挂了一个盘
引脚编号为 X1-X12、X17-X22、Y1-Y12 或其 MCU 名称引脚IO模式有:pyb.Pin.IN、pyb.Pin.OUT_PP、pyb.Pin.OUT_OD引脚拉取模式有:pyb.Pin.PULL_NONE、pyb.Pin.PULL_UP、pyb.Pin.PULL_DOWN附加串行总线对象:pyb.I2C(n)、pyb.SPI(n)、pyb.UART(n)https://www.jb51.net/books/733375.html这里插一个书,STM32不完全手册,是学习必备的资料。
别说和你的板子不一样都是互相兼容的
我截图一下,可以看到写的很清晰了总的来说,这个板子可以折腾的空间还有很大,至于玩成什么样子,全看自己能力了。因为每天有很多人在问问题,所以就建立了一个交流群有需要的可以加进来一起学习