He diseñado una placa STM32 simple. A continuación se muestran las imágenes de diseño esquemático y de pcb:
Diseño de PCB con VDD resaltado:
Diseño de PCB con GND resaltado:
Solo las partes de este diseño que son relevantes para mi pregunta se muestran en las imágenes de arriba.
Mi problema es: intenté usar el ST-Link incorporado de una placa de descubrimiento STM32 para programar esta placa personalizada, pero aún no tuve éxito. La aplicación ST-Link Utility en PC puede reconocer al programador, pero no puede detectar el MCU objetivo. Los mensajes de error que recibí fueron: "Destino no conectado" y "Error de comunicación USB ST-Link".
Aquí hay algunos datos relacionados sobre mi problema:
- La placa de descubrimiento STM32 funciona bien: puedo usar su ST-Link incorporado para programar su MCU STM32 integrada. Esto esta bien.
- La MCU STM32 se ha soldado con la orientación correcta en la placa personalizada. Lo revisé dos veces.
- He comprobado las trazas de VDD y SWD. Están bien conectados (sin problemas de soldadura). Pin Boot0 está a 0V. El pin NRST está a 3.3V.
- El cable SWD es corto, solo 7-8 cm de longitud.
- El STM32 en mi placa personalizada es del mismo tipo que el de la placa Discovery.
He seguido las instrucciones en el manual de la placa de descubrimiento STM32 sobre cómo usar la placa de descubrimiento para programar una MCU STM32 externa. Para ser más específico, eliminé los 2 puentes CN3, y luego conecté las placas como en esta tabla:
También eliminé el puente de soldadura SB11 en el Discovery Board (para que el pin NRST pueda funcionar correctamente).
- He probado la aplicación ST-Link Utility y Keil. Los mensajes de error que recibí son los mismos.
- Al principio no conecté el pin 6 en la tabla anterior (SWO) porque, que yo sepa, no es necesario. Sin embargo, después de eso también lo conecté, pero las cosas aún no funcionaron.
- También agregué una tapa de 100nF del pin NRST a GND, y luego una resistencia pull-up de 100k de este pin a VDD. El problema aún persiste.
- También he tratado de usar el modo "conectar en restablecimiento" del programa de utilidad ST-Link. Sin suerte tampoco.
Sospecho que puede haber algo mal con el diseño, pero no estoy seguro. Por favor ayudame a resolver el problema.
Muchas gracias :)