Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Caipyra 2025 - MicroPython, Mega Possibilidades

Caipyra 2025 - MicroPython, Mega Possibilidades

Slides da palestra MicroPython, Mega Possibilidades, apresentada durante o Caipyra 2025 em Ribeirão Preto, por Juliana Karoline de Sousa.

Link para a gravação da palestra ainda não foi disponibilizado.

More Decks by Juliana Karoline de Sousa

Other Decks in Technology

Transcript

  1. JULIANA KAROLINE DE SOUSA - Cientista da Computação | UFSCar

    - Co-fundadora e organizadora | PyLadies São Carlos - Co-fundadora e organizadora | grupy-sanca - Hobbies: IoT, Robótica, Impressão 3D - Fora das telas: Patins, Muay Thai
  2. O que são microcontroladores e como rodar Python neles Ferramentas

    para controlar componentes eletrônicos Inspirações de projetos feitos com MicroPython 01 03 04 MICROPYTHON RECURSOS DISPONÍVEIS PROJETOS AGENDA Como é o ecossistema do ambiente de desenvolvimento embarcado 02 PROGRAMANDO
  3. MICROCONTROLADORES CIRCUITO INTEGRADO PROGRAMÁVEL I/O BAIXO CONSUMO Processador, memória e

    periféricos em um único chip Portas integradas para interagir com componentes Armazenar código customizado na memória Pode ser utilizado em projetos alimentados por baterias
  4. MICROPYTHON O MicroPython é uma reimplementação enxuta e eficiente do

    Python 3. Escrita em C, possui um bom desempenho devido às otimizações realizadas para que possa ser utilizada em dispositivos com baixo poder computacional. A sintaxe é a mesma, incluindo um subconjunto da biblioteca padrão, além de comandos próprios.
  5. CARACTERÍSTICAS DO MICROPYTHON Features: ➔ Prompt interativo (REPL) ➔ List

    comprehensions e generators ➔ Tratamento de exceções ➔ Acesso aos protocolos GPIO, PWM, ADC, SPI, I2C, UART ➔ Suporte à código async Requisitos mínimos: ➔ 256k de espaço de código ➔ 16k de memória RAM
  6. POR QUE USAR MICROPYTHON? AL TO NÍVEL PYTHON ABSTRAÇÃO Permite

    escrever código orientado a objetos É possível abstrair a camada de hardware de acordo com a aplicação Sintaxe mais simples que C/C++, dá para escrever mais código em menos tempo Segue a filosofia do Zen do Python PRODUTIVIDADE
  7. INSTALAÇÃO DO FIRMWARE - RP2 Coloque a placa no modo

    bootloader e copie o arquivo para o dispositivo de armazenamento
  8. Comandos disponíveis: ➔ Sistema de arquivos: cat, ls, cp, rm,

    mkdir, rmdir ➔ Montar uma pasta local no dispositivo: mount ➔ Executar um arquivo local (do computador): run ➔ Acessar o REPL: repl ➔ Instalar bibliotecas: mip MPREMOTE
  9. mip é o instalador de pacotes do MicroPython, que permite

    instalar bibliotecas de um index ou de uma URL MIP •
  10. awesome-micropython.com é um agregador de informações sobre MicroPython, contendo bibliotecas

    e ferramentas úteis para o desenvolvimento AWESOME MICROPYTHON •
  11. AWESOME MICROPYTHON • Categorias: ➔ AI ➔ Audio ➔ Bluetooth

    ➔ MQTT ➔ Displays ➔ I/O ➔ Sensores ➔ Armazenamento
  12. COMPARAÇÃO DAS IDEs Modo de Execução Sistema de Arquivos Usabilidade

    Mu Editor Desktop Dispositivo e Local Muito Simples Arduino Lab Desktop e Browser Dispositivo Simples ViperIDE Browser Dispositivo Simples Thonny Desktop Dispositivo e Local Moderado
  13. GPIO: GENERAL PURPOSE INPUT/OUTPUT GPIOs são portas programáveis que permitem

    a leitura e escrita de valores digitais (ligado ou desligado).
  14. PWM: PULSE WIDTH MODULATION PWM é uma técnica para simular

    valores analógicos através de sinais digitais utilizando uma onda quadrada.
  15. ADC é uma técnica para converter sinais analógicos (tensão) em

    sinais digitais (números inteiros) ADC: ANALOG TO DIGITAL CONVERTER
  16. SPI: SERIAL PERIPHERAL INTERFACE SPI é um protocolo síncrono de

    comunicação que usa 4 fios para comunicação entre dispositivos Possui apenas um dispositivo controlador, que lidera a comunicação com um ou mais periféricos
  17. I2C: INTER-INTEGRATED CIRCUIT I2C é um protocolo síncrono que utiliza

    dois fios para comunicação entre diversos dispositivos no mesmo barramento Pode possuir diversos dispositivos controladores liderando um ou mais periféricos
  18. UART: UNIVERSAL ASYNCHRONOUS RECEIVER-TRANSMITTER A comunicação é feita entre um

    transmissor e um receptor UART é protocolo que permite transmitir e receber dados em ambas as direções usando dois fios
  19. COMPARAÇÃO DOS PROTOCOLOS Velocidade Comunicação Fios Flexibilidade Complexidade SPI 10+

    Mbps Full-Duplex 4 1 Controlador n Periféricos Simples (sem ACK) I2C 3.4 Mbps Half-Duplex 2 n Controladores 128 Periféricos Complexo (com ACK) UART 115200 bps Simplex Half-Duplex Full-Duplex 2 1 Transmissor 1 Receptor Simples (start/stop bit)