MicroPython
Python para microcontroladores
Apresentadores
Diana Santos
Técnica em informática. Atua como instrutora de informática básica e também
com ensino de programação para crianças através do Scratch.Colabora como
projeto Franzininho, levando workshops deeletronica e programação para
diversas pessoas do Brasil. Adepta do softwarelivre, possuitreinamentos
online de inkscape.
Fábio Souza
Engenheiro com experiência no desenvolvimento de projetos eletrônicos
embarcados. Hojeé diretor de operações do portalEmbarcados, ondetrabalha
para levar conteúdos de eletrônica, sistemas embarcados eIoTpara o Brasil.
Também atua no ensino eletrônica e programação pelo Brasil. É entusiastas do
movimento maker, da cultura DIYe do compartilhamento de conhecimento,
publica diversos artigos sobreeletrônicae projetos open hardware, como o
projeto Franzininho Participou da residência hacker 2018 no Redbull Basement.
Quando não está ministrando palestras, cursos ou workshops,dedica seu
tempo “escovando bits” ou projetando placas eletrônicas
eBook
Gratuito
http://bit.ly/ebookESP8266
Agenda
• IoT - "Coisa"
• Programação de microcontroladores
• MicroPython
• Demos
Internet das
coisas
IoT
É uma rede de objetos físicos que
possuem tecnologia embarcada para
comunicar, captar sinais e interagir
consigo mesmos ou com o ambiente
externo.
Gartner
Estrutura de
IoT
Hardware
Sensores + MCU/MPU + Conectividade
Programação de
microcontroladores
http://microcontrollerslab.com/pic-microcontroller-programming-c/
Arduino
Python
https://www.embarcados.com.br/linguagens-
ieee-spectrum-2018/
MicroPython
O MicroPython é uma implementação enxuta e
eficiente da linguagem de programação Python
3, incluindo um subconjunto da biblioteca
padrão do Python, e é otimizada para rodar em
microcontroladores e em ambientes restritos.
O MicroPython foi originalmente criado pelo
programador australiano e físico Damien George,
lançado em uma campanha de sucesso no
Kickstarter junto com a pyboard.
https://micropython.org/
MicroPython
• Feito para dispositivos com 256 KB de flash e
16 KB de RAM
• Não precisa de Sistema operacional
• Grande gama de bibliotecas
• Fácil para iniciantes
• Abstração de Hardware
• Teste rapido através de prompt
• Portabilidade
• Acesso a Funções de baixo nível em C/C++ e
até mesmoAssembly
MicroPython
• O MicroPython é escrito em C99 e todo o núcleo do
MicroPython está disponível para uso geral sob a licença
MIT. A maioria das bibliotecas e módulos de extensão
(alguns dos quais são de terceiros) também estão
disponíveis com licença MIT ou semelhantes.
• Você pode usar e adaptar livremente o MicroPython para
uso pessoal, em educação e em produtos comerciais.
https://github.com/micropython/micropython
Placas
suportadas
https://learn.adafruit.com/micropython-basics-what-is-micropython
pyboard
• STM32F405RG microcontroller
• 168 MHz Cortex M4 CPU with hardwarefloating point
• 1024KiBflash ROMand 192KiBRAM
• Micro USB connector for power and serial communication
• Micro SD card slot, supporting standard and high capacity SD cards
• 3-axis accelerometer (MMA7660)
• Real time clock with optional battery backup
• 24 GPIO on left and right edges and 5 GPIO on bottomrow, plus LED and switch GPIO
available on bottom row
• 3x 12-bitanalog to digital converters, availableon 16 pins, 4 with analog ground
shielding
• 2x 12-bitdigital to analog (DAC) converters, availableon pins X5 and X6
• 4 LEDs (red, green, yellow and blue)
• 1 resetand 1 user switch
Testar online
http://micropython.org/live https://micropython.org/unicorn
Demo: micro:bit
O que é a micro:bit
• A BBC micro:bit é uma pequena e
poderosa placa que está revolucionando o
ensino de programação no mundo. Foi
lançada com o apoio de 31 organizações,
através de uma iniciativa que deu uma
placa para cada criança do 7º ano no Reino
Unido.
• O seu hardware foi desenvolvido baseado
no chip Nordic nRF51822, que possui 16 KB
de RAM, 256 KB de Flash e BLE. Além
disso, ela possui uma matriz de 25 LEDs, 2
chaves tácteis, acelerômetro,
magnetômetro e diversos pinos de I/O.
Com essa configuração ela permite o
desenvolvimento de diversas aplicações.
https://microbit.org/
Editor MU
https://codewith.mu/
Demo: ESP8266
ESP8266
● Processor: L106 32-
bit RISC microprocessor core based on the Tensilica Xtensa Dia
mond Standard 106Micro running at 80 MHz†
● 64 KiB of instruction RAM, 96 KiB of data RAM
● External QSPI
flash: up to 16 MiB is supported (512 KiB to 4 MiB typically inclu
ded)
● IEEE 802.11 b/g/n Wi-Fi
● Integrated TR switch, balun,
LNA, power amplifier and matching network
● WEP or WPA/WPA2 authentication, or open networks
● 16 GPIO pins
● SPI
● I²C (software implementation)
● I²S interfaces with DMA (sharing pins with GPIO)
● UART on dedicated pins, plus a transmit-
only UART can be enabled on GPIO2
● 10-bit ADC (successive approximation ADC)
nodeMCU
A nodeMCU criada com base no
módulo ESP 12E, facilita o processo
de programação do ESP8266 por já
possuir onboard, o conversor USB
serial, regulador de tensão e pino de
I/O para conexão em protoboard.
uPyCraft
https://github.com/DFRobot/uPyCraft
CONTATO
contato@franzininho.com.br
about.me/fabio.souza

