
适用问题:
A、使用【RS232转TTL模块】下载受阻
B、串口能通信不能下载
解决方案:
硬件配置BOOT使得STM32不从Flash启动(拉高BOOT0)
实验平台:
STM32F10x最小系统
RS232转TTL模块(CH340G)
WIN10-在线编程器
正文
下载程序到芯片FLASH大概率会用到【RS232转TTL】(也就是通常说的USB转串口)模块部分模块会注明要求下载程序时“单片机冷启动”,冷启动是个啥?
冷启动和热启动都是复位呐,冷热的区分在于内部RAM是否被重新初始化;冷和热分别对应着上电复位和按键复位。伏稿也就是说,这两种启动方式按照单片机掉电与否区分的。
说到这儿至少能区别两种启动方式了,但有的最小系统上没有电源开关,或者直接使用UART1的VCC接口作电源,又该怎么办呢?
答案十分简单:直接把BOOT0拉高;也就是把BOOT用跳帽接到3V3就可以了。
#备注:
考虑到初次使用这类模块下载的小朋友,补充几点:
1、杜邦线接法:rx和tx分别是接受口和发送口,所以接法是接口rx和tx相连,而不是直觉上的rx接rx,tx接tx;
2、下载完成后,可能由于开发环境或者下载助手的配置单片机自行启动运行程序敬厅局;但还是要把BOOT0拉低,否则手动复位后单片机就不是从烧录到FLASH的程序启动了,以至于引起部分亮让小朋友的疑惑;
烧写STM32,有三个方法:1. 用 J-LINK自带的工具+J-LINK烧写
装完J-LINK 的驱动后,顺带也会装昌拆上了J-LINK 的烧轿薯写工具:
这个工具其实用起来还是很简单的,先打开软件,然后闭迅者要New Project:,再就Open一个HEX文件.
之后就是设置一下J-LINK:
这里选择CPU,工程师版的是103VC,学生版是V8.
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)