Pular para o conteúdo principal

Seeed Studio XIAO RP2040 com MicroPython

Introdução ao MicroPython

MicroPython é um interpretador Python com um recurso parcial de compilação de código nativo. Ele fornece um subconjunto de recursos do Python 3.5, implementado para processadores embarcados e sistemas com recursos limitados. Ele é diferente do CPython e você pode ler mais sobre as diferenças aqui.

Introdução

Primeiro, vamos conectar o Seeed Studio XIAO RP2040 ao computador e enviar um código simples em MicroPython para verificar se a placa está funcionando bem.

Configuração de hardware

Configuração de software

  • Passo 1. Baixe e instale a versão mais recente do editor Thonny de acordo com o seu sistema operacional
  • Passo 2. Inicie o Thonny

  • Passo 3. Clique em Tools-->Options para abrir as configurações.

  • Passo 4. Escolha a interface Interpreter e selecione o dispositivo como MicroPython(Raspberry Pi Pico) e a porta como Try to detect port automatically

Conectar o Seeed Studio XIAO RP2040 ao PC

  • Passo 1. Pressione e segure o botão BOOT e então conecte o Seeed Studio XIAO RP2040 ao PC através do cabo Type-C. Se funcionar bem, será exibida no PC uma unidade chamada "RPI-RP2".
  • Passo 2. Clique em Install or update MicroPython.

Ele irá então procurar automaticamente o dispositivo e exibi-lo em Target Volume. Na seleção de versão em Micropython abaixo, apenas deixamos o padrão.

Clique no botão Install e feche esta página quando o status da instalação indicar Done. As seguintes informações serão exibidas na interface assim que o firmware for concluído.

  • Passo 3. Copie os códigos a seguir para o Thonny.
from machine import Pin, Timer

led = Pin(25, Pin.OUT)
Counter = 0
Fun_Num = 0

def fun(tim):
global Counter
Counter = Counter + 1
print(Counter)
led.value(Counter%2)

tim = Timer(-1)
tim.init(period=1000, mode=Timer.PERIODIC, callback=fun)
  • Passo 4. Envie os códigos clicando no botão Run current script. Na primeira vez, o Thonny perguntará onde você deseja salvar o arquivo de código. Tanto This Computer quanto Raspberry Pi Pico funcionam bem.

Se funcionar bem, você verá o LED acender e apagar uma vez por segundo. E a saída do número crescente também será exibida no Shell.

A conexão está concluída e agora podemos prosseguir para outros projetos.

Conectar Seeed XIAO Studio XIAO RP2040 Plus

Passo 1. Grave o firmware. Baixe o Firmware do XIAO RP2040 Plus. Após extrair o pacote ZIP, mantenha pressionado o botão BOOT no XIAO RP2040 Plus e conecte-o ao computador. Uma unidade chamada RPI-RP2 irá aparecer. Copie o arquivo firmware.uf2 para essa unidade.


Passo 2. Abra o Thonny IDE → Tools → Options e faça as seleções conforme mostrado na figura.

Passo 3. As informações de versão serão exibidas no Shell.


Passo 4. Vá em Files -> New, cole o código abaixo e execute o script.

from machine import Pin, Timer

led = Pin(25, Pin.OUT)
Counter = 0
Fun_Num = 0

def fun(tim):
global Counter
Counter = Counter + 1
print(Counter)
led.value(Counter%2)

tim = Timer(-1)
tim.init(period=1000, mode=Timer.PERIODIC, callback=fun)
  • O LED piscará em intervalos de 1 segundo.

dica
  • A seção Additional Resources contém o firmware MicroPython e exemplos relevantes para o XIAO RP2040 Plus. Você pode usar esses exemplos seguindo os tutoriais do XIAO RP2040, mas certifique-se de substituir e modificar os pinos correspondentes.
  • Para verificar as diferenças dentro da série XIAO RP2040, consulte XIAO RP2040 Series Pin Overview

Acender o LED RGB no Seeed Studio XIAO RP2040

Há um LED RGB equipado no Seeed Studio XIAO RP2040 e vamos acendê-lo usando MicroPython. É necessária uma biblioteca de terceiros, portanto precisamos adicionar primeiro uma biblioteca adicional.

  • Passo 1. Baixe a biblioteca ws2812.py e abra-a com o Thonny.

  • Passo 2. Clique em File-->Save as e salve a biblioteca.

Escolha o Raspberry Pi Pico como o local onde vamos salvar.

Certifique-se de que o nome do arquivo salvo seja ws2812.py, caso contrário não irá funcionar.

  • Passo 3. Copie os códigos a seguir para o Thonny.
from ws2812 import WS2812
import utime
import machine
power = machine.Pin(11,machine.Pin.OUT)
power.value(1)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
YELLOW = (255, 150, 0)
GREEN = (0, 255, 0)
CYAN = (0, 255, 255)
BLUE = (0, 0, 255)
PURPLE = (180, 0, 255)
WHITE = (255, 255, 255)
COLORS = (BLACK, RED, YELLOW, GREEN, CYAN, BLUE, PURPLE, WHITE)

led = WS2812(12,1)#WS2812(pin_num,led_count)

while True:
print("Beautiful color")
for color in COLORS:
led.pixels_fill(color)
led.pixels_show()
utime.sleep(0.2)
  • Passo 4. Envie os códigos clicando no botão "Run current script". Na primeira vez, o Thonny perguntará onde você deseja salvar o arquivo de código. Tanto This Computer quanto Raspberry Pi Pico funcionam bem.

Se funcionar bem, você verá o LED RGB mudar e piscar as luzes. E a saída do texto "Beautiful Color" também será exibida no Shell.

Conectar o Seeed Studio XIAO RP2040 com Display via IIC

Neste projeto, vamos conectar o Grove - OLED Display 0.96" (SSD1315) através da interface IIC para demonstrar a função IIC no Seeed Studio XIAO RP2040.

Conexão de hardware

  • Passo 1. Baixe a biblioteca ssd1306.py e abra-a com o Thonny.

  • Passo 2. Clique em "File-->Save as" e salve a biblioteca em "Raspberry Pi Pico"

Escolha "Raspberry Pi Pico" como o local onde vamos salvar.

Certifique-se de que o nome do arquivo salvo seja "ssd1306.py", caso contrário não irá funcionar.

  • Passo 3. Copie os códigos a seguir para o Thonny.
from ssd1306 import SSD1306_I2C
from machine import Pin, I2C
from time import sleep

i2c = I2C(1, scl=Pin(7), sda=Pin(6), freq=200000)#Grove - OLED Display 0.96" (SSD1315)
oled = SSD1306_I2C(128, 64, i2c)

while True:
oled.fill(0)#clear
oled.text("Hello,World!",0,0)
oled.show()
#sleep(0.5)
  • Passo 4. Envie os códigos clicando no botão "Run current script". Na primeira vez, o Thonny perguntará onde você deseja salvar o arquivo de código. Tanto This Computer quanto Raspberry Pi Pico funcionam bem.

Se funcionar bem, você verá o texto "Hello,World!" exibido na tela.

Console de Dispositivo MicroPython

Nosso parceiro Neil escreveu um programa de console de linha de comando para o XIAO usando MicroPython. Com esse programa você pode facilmente enviar, baixar e excluir arquivos. Agradecemos a ele por sua contribuição ao XIAO!

Recursos Adicionais

Algumas bibliotecas adicionais e códigos de exemplo estão aqui:

Suporte Técnico e Discussão de Produto

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.

Loading Comments...