今天同事给了板子的设计原理图,在做GPIO初始化时,看到他把LED灯的引脚连接到了调试口上!换句话说,我们调试接口直接被禁掉了!
我们使用的是STM32F407的芯片,他把PB3(JTAG_TOD)和PB4(JTAG_JRST)分配给了LED灯,而且还是推挽方式。这样的硬件电路设计也直接给引脚复用的通道关闭了。还好,其仅占用了JTAG的JTDI和JRST两根信号线,仍然保留了SWD接口。对于本项目应用而言,好在正常情况下使用SWD并不影响调试和下载。
读一下手册可知,STM32F407的GPIO引脚在复位后,部分引脚并不是默认的输入模式,其中就包括PB3和PB4引脚。

PB3和PB4两个引脚在复位后都是初始化为Jtag功能,方便上电是直接使用jtag。
如果按照我们的硬件设计实现的话,一旦我的应用程序正常运行,则jtag接口就再无连接的可能性了。算是断了自已的后路!
这里还是建议大家优先使用非调试接口的GPIO引脚。能连接调试器,真的会非常舒服。
我要赚赏金
