O objetivo deste BLOG é demonstrar como é possível utilizar programar o módulo U-BLOX NINA W106 com a linguagem de Scripts MicroPython PUMBAA para fazer um "Hello" na UART a cada 500ms.
O MicroPython é uma implementação enxuta e eficiente da linguagem de programação Python 3 que inclui um pequeno subconjunto da biblioteca padrão do Python e é otimizada para ser executada em microcontroladores e em ambientes restritos.
O MicroPython é repleto de recursos avançados, como um prompt interativo, números inteiros de precisão arbitrária, fechamentos, compreensão de listas, geradores, tratamento de exceções e muito mais. No entanto, é compacto o suficiente para caber e executar com apenas 256k de espaço de código e 16k de RAM.
O MicroPython pretende ser o mais compatível possível com o Python normal, para permitir a transferência de código com facilidade da área de trabalho para um microcontrolador ou sistema incorporado.
O que é PUMBAA
"Pumba é Python em cima de Simba."
O que é SIMBA ?
Simba é uma plataforma de programação embarcada. Tem como objetivo tornar a programação embarcada fácil e portátil.
ARQUITETURA DO SOFTWARE
Arquitetura de software
Abaixo está uma foto da arquitetura do software Pumbaa. Na parte inferior está o hardware. Além do hardware está o sistema operacional Simba, que implementa todas as funcionalidades de baixo nível; kernel, drivers, sistemas de arquivos, rede, etc. O MicroPython implementa a linguagem Python 3 e muitos módulos de biblioteca padrão Python. O aplicativo do usuário à direita pode ser implementado em uma mistura de código Python e C dependendo dos requisitos. Normalmente toda a aplicação é impolonada em Python.
INSTALAÇÃO (utilizei Platformio)
Instale pumba na PlatformIO.
Instale o IDE PlatformIO.
Inicie o PlatformIO IDE e abra o PlatformIO -> Project Examples e selecione pumbaa/blink.
Clique em Upload (a imagem da seta) no canto superior esquerdo.
Terminado!
PS: a placa utilizada no exemplo é NANO32, compatível com U-BLOX NINA W106
COMPILANDO
TRANSFERINDO PROGRAMA
EXECUÇÃO
BLINK LED
import time
import board
from drivers import Pin
LED = Pin(board.PIN_GPIO27, Pin.OUTPUT)
while True:
LED.toggle()
print("Hello")
time.sleep(0.5)
Questões: suporte@smartcore.com.br
pumbaa/main.py at master · eerimoq/pumbaa (github.com)
https://www.u-blox.com/sites/default/files/NINA-W10_DataSheet_%28UBX-17065507%29.pdf
eerimoq/pumbaa: Python on Simba. (github.com)
https://www.u-blox.com/sites/default/files/NINA-W10_DataSheet_%28UBX-17065507%29.pdf
eerimoq/pumbaa: Python on Simba. (github.com)
Nenhum comentário:
Postar um comentário