No se puede programar una placa STM32 personalizada

8

He diseñado una simple placa STM32. A continuación se muestran las imágenes esquemáticas y de diseño de PCB:

Esquema:

DiseñodePCB:

DiseñodePCBconVDDresaltado:

DiseñodePCBconGNDresaltado:

Enlasimágenesdearribasemuestransololaspartesdeestediseñoquesonrelevantesparamipregunta.

Miproblemaes:tratédeusarelST-LinkincorporadodeunaplacadedescubrimientoSTM32paraprogramarestaplacapersonalizada,peroaúnnolohelogrado.LaaplicaciónST-LinkUtilityenlaPCpuedereconoceralprogramador,peronopuededetectarlaMCUdedestino.Losmensajesdeerrorquerecibífueron:"Destino no conectado" y "Error de comunicación USB de ST-Link".

Aquí hay algunos datos relacionados con mi problema:

  • El STM32 Discovery Board funciona bien: puedo usar su ST-Link incorporado para programarlo, está integrado en el MCU STM32. Esto está bien.
  • El MCU STM32 se ha soldado con la orientación correcta en la placa personalizada. Revisé esto dos veces.
  • He comprobado las trazas de VDD y SWD. Están bien conectados (no hay problema de soldadura). Pin Boot0 está en 0V. Pin NRST está a 3.3V.
  • El cable SWD es corto, de solo 7-8 cm de longitud.
  • El STM32 en mi placa personalizada es del mismo tipo que el de la placa de descubrimiento.
  • 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íficos, quité los 2 puentes CN3 y luego conecté las tarjetas como en esta tabla:

  • TambiéneliminéelpuentedesoldaduraSB11enelDiscoveryBoard(paraqueelpinNRSTpuedafuncionarcorrectamente).

  • HeprobadolaaplicaciónST-LinkUtilityyKeil.Losmensajesdeerrorquerecibísonlosmismos.
  • Alprincipionoconectéelpin6enlatablaanterior(SWO)porque,segúnmiconocimiento,noesnecesario.Sinembargo,despuésdeesotambiénloconecté,perolascosasaúnnofuncionaron.
  • Tambiénagreguéunatapade100nFdesdeelpinNRSTaGND,yluegounaresistenciadepull-upde100kdesdeestepinaVDD.Elproblemasiguesiendo.
  • Tambiénintentéusarelmodo"conectar bajo reinicio" del programa de utilidad ST-Link. Tampoco hay suerte.

Sospecho que podría haber algún problema con el diseño, pero no estoy seguro. Por favor, ayúdame a resolver el problema.

Muchas gracias :)

    
pregunta user3286500

1 respuesta

6

Gracias por sus excelentes comentarios. Debido a ellos, confío en que mi diseño está libre de errores. Es por eso que centré mi atención en buscar errores en el hardware. ¡Y encontré el error! Este es un error de soldadura.

Encontré este error después de seguir estas instrucciones: "Use un multímetro y pruebe todas las conexiones para detectar cortocircuitos o falta de conexión. Recuerde tocar las clavijas / almohadillas / lo que sea realmente suave, porque si presiona la sonda con fuerza, puede "arreglar" la conexión temporalmente (por ejemplo, si presiona el pin de IC en la PCB y la prueba está bien, pero tan pronto como suelta el pin, se dobla nuevamente). La publicación original es aquí .

    
respondido por el user3286500

Lea otras preguntas en las etiquetas