Fazendo o ST-Link V2.1 a partir do chinês ST-Link V2

Olá Habr!

Neste artigo, mostrarei como modificar o ST-Link V2 para o ST-Link V2.1.

Talvez para alguns não seja novidade, mas não encontrei nenhuma informação especial sobre esse assunto na internet.

Quem se importa - peço um gato.

Prefácio


Aconteceu que eu estou cansado dos fios extras.

Depois de pensar um pouco, lembrei que nas placas Nucleo e Discovery - o ST-Link combina SWD e VCP (Virtual Com Port).

A primeira coisa que veio à mente foi comprar o mais barato dessas placas, tentar despejar o firmware ignorando a proteção e preenchê-lo com o programador da China ou criar uma nova placa.
No entanto, eles me pediram um link para o GitHub com um gerenciador de inicialização já estendido; no final, acabou o que aconteceu.

Começando a trabalhar


A modificação só pode ser feita na versão do software para Windows; a versão do software de plataforma cruzada se recusa a atualizar o dispositivo!

Existem várias opções de modificação, e algumas delas não podem ser feitas se o chip não for adequado (não há memória suficiente).

Por exemplo, a modificação do STM32 + MSD + VCP só pode ser feita se o chip for STM32F1xxCBxx, no entanto, ele possui um análogo do STM32 + Audio, que fornecerá o STM32 + VCP (em princípio, é o que precisamos).

Você precisará de:

- ferro de solda;
- Multímetro com provérbio;
- PC com Windows (pode passar pelo Wine, ainda não experimentou);
- Arquivo com o software e bootloader necessário (PASS: QWK2tn + fM.EdjX6z).
- clone chinês ST-Link V2;
- Adaptador USB-UART ou um segundo ST-Link.

Nós revelamos ...


Placas e chips são todos diferentes




Firmware


Existem duas maneiras - USB-UART (um pouco mais complicado) ou o segundo ST-Link.

USB UART


1) Pelo mostrador, encontramos o resistor conectado ao BOOT0 .
Fazemos um jumper do lado desse resistor, que está conectado ao BOOT0 a 3.3v .

O PA9 (TX) pode ser conectado ao LED ou ao resistor próximo a ele, como chamamos.

Solda UART para PA9 ( TX ) e PA10 ( RX ).

Eu fiz assim:



Também soldamos alimentos.

Piscando o carregador de inicialização Protected-2-1-Bootloader.bin usando o demonstrador do carregador STM32 Flash .

Depois de piscar, solde o jumper, PA9 e PA10 (deixe PA10 se quisermos gerar SWO ).

ST-Link

Existem 4 pinos nas placas, em alguns casos eles já estão marcados; caso contrário, são chamados em relação ao PA13 ( SWDIO ) e PA14 ( SWCLK ), soldados pelo segundo ST-Link .



Também soldamos alimentos.

Instalamos o STM32 ST-LINK Utility V4.3 a partir do arquivo morto, removemos a proteção contra gravação e atualizamos o carregador de inicialização Protected-2-1-Bootloader.bin.

Para remover a proteção no programa STM32 ST-LINK Utility , clique em Destino> Bytes de opção , alterne Proteção contra leitura para Desativado e clique em Aplicar .

Atualização para o ST-Link V2.1


Após o firmware, conectamos o ST-Link costurado (já quase V2.1) ao PC.

No programa STM32 ST-LINK Utility V4.3, clique em ST-LINK> Atualização de firmware .

Clique em Dispositivo Ligue - obter uma lista de possíveis modificações:



Selecionamos a modificação necessária, no meu caso STM32 + MSD + VCP , clique em Sim >>>> .

Estamos aguardando a atualização ser concluída ...



Lucro!

A parte final


Como o SWIM e o RST não funcionam após essa modificação, eu os corto.

Também cortei os 5V e 3.3V duplicados.

Acontece que 4 pinos livres.

Neles, soldo a fiação do chip:

PA10 -> SWO
PB0 -> NRST
PA3 -> RX
PA2 -> TX

Saída tudo para o conector principal, para os pinos livres restantes.

O resultado foi uma pinagem:



Meu dispositivo após modificação




Rabisquei as marcas no estojo com um bisturi:



Não se esqueça de lavar a placa após a solda!

Como resultado, em um PC, o dispositivo é definido da seguinte maneira:





Não tenho idéia de qual é o volume de uma unidade flash virtual (nesse caso, o F103C8 foi conectado ao ST-Link V2.1).

Se você enviar um arquivo de firmware para ele, o programador piscará o chip sem programas.

Verificando VCP:



Obrigado pela atenção!
Ao copiar, deixe um link para a fonte.

Em caso de dúvidas, entre em contato nos comentários, como eu puder - vou ajudar.

Source: https://habr.com/ru/post/pt442290/


All Articles