简化STM32开发端口设计
01 STM32单片机设计
一、前言
在 STM32单片机设计中, 之前习惯在 BOOT0端口加上一个下拉电阻, RESET端口增加一个上拉电阻。 那么问题来了, 如果将 BOOT0, RST 都悬空, 或者分别直接接地,接VCC, 是否会影响单片机程序开发呢? 这个问题很关键, 因为在手工制版的时候, 可以避免很大的麻烦。 另外, 如果RST管脚在 SWD 下载的过程中不需要, 也可以简化调试端口的设计。 下面通过手边的测试电路, 回答上面的问题。
二、测试结果
使用这个前两天制作的 STM32F373 单片机实验电路板进行测试, 通过六芯的探针夹子将JLINK 连接到电路板, 其中包括有 SWD的两条线, RST以及两条串口线。 下面使用 JFLASH 测试对它的编程。
不知道为什么, 昨天还好好地测试电路板, 今天使用 JLINK 无法下载程序了。 只好重新更换一块测试电路板。 现在可以正常下载程序了。 下面使用 0欧姆电阻替换掉原来的 10kΩ 的 BOOT0电阻, 测试是否能够进行正常程序下载。 经过测试, 一切OK。 下面将 BOOT0 电阻去掉, BOOT0 管脚悬空, 经过测量, 这个管脚本身内部接地了。 通过测试, 下载程序正常。 这说明后面进行电路设计中, BOOT0 上的电阻 的确可以省略了。
下面将 RST 电阻去掉, 使得 RESET管脚悬空, 靠芯片内部弱的上拉电阻置高电平。 测试下载功能, 一切正常。 下面将 RESET引线从 6芯调试端口去掉, 重新进行测试。 下载运行功能正常。
※ 总 结 ※
本文测试了在STM32单片机开发过程中, 如果使用SWD进行程序更新的情况下。 可以直接将 BOOT0 直接接地, 或者悬空。 RESET管脚也可以省略。 这样就可以大大简化电路板的设计制作了。