MCU STM32L: el pin SWD en la placa no coincide con el pinout del procesador

7

Estaba realizando mi proyecto de pirateo de hardware en un dispositivo de monitoreo de la calidad del aire que utiliza el procesador STM32L476 .

MisúnicasexperienciasconpirateríadehardwaresoncámarasIPoenrutadoreswificonconsolasUARTdisponibles.Pero,despuésdealgunaspruebaseintentos,nopudeencontrarunamaneradeinteractuarconmicajadeaire.
(LospinesUSARTsimplementeimprimenunUUIDenelarranqueyluegonopasanadamás.)

AsíquecreoquemipróximamejorapuestasonesospinesSWD.LuegoprocedoaobtenerlahojadedatosdeSTM32L476yencontréesteproblema.

Segúnlahojadedatos,SWDIOySWCLKcorrespondenapinPA13yPA14yningúnotropintienefuncionesalternativasparatrabajarcomoSWDIOoSWCLK.


Peromirandoconcuidado,PA13yPA14nisiquieraestánconectadosaesospinesmarcadoscomoSWD1abordo.
SWD1yUSARTsonlosúnicosquetienenpinouts,porloquecreoquetienenunaprobabilidadmuyaltadeserutilizadaporlosdesarrolladorescomopuertosdedepuración.Perohastadondesé,loschipsSTM32solonecesitandospinesparadepurarconSWD,¡yhay8pinesabordo!Estecircuitonotienesentidoparamí:((

Soymuynuevoenhardware,asíquenoestoyfamiliarizadoconloquelosdesarrolladoresdehardwaresuelenhacer.¿EscomúnquealgunospinesabordosemarquencomoAperorealmentefuncionencomoB?¿Osolocometíalgunoserroresmuyestúpidosalhacermiinvestigación?


Editar:

Luegodeleertodosloscomentariosyrespuestas,hicealgunaspruebasyenumeréalgunascaracterísticasdeesospines:
¿Supongo que estoy listo para ir al siguiente paso? Hay mucho que aprender mientras espero a que llegue mi ST link V2. Muchas gracias a todos los que me brindaron la mejor ayuda y ayuda kind

    
pregunta Jimmy.D

2 respuestas

11

Usa un multímetro. Probablemente encontrará que esos pines están conectados a los pines SWD. Tenga en cuenta que PA14 claramente va a una vía, que luego se ejecutará a lo largo del lado inferior de la PCB.

Lo más probable es que la PA13 se encuentre debajo de la micro y en una vía, y también llegue al encabezado SWD a través de la capa inferior.

El hecho de que mire algo desde arriba y no pueda ver una conexión, no significa que no esté allí. Mira a PA14. ¿Puedes ver una forma lógica de ejecutar una pista a los pines del encabezado SWD en la capa superior? No, tendrías que cruzar muchos rastros que simplemente no puedes hacer. Esta es la razón por la que se utilizan las vías, por lo que la pista puede continuar en el otro lado de la PCB.

Nunca debe mirar un PCB y suponer que no puede ver un rastro a lo largo de la parte superior de la placa, que no está conectado. Consigue un multímetro y comprueba la continuidad. Sospecho que encontrarás que hay una conexión allí.

En realidad, hay 6 pines SWD utilizados para la programación (si programa a través de SWD) que son V +, GND, RST, SWIO, SWCLK y SWO. Si esta placa se programó a través de SWD, hay muchos cables planos prefabricados que se utilizan para la programación, como este:

Y el programador tendrá un pinout prefabricado que el diseñador debe seguir. Esa es la explicación probable para los pines adicionales en el encabezado. Por lo general, depende del programador que se utilice para determinar qué encabezado se usa en el diseño.

    
respondido por el MCG
4

Tu investigación es correcta. SWD no se puede volver a asignar, pero los pines se pueden usar de otra manera.

El conector no es estándar. Normalmente, las personas usan el conector SWD de 10 pines (a menudo con un paso de 1,27 mm) para ARM JTAG / SWD.

Para comunicarte con el chip necesitas 4 pines.
Target gnd y vcc, y SWDIO, SWDCLK. Los programadores usan Vcc de destino para sus desplazadores de nivel. Dado que muchos objetivos ARM pueden funcionar con un voltaje de 1.8 a 5 voltios.

El pin de restablecimiento no es necesario, a menos que los pines se utilicen de otro modo en el código de usuario. Como en el caso de estar desconectado internamente del periférico de depuración.

Los programadores populares son el ST Link para los chips STM32 y STM8. O Segger para varias marcas.

    
respondido por el Jeroen3

Lea otras preguntas en las etiquetas