quarta-feira, 10 de outubro de 2018

GRAVANDO APLICAÇÃO NO U-BLOX NINA B112 COM SEGGER JTAG OU DAPLink JTAG OU ST-LINK V2

O objetivo deste BLOG é demonstrar como se pode gravar a aplicação do usuário no módulo U-BLOX NINA B112. Foi utilizado o EVK-NINA-B1 e um gravador DAPLink para testes. Basicamente existem dois meios, via SEGGER JTAG e DAPLink JTAG.

1) SEGGER JTAG - EVK-NINA-B1

Quando você adquire o EVK-NINA-B1, é necessário que você baixe os softwares para o SEGGER JTAG no site da www.segger.com, ou seja, no link

https://www.segger.com/jlink-software.html

EVK-NINA-B1 tem um microcontrolador MICROCHIP SAM que está embarcado com o um software para transformá-lo em um SEGGER JTAG, ou seja, você tem um gravador/debugger via SEGGER

O microcontrolador MICROCHIP SAM usa SWD mode para gravação e debug, Deixe conectados os jumpers SWDCLK e SWDIO da EVK-NINA-B1.

Ferramentas como SEGGER STUDIO e PLATFORMIO procuram o SEGGER JTAG em sua máquina para efetuar a gravação da aplicação.

Por fora, você pode usar J-LITE ou NRFGO STUDIO, os quais podem ser utilizados para gravar a sua aplicação.



Você pode usar o EVK-NINA-B1 para gravar outros módulos NINA B112, desconecte os jumpers SWDCLK e SWDDIO e os conecte nos pinos do SWDCLK e SWDDIO do módulo a ser gravado. Não esqueça de ligar os GND do módulo NINA B112 no GND do EVK-NINA-B1, bem como alimentar o módulo NINA B112 com 3.3V.


 

Pinos do NINA B112



2) SEGGER JTAG - SEGGER JLINK (20 pinos)

Você pode usar o gravador SEGGER JLINK para gravar outros módulos NINA B112, conecte nos pinos do SWDCLK (pino 7) e SWDDIO (pino 9) do SEGGER JLINK nos pinos  SWDCLK e SWDDIO do módulo a ser gravado. Não esquecer de ligar os GND do módulo NINA B112 no GND do SEGGER JTAG, bem como alimentar o NINA B112 com 3.3V.



3) DAPLink JTAG - Mbed DAPLink

O Arm Mbed DAPLink é um projeto de software de código aberto que permite programar e depurar aplicativos em execução nos processadores Arm Cortex. Comumente chamado de firmware de interface, o DAPLink é executado em um MCU secundário conectado à porta SWD ou JTAG do MCU do aplicativo. Esta configuração é encontrada em quase todas as placas de desenvolvimento. Ele cria uma ponte entre o seu computador de desenvolvimento e a porta de acesso de depuração da CPU.

Uma vez que você tem um DAPLink, conecte nos pinos do SWDCLK e SWDDIO do DAPLink nos pinos SWDCLK e SWDDIO do módulo NINA B112, bem como os GND e alimente o NINA B112 com 3.3V.

Ao conectar o DAPLink na USB de seu computador, ele vai criar uma pasta virtual, por exemplo, E:, então arraste a tua aplicação (.HEX) para a pasta e ele vai copiar via JTAG SWD para o módulo NINA B112.




Para montar um DAPLink de baixo custo, sugiro usar o LPC11u35, veja o link abaixo

https://os.mbed.com/platforms/SWDAP-LPC11U35/

Neste link você pode baixar o BIN do DAP-LINK para U-BLOX

https://armmbed.github.io/DAPLink/



Testes foram efetuados com o DAPLink para gravação do NINA B112 com sucesso. Atenção, o arquivo HEX deve conter a aplicação e o SoftDevice antes de gravar.

Use o aplicativo MERGEHEX,EXE

C:\MERGE>mergehex.exe -m ble_app_bms_pca10040_s132.hex s132_nrf52_6.1.0_softdevice.hex -o merge.hex
Parsing input hex files.
Merging files.
Storing merged file.

C:\MERGE>dir *.hex
 O volume na unidade C não tem nome.
 O Número de Série do Volume é 5EAA-F512

 Pasta de C:\MERGE

18/02/2019  12:30           146.085 ble_app_bms_pca10040_s132.hex
18/02/2019  14:43           569.999 merge.hex
27/07/2018  09:03           424.030 s132_nrf52_6.1.0_softdevice.hex
               3 arquivo(s)      1.140.114 bytes

               0 pasta(s)   154.161.254.400 bytes disponíveis

Atenção, não coloque o firmware DAPLink no MICROCHIP SAM, pois destruirá o firmware SEGGER J-LINK.

Abaixo um LPC11u35 com software DAPLink e conector para gravação via SWD.




No mercado há gravadores DAPLink de baixo custo, mas observe o processador usado pelo BIN gerado.

4) Você também pode programar o NINA B112 usando ST-LINK V2




5) Questoes: suporte@smartcore.com.br

FONTES: