micropython el sílice y la serpiente

20
Micropython El sílice y la serpiente Por J. Lucas Grillo Lorenzo (aka @enenNN)

Upload: jose-lucas-grillo-lorenzo

Post on 12-Apr-2017

88 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Micropython el sílice y la serpiente

MicropythonEl sílice y la serpiente

Por J. Lucas Grillo Lorenzo (aka @enenNN)

Page 5: Micropython el sílice y la serpiente

ESP8266: el hábitat de nuestra pitónida enana

Las placas electrónicas de prototipado Wemos D1 ESP8266 WiFi

Bajo coste - ~4-7€

Bajo consumo - ideal con baterías

Con conectividad WiFi

Page 7: Micropython el sílice y la serpiente

La terminal REPL (Read Evaluate Print Loop)● “Flashear” Wemos D1 mini con imagen de micropython (1.8.7)● Comunicación por cable serial ttyUSB● Interfaz interactiva mediante minicom● Carga de programas main.py con mpfshell

Page 8: Micropython el sílice y la serpiente

La terminal REPL (Read Evaluate Print Loop)● Mediante minicom ● Conecta al puerto /dev/ttyUSB0 ● Debe aparecer el prompt de micropython al pulsar <ENTER>:

Welcome to minicom 2.7

OPCIONES: I18nCompilado en Feb 7 2016, 13:37:27.Port /dev/ttyUSB0, 13:02:10

Presione CTRL-A Z para obtener ayuda sobre teclas especiales

>>>

minicom -D /dev/ttyUSB0

Page 9: Micropython el sílice y la serpiente

Sistema de ficheros interno● Usando vfs (<TAB> autocompleta)● Los ESPs con >1MB incluyen un pequeño FS

>>> vfs.mkfs open listdir mkdirrmdir chdir getcwd removerename stat statvfs umount

Page 10: Micropython el sílice y la serpiente

Previo a ejercicios: subir programas uPythonInstala la herramienta mpfshell:

virtualenv microenvsource microenv/bin/activatepip3 install pyserialpip3 install coloramapip3 install websocket_client

Page 11: Micropython el sílice y la serpiente

Previo a ejercicios: subir programas uPythonCarga fichero main.py con mpfshell:

Compruébalo:

mpfshell -n -c "open ttyUSB0; put myscript.py main.py"

mpfshell -n -c "open ttyUSB0"mpfshell> ls main.py

Page 12: Micropython el sílice y la serpiente

Básicas sobre una interfaz GPIOhttps://docs.micropython.org/en/latest/esp8266/library/machine.html

D0 IO 16

D1 IO 5

D2 IO 4

D3 IO, 0

D4 IO, LED 2

D5 IO, CLK 14

D6 IO, MISO 12

D7 IO, RX, MOSI 13

D8 IO, TX, CS 15

A0 Analog input A0

Page 13: Micropython el sílice y la serpiente

Interfaz hardware: digital / analógica

from machine import Pin, ADCled = Pin(5, Pin.OUT)boton = Pin(4, Pin.IN, Pin.PULL_UP)sensor = ADC(0)while True:

print("sensor de luz: {}".format(sensor))if sensor.read() < 512:

led.low() if boton.value()else:

led.high()

Page 17: Micropython el sílice y la serpiente

Ejercicio: Para quienes deseen optar a ECTS● Usando micros compatibles que consigas ó http://micropython.org/live/● Escribe un programa original que haga uso de al menos 3 de las

siguientes características:○ Salida de mensajes por la termina +1○ Uno o más dispositivos de salida digital (u opcionalmente usando PWM) +2○ Al menos:

■ O bien, uno o varios dispositivos de entrada (digital o analógico) +1■ O un periférico, por ejemplo usando I2C, SPI, 1-wire, etc. +2

○ Al menos:■ O bien, Timers +1■ O, RTC u otras funciones de sleep +3

● Extras opcionales: funciones de red,

Page 18: Micropython el sílice y la serpiente

Turno para preguntas

Gracias por tu atención

Page 19: Micropython el sílice y la serpiente

Gracias por su atención