SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim
12anogolega
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
Elaine Cecília Gatto
 
Unidade 1 Conceitos Básicos
Unidade 1   Conceitos BásicosUnidade 1   Conceitos Básicos
Unidade 1 Conceitos Básicos
guest693dd2
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programação
aldoirjava
 
Trabalho sobre as memórias ram
Trabalho sobre as memórias ramTrabalho sobre as memórias ram
Trabalho sobre as memórias ram
jfranca1984
 

Tendances (20)

Exercicios resolvidos visu alg vetores
Exercicios resolvidos visu alg vetoresExercicios resolvidos visu alg vetores
Exercicios resolvidos visu alg vetores
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
 
História e evolução do computadores
História e evolução do computadoresHistória e evolução do computadores
História e evolução do computadores
 
Representação de Áudio e Imagem
Representação de Áudio e Imagem Representação de Áudio e Imagem
Representação de Áudio e Imagem
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
 
Unidade 1 Conceitos Básicos
Unidade 1   Conceitos BásicosUnidade 1   Conceitos Básicos
Unidade 1 Conceitos Básicos
 
Informática Básica (Conceitos, Hardware e Software) - Copia.ppt
Informática Básica (Conceitos, Hardware e Software) - Copia.pptInformática Básica (Conceitos, Hardware e Software) - Copia.ppt
Informática Básica (Conceitos, Hardware e Software) - Copia.ppt
 
Circuitos Digitais: Portas Lógicas parte 1
Circuitos Digitais: Portas Lógicas parte 1Circuitos Digitais: Portas Lógicas parte 1
Circuitos Digitais: Portas Lógicas parte 1
 
Placa mãe e seus componentes
Placa mãe e seus componentesPlaca mãe e seus componentes
Placa mãe e seus componentes
 
Internet das Coisas - Conectando você e tudo ao seu redor
Internet das Coisas - Conectando você e tudo ao seu redorInternet das Coisas - Conectando você e tudo ao seu redor
Internet das Coisas - Conectando você e tudo ao seu redor
 
Big Data, o que é isso?
Big Data, o que é isso?Big Data, o que é isso?
Big Data, o que é isso?
 
Organização de computadores
Organização de computadoresOrganização de computadores
Organização de computadores
 
Programação em-arduino-módulo-básico
Programação em-arduino-módulo-básicoProgramação em-arduino-módulo-básico
Programação em-arduino-módulo-básico
 
Manual de portugol
Manual de portugolManual de portugol
Manual de portugol
 
Processadores intel 4000 a 4004
Processadores intel 4000 a 4004Processadores intel 4000 a 4004
Processadores intel 4000 a 4004
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Manutenção de Computadores - Aula 1
Manutenção de Computadores - Aula 1Manutenção de Computadores - Aula 1
Manutenção de Computadores - Aula 1
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programação
 
Trabalho sobre as memórias ram
Trabalho sobre as memórias ramTrabalho sobre as memórias ram
Trabalho sobre as memórias ram
 

Similaire à Micropython - Python para microcontroladores

Similaire à Micropython - Python para microcontroladores (20)

Jornada de desenvolvimento de hardware
Jornada de desenvolvimento de hardwareJornada de desenvolvimento de hardware
Jornada de desenvolvimento de hardware
 
Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)
 
Netduino e .NET Micro Framework
Netduino e .NET Micro FrameworkNetduino e .NET Micro Framework
Netduino e .NET Micro Framework
 
Programe a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbedPrograme a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbed
 
Internet das coisas, conhecendo plataformas de desenvolvimentos
Internet das coisas, conhecendo plataformas de desenvolvimentosInternet das coisas, conhecendo plataformas de desenvolvimentos
Internet das coisas, conhecendo plataformas de desenvolvimentos
 
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEMMICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM
 
IoT Usando Azure Como Backend
IoT Usando Azure Como BackendIoT Usando Azure Como Backend
IoT Usando Azure Como Backend
 
Ampliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do PythonAmpliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do Python
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Facebook Developer Circles SP - Redes neurais convolucionais com PyTorch
Facebook Developer Circles SP - Redes neurais convolucionais com PyTorchFacebook Developer Circles SP - Redes neurais convolucionais com PyTorch
Facebook Developer Circles SP - Redes neurais convolucionais com PyTorch
 
Python e suas aplicações
Python e suas aplicaçõesPython e suas aplicações
Python e suas aplicações
 
Comunicação de Dispositivos IoT com MQTT
Comunicação de Dispositivos IoT com MQTTComunicação de Dispositivos IoT com MQTT
Comunicação de Dispositivos IoT com MQTT
 
