1 ST MP157 BOOT模式
2 固件烧写实验
拨码开关选择为 000 (USB 模式),将一根 USB Type-C数据线连接到底板 USB_OTG,再连接到 PC(电脑)的 USB 3.0 接口(一般是内部是蓝色的就是 USB 3.0 接口,不要连接到 USB 2.0 接口,否则烧写很慢!经过实测,如果烧写时间很长,说明您的 USB 3.0 接口可能不是真正的 USB 3.0 接口,实质是 USB 2.0)。- 另一根 USB Type-C数据线连接到底板 USB_TTL(
串口非必需连接,目的是观察一些打印信息)。 - 然后开发板上电。
烧写完成后,拨码到 010,eMMC 启动即可,注意:OTG是烧写线,烧写完毕后,拔出即可。另外整个固件烧写过程,无需启动虚拟机,在Windows上完成所有下载过程
3 ST MP157串行下载硬件电路图
3.1 OTG原理
3.2 OTG硬件电路
-
fusb302 的设备树没有使用电源管理,而是用 PZ6 引脚去控制电压,因此驱动需要定制化开发
4 JTAG硬件电路
5 STlink SWD模式连线方式接线
- SWD接口:
串行调试(SerialWireDebug),应该可以算是一种和JTAG不同的调试模式,最直接的体现在调试接口上,与JTAG的20个引脚相比,SWD只需要4(或者5)个引脚(VCC、SWDIO、SWCLK、GND(有些情况,也加上了RESET脚)) - SWD模式比JTAG在高速模式下面更加可靠。在大数据量的情况下面JTAG下载程序会失败,但是SWD发生的几率会小很多。基本使用JTAG仿真模式的情况下是可以直接使用SWD模式的,只要你的仿真器支持,所以推荐大家使用这个模式。当CPU的GPIO不够用的时候,可以使用SWD仿真,这种模式支持更少的引脚。
- 在硬件PCB的体积有限的时候推荐使用SWD模式,它需要的引脚少,当然需要的PCB空间就小,可以选择一个很小的2.54间距的5芯端子做仿真接口。
- Keil环境下Jlink调试器的JTAG模式和SWD模式
- Jlink的JTAG模式和SWD模式对比图:
5.1 SWD引脚说明
5.2 实验接线
5.3 MDK调试器DEBUG设置