Micropython - Python para microcontroladores

  • 1.
  • 2.
    Apresentadores Diana Santos Técnica eminformática. Atua como instrutora de informática básica e também com ensino de programação para crianças através do Scratch.Colabora como projeto Franzininho, levando workshops deeletronica e programação para diversas pessoas do Brasil. Adepta do softwarelivre, possuitreinamentos online de inkscape. Fábio Souza Engenheiro com experiência no desenvolvimento de projetos eletrônicos embarcados. Hojeé diretor de operações do portalEmbarcados, ondetrabalha para levar conteúdos de eletrônica, sistemas embarcados eIoTpara o Brasil. Também atua no ensino eletrônica e programação pelo Brasil. É entusiastas do movimento maker, da cultura DIYe do compartilhamento de conhecimento, publica diversos artigos sobreeletrônicae projetos open hardware, como o projeto Franzininho Participou da residência hacker 2018 no Redbull Basement. Quando não está ministrando palestras, cursos ou workshops,dedica seu tempo “escovando bits” ou projetando placas eletrônicas
  • 3.
  • 4.
    Agenda • IoT -"Coisa" • Programação de microcontroladores • MicroPython • Demos
  • 5.
  • 6.
    IoT É uma redede objetos físicos que possuem tecnologia embarcada para comunicar, captar sinais e interagir consigo mesmos ou com o ambiente externo. Gartner
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
    MicroPython O MicroPython éuma implementação enxuta e eficiente da linguagem de programação Python 3, incluindo um subconjunto da biblioteca padrão do Python, e é otimizada para rodar em microcontroladores e em ambientes restritos. O MicroPython foi originalmente criado pelo programador australiano e físico Damien George, lançado em uma campanha de sucesso no Kickstarter junto com a pyboard. https://micropython.org/
  • 13.
    MicroPython • Feito paradispositivos com 256 KB de flash e 16 KB de RAM • Não precisa de Sistema operacional • Grande gama de bibliotecas • Fácil para iniciantes • Abstração de Hardware • Teste rapido através de prompt • Portabilidade • Acesso a Funções de baixo nível em C/C++ e até mesmoAssembly
  • 14.
    MicroPython • O MicroPythoné escrito em C99 e todo o núcleo do MicroPython está disponível para uso geral sob a licença MIT. A maioria das bibliotecas e módulos de extensão (alguns dos quais são de terceiros) também estão disponíveis com licença MIT ou semelhantes. • Você pode usar e adaptar livremente o MicroPython para uso pessoal, em educação e em produtos comerciais. https://github.com/micropython/micropython
  • 15.
  • 16.
    pyboard • STM32F405RG microcontroller •168 MHz Cortex M4 CPU with hardwarefloating point • 1024KiBflash ROMand 192KiBRAM • Micro USB connector for power and serial communication • Micro SD card slot, supporting standard and high capacity SD cards • 3-axis accelerometer (MMA7660) • Real time clock with optional battery backup • 24 GPIO on left and right edges and 5 GPIO on bottomrow, plus LED and switch GPIO available on bottom row • 3x 12-bitanalog to digital converters, availableon 16 pins, 4 with analog ground shielding • 2x 12-bitdigital to analog (DAC) converters, availableon pins X5 and X6 • 4 LEDs (red, green, yellow and blue) • 1 resetand 1 user switch
  • 17.
  • 18.
  • 19.
    O que éa micro:bit • A BBC micro:bit é uma pequena e poderosa placa que está revolucionando o ensino de programação no mundo. Foi lançada com o apoio de 31 organizações, através de uma iniciativa que deu uma placa para cada criança do 7º ano no Reino Unido. • O seu hardware foi desenvolvido baseado no chip Nordic nRF51822, que possui 16 KB de RAM, 256 KB de Flash e BLE. Além disso, ela possui uma matriz de 25 LEDs, 2 chaves tácteis, acelerômetro, magnetômetro e diversos pinos de I/O. Com essa configuração ela permite o desenvolvimento de diversas aplicações. https://microbit.org/
  • 20.
  • 21.
  • 22.
    ESP8266 ● Processor: L10632- bit RISC microprocessor core based on the Tensilica Xtensa Dia mond Standard 106Micro running at 80 MHz† ● 64 KiB of instruction RAM, 96 KiB of data RAM ● External QSPI flash: up to 16 MiB is supported (512 KiB to 4 MiB typically inclu ded) ● IEEE 802.11 b/g/n Wi-Fi ● Integrated TR switch, balun, LNA, power amplifier and matching network ● WEP or WPA/WPA2 authentication, or open networks ● 16 GPIO pins ● SPI ● I²C (software implementation) ● I²S interfaces with DMA (sharing pins with GPIO) ● UART on dedicated pins, plus a transmit- only UART can be enabled on GPIO2 ● 10-bit ADC (successive approximation ADC)
  • 23.
    nodeMCU A nodeMCU criadacom base no módulo ESP 12E, facilita o processo de programação do ESP8266 por já possuir onboard, o conversor USB serial, regulador de tensão e pino de I/O para conexão em protoboard.
  • 24.
  • 25.