domingo, 11 de dezembro de 2022

WISOL LSM110A RODANDO TINYGO - HELLO WORLD

WISOL LSM110A  RODANDO TINYGO - HELLO WORLD


O objetivo deste BLOG é demonstrar como é possível programar o módulo WISOL LSM110A (STM32WL55) com a linguagem TINYGO, foi utilizado o Breakout  para LSM110A.

Um "hello world!" será enviado a cada 1 segundo pela UART.

Compilado no WINDOWS 10

LSM110A Starter KIT
Módulo

Breakout

TinyGO

TinyGo é um projeto para levar a linguagem de programação Go para microcontroladores e navegadores modernos, criando um novo compilador baseado em LLVM.

Você pode compilar e executar programas TinyGo em muitas placas microcontroladoras diferentes, como o micro:bit da BBC e o Arduino Uno.

TinyGo também pode ser usado para produzir código WebAssembly (WASM), que é muito compacto em tamanho.

Só quer ver o código? Vá ao repositório do Github em 


TinyGo também tem suporte para vários dispositivos diferentes, como acelerômetros e magnetômetros. Confira o repositório do Github em 

https://github.com/tinygo-org/drivers para obter mais informações.

Instalando no TINYGO NO WINDOWS

Instalação manual
Você DEVE usar o Go 1.18.x+ com a instalação nativa do Windows 10 do TinyGo.

Se você ainda não o instalou, você pode obtê-lo de https://golang.org/dl/

Escolha o link de download para o Microsoft Windows, Windows 7 ou posterior, processador Intel de 64 bits.

Baixe o arquivo binário TinyGo para Windows do 

Descompacte o arquivo desta forma:

Primeiro, clique duas vezes no arquivo ZIP baixado para abri-lo.

Agora arraste a pasta "tinygo" na janela do arquivo ZIP para a sua unidade "C:".

Quando a pasta terminar de extrair, você poderá fechar a janela do arquivo ZIP.

Você precisará adicionar C:\tinygobin ao seu PATH.


Entre em
Descompacte em C:\
xPack OpenOCD v0.11.0-4 released.zip
Vá em PATH em variáveis de Ambiente



Compilando 

Entre em C:\tinygo\src>

e digite

tinygo flash -target=nucleo-wl55jc examples/serial


Execução

PA2 do LSM110A (TX)


Código fonte

package main import "time" func main() { for { println("hello world!") time.Sleep(time.Second) } }

Nenhum comentário:

Postar um comentário