GT8 - Hardware e Sistemas Distribuídos - Grupo Sanduíche
GT8 - Hardware e Sistemas Distribuídos - Grupo SanduícheGT8 - Hardware e Sistemas Distribuídos - Grupo Sanduíche
GT8 - Hardware e Sistemas Distribuídos - Grupo Sanduíche
 
Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4
 
Introdução a Sistemas Embarcados com Arduino - mini-curso
Introdução a Sistemas Embarcados com Arduino - mini-cursoIntrodução a Sistemas Embarcados com Arduino - mini-curso
Introdução a Sistemas Embarcados com Arduino - mini-curso
 
Oficina de IoT conhecendo ESP8266 #CPBR12
Oficina de IoT conhecendo ESP8266 #CPBR12Oficina de IoT conhecendo ESP8266 #CPBR12
Oficina de IoT conhecendo ESP8266 #CPBR12
 
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeitaPalestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
Palestra FLISOL 2013 - Java + Arduino + Raspberry PI = Uma combinação perfeita
 
Apostila_IC.pdf
Apostila_IC.pdfApostila_IC.pdf
Apostila_IC.pdf
 
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
 
A Internet das coisas e a programação de micro controladores
A Internet das coisas e a programação de micro controladoresA Internet das coisas e a programação de micro controladores
A Internet das coisas e a programação de micro controladores
 

Plus de Fabio Souza

Plus de Fabio Souza (20)

RISC-V Design Challenge
RISC-V Design ChallengeRISC-V Design Challenge
RISC-V Design Challenge
 
Palestra Como o open hardware pode impactar na educação do nosso país
Palestra Como o open hardware pode impactar na educação do nosso paísPalestra Como o open hardware pode impactar na educação do nosso país
Palestra Como o open hardware pode impactar na educação do nosso país
 
Workshop - Cotrole sua casa remotamente através da Internet
Workshop - Cotrole sua casa remotamente através da InternetWorkshop - Cotrole sua casa remotamente através da Internet
Workshop - Cotrole sua casa remotamente através da Internet
 
Open Hardware - Projetos que estão mudando o mundo
Open Hardware - Projetos que estão mudando o mundoOpen Hardware - Projetos que estão mudando o mundo
Open Hardware - Projetos que estão mudando o mundo
 
Como publicar um projeto open hardware?
Como publicar um projeto  open hardware?Como publicar um projeto  open hardware?
Como publicar um projeto open hardware?
 
Como publicar um projeto open hardware?
Como publicar um projeto  open hardware?Como publicar um projeto  open hardware?
Como publicar um projeto open hardware?
 
Como o movimento maker e a internet das coisas estão revolucionando o mundo
Como o movimento maker e a internet das coisas estão revolucionando o mundoComo o movimento maker e a internet das coisas estão revolucionando o mundo
Como o movimento maker e a internet das coisas estão revolucionando o mundo
 
Montando sua própria placa arduino e compartilhando seus projetos de hardware
Montando sua própria placa arduino e compartilhando seus projetos de hardwareMontando sua própria placa arduino e compartilhando seus projetos de hardware
Montando sua própria placa arduino e compartilhando seus projetos de hardware
 
Monte sua franzininho, uma placa arduino compatível
 Monte sua franzininho, uma placa arduino compatível Monte sua franzininho, uma placa arduino compatível
Monte sua franzininho, uma placa arduino compatível
 
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
Como montar sua própria placa Arduino e compartilhar seus projetos de hardwareComo montar sua própria placa Arduino e compartilhar seus projetos de hardware
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
 
Workshop Microchip Curiosity Board
Workshop Microchip Curiosity BoardWorkshop Microchip Curiosity Board
Workshop Microchip Curiosity Board
 
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
Como montar sua própria placa Arduino e compartilhar seus projetos de hardwareComo montar sua própria placa Arduino e compartilhar seus projetos de hardware
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
 
Curso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXPCurso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXP
 
Curso mbed na KL25Z
Curso mbed na KL25ZCurso mbed na KL25Z
Curso mbed na KL25Z
 
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Motores
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - MotoresMicrocontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Motores
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Motores
 
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados -  TPM - TIM...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados -  TPM - TIM...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM...
 
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...
 
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...
 
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Resumo de ...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Resumo de ...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Resumo de ...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Resumo de ...
 
Construindo sua placa baseada em Arduino
Construindo sua placa baseada em ArduinoConstruindo sua placa baseada em Arduino
Construindo sua placa baseada em Arduino
 

Micropython - Python para microcontroladores

  • 2. 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
  • 4. Agenda • IoT - "Coisa" • Programação de microcontroladores • MicroPython • Demos
  • 6. 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
  • 8. Hardware Sensores + MCU/MPU + Conectividade
  • 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 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
  • 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
  • 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
  • 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/
  • 22. 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)
  • 23. 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.