probe-rs
e cargo-embed
probe-rs é um conjunto de ferramentas útil para depuração embarcada, como o OpenOCD, mas melhor integrado.
- SWD (Serial Wire Debug) e JTAG via CMSIS-DAP, sondas ST-Link e J-Link
- GDB stub e servidor Microsoft DAP (Debug Adapter Protocol)
- Integração com o Cargo
cargo-embed
é um subcomando do cargo para compilar e gravar binários, registrar a saída do RTT (Real Time Transfers) e conectar o GDB. Ele é configurado por um arquivo Embed.toml
no diretório do seu projeto.
- CMSIS-DAP é um protocolo padrão da Arm sobre USB para um depurador em circuito acessar a porta de acesso de depuração CoreSight de vários processadores Arm Cortex. É o que o depurador embarcado no BBC micro:bit usa.
- ST-Link é uma gama de depuradores em circuito da ST Microelectronics, J-Link é uma gama da SEGGER.
- A porta de acesso de depuração geralmente é uma interface JTAG de 5 pinos ou depuração Serial Wire de 2 pinos.
- probe-rs é uma biblioteca que você pode integrar em suas próprias ferramentas se quiser.
- O Microsoft Debug Adapter Protocol permite que o VSCode e outras IDEs depurem o código executado em qualquer microcontrolador suportado.
- cargo-embed é um binário construído usando a biblioteca probe-rs.
- RTT (Real Time Transfers) é um mecanismo para transferir dados entre o host de depuração e o destino através de um número de ringbuffers.