Não há muita informação na rede sobre o servidor EBlink que apareceu há vários anos. Este post tentará corrigir a situação.
O EBlink suporta a maioria dos modelos de microcontroladores STM32 (séries F0, F1, F2, F3, F4, F7, H7, L0, L1, L1, L4, G0 e G4), além do EFR32.
É interessante, pois ele suporta scripts na linguagem do tipo C, esquilo, envolvidos no processo de piscar e depurar microcontroladores. Isso permite editar os scripts para adicionar novos microcontroladores ou alterar o trabalho com os existentes, sem interferir no código fonte do EBlink. Eu posso assumir dessa maneira que é possível adicionar microcontroladores com um núcleo ARM Cormex-M de outros fabricantes, por exemplo, a empresa Milander , mas isso não foi verificado.
Depuradores ST-Link v2 e v3 são suportados, bem como CMSIS-DAP.
Arquivos executáveis para Windows x86, Linux x86-64 e Raspberry PI estão disponíveis no momento. O desenvolvedor promete publicar o código fonte no futuro.
A versão mais recente pode ser baixada no github .
A versão atual 2.0 é carregada no disco .
Silencioso sobre a interface da linha de comandos versão 2.0.eblink - uso:
EBlink <options> -h, --help Print this help -g, --nogui No GUI message boxes -v <level>, --verbose <0..7> Specify level of verbose logging (default 4) -a [type], --animation [0..] Set the animation type (0=off, 1 = cursor, >1 = dot) -I <options>, --interf Select interface -T <options>, --target Select target(optional) -S <file>, --script <file> Load a device script file -D <def>, --define <def> Define script global variable "name=value" -F <options>, --flash <options> Run image flashing -G [options], --gdb <options> Launch GDB server --script and --interf are mandatory, normally combined with --flash or/and --gdb eg EBlink -I stlink -S stm32-auto -G EBlink -I stlink -S stm32-auto -G -D flashSize=1024 -D ramSize=16 EBlink -I stlink,dr,speed=3000 -S silabs-auto -F erase,verify,run,file=mytarget.elf EBlink -I cmsis-dap -T cortex-m,nu -S stm32-auto -G port=4242,nc,s -S myReset.scr
==== Interfaces
nome: CMSIS-DAP - driver de protocolo de depuração do ARM
Usage -I cmsis-dap[,options] <not yet implemented>
nome: STlink - driver de interface STmicro V2 / 3
Usage -I stlink[,options] dr : Disable reset at connection (hotplug) speed=nnn : Interface speed (default max possible) swd : use SWD (default) jtag : use Jtag device=<usb_bus>:<usb_addr> : Select probe explicit eg -I stlink,dr,speed=3000
==== Metas
nome: córtex-m
Usage -T cortex-m[,options] nu : Disable stack unwind at exception eg -T cortex-m,nu
==== Carregador Flash
Usage -F [options] erase : Chip erase the flash verify : Verify flash after upload run : Start image file=<file> : Load the file, <file>.hex = Intel HEX format <file>.srec = Motorola srec file format Default = ELF file format eg -F file=test.elf -F run,file=test.hex -F erase,verify,run,file=test.srec -F erase -F run Default (without erase) only modified sectors are (re)flashed.
==== Servidor GDB
Usage -G [options] s : Shutdown after disconnect nc : Don't use EBlink flash cache port=ppp : Select different TCP port, default 2331 address=xxxx : Select different listen address, default 0.0.0.0 eg -G s,nc
O EBlink teve um bom desempenho como depurador para o ambiente EmBitz 1.11 .
Na rede, foram encontrados arquivos que adicionam a interface do depurador e tudo o que é necessário é extrair o arquivo morto para uma pasta com o ambiente EmBitz 1.11 instalado. O archive contém arquivos EBlink e a interface do depurador. Para usar o depurador, é necessário selecionar o EBlink na interface Selected na janela de opções da interface Debug (abre no menu Debug> Interfaces) e se tornará o servidor GDB atual do destino ativo do projeto.
O EBlink também pode ser usado para fazer upload de firmware de lançamento. Para fazer isso, adicione uma ferramenta ao EmBitz ( menu Ferramentas > Configurar ferramentas ... ) que chamaremos de EBlink flash .
Linha de comando do aplicativo:
-I stlink -S stm32-auto -a -F verify,run,file="${PROJECT_DIR}${TARGET_OUTPUT_DIR}${TARGET_OUTPUT_BASENAME}.hex"
No log do IDE, você pode ver a operação da ferramenta - o EBlink atualizou o microcontrolador STM32F103C8T6.
Da mesma forma, você pode integrar o EBlink a outros IDEs, por exemplo, o CooCox, que não é desenvolvido há muito tempo, o que permitirá trabalhar com as séries STM32H7, STM32G0 e STM32G4, recentemente exibidas, que não são suportadas pelas versões atuais do coco.
Todos os arquivos mencionados no artigo foram carregados no Yandex.Disk .