分类 stm32 下的文章

STM32F的NRST是异步复位脚。当NRST输入低电平的时候(NRST内置上拉),MCU处于复位状态,重设所有的内部寄存器,及片内几十KB的SRAM。 当NRST从低电平变高时,PC指针从0开始。 但是复位的时候不会将STM32F片内RTC的寄存器以及后备存储器重置,因为它们是用电池通过专门的VBAT脚供电。

参考资料:
https://www.cnblogs.com/yeshenmeng/p/10481406.html
https://www.amobbs.com/thread-5556341-1-1.html?_dsign=f2e95db1

使用到的 stlink 命令行工具
https://github.com/stlink-org/stlink

st-flash 烧录,读写芯片,擦除之类
st-info 主要获取芯片相关信息
st-util gdb调试的

在mac下推荐的安装方式如下:
brew install stlink

擦除芯片
./st-flash erase
2020-08-21T23:56:08 INFO common.c: F04x: 6 KiB SRAM, 16 KiB flash in at least 1 KiB pages.
Mass erasing

烧录
./st-flash write xxx.bin 0x8000000
file xxx.bin md5 checksum: f44aa7045a596c4693a908fc68a1972, stlink checksum: 0x0001ac10
2020-08-21T23:55:11 INFO common.c: Attempting to write 1220 (0x4c4) bytes to stm32 address: 134217728 (0x8000000)
2020-08-21T23:55:11 INFO common.c: Flash page at addr: 0x08000000 erased
2020-08-21T23:55:11 INFO common.c: Flash page at addr: 0x08000400 erased
2020-08-21T23:55:11 INFO common.c: Finished erasing 2 pages of 1024 (0x400) bytes
2020-08-21T23:55:11 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL core id
2020-08-21T23:55:11 INFO flash_loader.c: Successfully loaded flash loader in sram
2/2 pages written
2020-08-21T23:55:11 INFO common.c: Starting verification of write complete
2020-08-21T23:55:11 INFO common.c: Flash written and verified! jolly good!