Gravando o Bootloader do Arduino usando DAP Link
Este é o tutorial da Wiki sobre como usar o DAP link (OpenOCD) para gravar o Bootloader do Arduino em placas Arduino. Se o bootloader da sua placa Arduino for interrompido, você pode usar este guia para regravar o bootloader.
Preparações
-
Antes de mais nada, você deve seguir primeiro o guia How to use Arduino Borads as DAPLink Device para transformar uma das suas placas SAMD em um dispositivo DAP-Link. Depois que você tiver configurado e feito o upload do programa daplink Arduino ino, pode voltar para este tutorial da wiki.
-
Conecte o hardware de destino ao dispositivo DAP Link (placa SAMD) de acordo com as configurações de pinos.
- SWO > SWO
- CLK > CLK
- GND > GND
Isso poderá parecer algo assim, onde a Seeeduino XIAO é o dispositivo DAP Link e a Seeeduino Cortex M0+ é o alvo.

Primeiros Passos
Neste exemplo, a Seeeduino XIAO atua como um dispositivo DAPLink e é usada para gravar o Bootloader do Arduino para a Seeeduino Lotus Cortex M0+.
- No Terminal, navegue até a localização raiz do caminho da biblioteca da placa Arduino e encontre o caminho do OpenOCD dentro desse caminho. Deve ser algo como:
cd ~/Library/Arduino15/packages/arduino/tools/openocd/
cd 0.10.0-arduino7/bin # Version might vary here
- Execute o OpenOCD com scripts específicos:
Nota: Talvez você precise mudar ansonhe para o seu nome de usuário ou ajustar para o caminho correto.
./openocd -s ../share/openocd/scripts/ -f /Users/ansonhe/Library/Arduino15/packages/Seeeduino/hardware/samd/1.7.9/variants/arduino_zero/openocd_scripts/arduino_zero.cfg
Se tudo correr bem, você deverá ver algo como o seguinte:

Agora o servidor está ativo e em execução!
- Deixe o terminal anterior e abra um novo terminal. Também navegue até a localização raiz do caminho das placas Arduino. Em seguida, navegue até o caminho do arm-gcc:
cd ~/Library/Arduino15/packages/Seeeduino/tools/arm-none-eabi-gcc/7-2017q4/bin
- Sob esse caminho, você pode executar o seguinte:
./arm-none-eabi-gdb
- Já dentro do gdb, conecte-se ao alvo usando:
target remote localhost:3333

- Carregue o Bootloader do Arduino a partir do caminho raiz da biblioteca da placa Arduino:
Você também pode encontrar o bootloader para as placas Seeed SAMD aqui: https://github.com/Seeed-Studio/ArduinoCore-samd/tree/master/bootloaders
Nota: Talvez você precise mudar ansonhe para o seu nome de usuário ou ajustar para o caminho correto.
file /Users/ansonhe/Library/Arduino15/packages/Seeeduino/hardware/samd/1.7.9/bootloaders/zero/samd21_sam_ba.elf

- Grave o bootloader no alvo:
load

- Redefina o dispositivo de destino pressionando os botões de reset e você deverá ver que a porta COM apareceu. Agora o Bootloader do Arduino foi gravado na Seeeduino Lotus Cortex M0+ usando a Seeeduino XIAO como dispositivo DAPLink!

Suporte Técnico e Discussão de Produtos
Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.