sábado, 8 de diciembre de 2018

uWhite-ESP32 V3.0

CONTACTO PARA ORDEN DE PCBs

Correo Electrónico:

olaf.igomezp@gmail.com

Celular:

(044) 5539238378

uWhite-ESP32 V3.0

Descripción

Tarjeta de desarrollo basado en ESP32-WROOM-32 de la compañia ESPRESSIF, lo podrás programar en FreeRTOS, MicroPhyton y/o Arduino.

Recursos de Hardware

Core ESP32-WROOM-32
Botón Reset
Botón Boot
Botón “Switch 1”
Botón Touch “PT1”
Pantalla OLED 0.96 128x64 controlador SSD1306
Led RGB
Potenciometro
Memoria Micro SD
Salidas Invertidas @ +5V  ( 6 Pines )
Conector de salida de potencia ( +5V , +3.3V, GND )
Conector de comunicación I2C
Conector USB de comunicación host UART0
Conector de comunicación auxiliar UART1

"PinOut"

LED RGB
VERDE          IO14
ROJO           IO12
AZUL           IO13


PAD TOUCH
PT1            IO27

PUSH BUTTON
SWITCH 1       IO34

ANALÓGICOS
POT 1          IO35

SALIDAS INVERTIDAS @+5V
               IO32
               IO33
               IO26
               IO25
               IO21
               IO4

PANTALLA OLED ( I2C )
SDA            IO23
SCL            IO22

MEMORIA MICRO SD ( SPI )
MISO           IO19
MOSI           IO18
SCLK           IO5
CS             IO2
CD             IO15

UART BOOT
TXOUT          TXD0
RXIN           RXD0

UART AUXILIAR
TXOUT          IO17
RXIN           IO16



Ayudas Visuales



Fotografías de Tarjeta 







Primeros Pasos con MicroPython


Programando desde Linux


Se debe instalar la herramienta esptool:

:~$ sudo apt install python-pip
:~$ sudo pip install --upgrade pip
:~$ sudo pip install esptool --upgrade

Se debe instalar la herramienta adafruit-ampy, para el caso de python 2:

:~$ pip install esptool adafruit-ampy

Para el caso de python 3

:~$ pip3 install esptool adafruit-ampy

Se debe disponer de una terminal serial como putty, screen, etc.

Programando desde Windows


Se debe instalar una terminal como "Babun" (http://babun.github.io/)

Se debe instalar la herramienta esptool:

:~$ pact apt install python-pip
:~$ pip install --upgrade pip
:~$ pip install esptool --upgrade

Se debe instalar la herramienta adafruit-ampy, para el caso de python 2:

:~$ pip install esptool adafruit-ampy

Para el caso de python 3

:~$ pip3 install esptool adafruit-ampy


Se debe disponer de una terminal serial TeraTerm, putty, etc.

Para este caso se usará TeraTerm,

Se debe identificar el número del puerto COM de la tarjeta,



Se elige la velocidad a 115200bps, desde menú Setup - Serial Port



Toda vez que se coloca la velocidad y se tiene la terminal activa, colocar un "reset" a la tarjeta uWhite-ESP32 desde el botón dispuesto para esta función, se debe obtener la inicialización del módulo con el REPL de MicroPython.



Programando un LED RGB  - PIN 14 VERDE -  


Se puede colocar ejecución de líneas de comando directamente en el REPL

>>> import machine
>>> pin14=machine.Pin(14,machine.Pin.OUT)
>>> pin14.value(1)

Observar que en la tarjeta se encienda la sección verde del LEDRGB

>>> pin14.value(0)

Observar que en la tarjeta se apague la sección verde del LEDRGB



Descarga de programas a uWhite-ESP32


Con la ayuda de “ampy” se descargara los archivos *.py al ESP32 de tal manera que se pueda ejecutar programas directamente desde el arranque de la tarjeta

NOTA IMPORTANTE: La numeración del puerto COM de la uWhite normalmente será distinto para el uso de la terminal serial que en “Babun”, por tal motivo es importante determinar el COM de la siguiente manera,


Para este caso será ttyS45

Para listar los archivos residentes en MicroPython ejecutar la siguiente línea de comando,

{ ~ }  »  ampy -p /dev/ttyS45 ls
/boot.py

Por “default” siempre se tendrá el archivo boot.py el cual se ejecuta al arranque del módulo ESP32.

Para conocer el contenido de algún archivos ejecutar la siguiente línea de comando,

{ ~ }  »  ampy -p /dev/ttyS45 get boot.py
# This file is executed on every boot (including wake-boot from deepsleep)
#import esp
#esp.osdebug(None)
#import webrepl
#webrepl.start()

Crear el archivo led.py de la siguiente manera

# Parpadeo del LED RGB - PIN 14 VERDE -
# cada segundo
import machine
import time

class ledRGB():
pin14 = machine.Pin(14, machine.Pin.OUT)
while(1):
pin14.value(1)
time.sleep(1)
pin14.value(0)
time.sleep(1)

Podemos cargar un archivo ejecutando la siguiente línea de comando,

{ ~ }  »  ampy -p /dev/ttyS45 put led.py
{ ~ }  »  ampy -p /dev/ttyS45 ls
/boot.py
/led.py

Para ejecutar, ir a TeraTerm y ejecutar la clase echa para el parpadeo del LED RGB - PIN 14 VERDE -



Como resultado el LED RGB - PIN 14 VERDE -, comenzará a parpadear a razón de 1 segundo.

Para que la clase se ejecute desde el arranque del ESP32, se debe modificar el archivo boot.py y colocar la invocación de la o las clases del archivo led.py

Páginas de referencia 

Setting up Eclipse for ESP-IDF





Installing the ESP32 Board in Arduino IDE (Mac OS X and Linux instructions)




Ejemplos

FreeRTOS

https://electromakersmx.blogspot.com/p/ejemplo-freertos.html


ARDUINO ( CarBot )

https://electromakersmx.blogspot.com/p/ejemplo-arduino.html

Requisitos:

+ App Blynk NOTA: Al instalar la APP, te pedirá un registro vía email, en el cual se te mandará el "TOKEN" (Serie de 32 números alfanuméricos), el cual se tendrá que colocar en char[] auth = "token32_Caracteres", compilar y descargar a uWhite-ESP32 V3.0. Esto permitirá el enlace entre el CarBot y la App Blynk.

Vídeos

Ejemplo FreeRTOS




Ejemplo ARDUINO ( CarBot )




Vídeos Youtube


Aprendiendo a programar con micro-Python y uWhite ESP32


Encendido y apagado de un led


Encendido y apagado de un led y envio de archivo *.py


Aprendiendo a programar con Arduino y uWhite ESP32


Encendido y apagado de un led



Aprendiendo a programar con C, FreeRTOS y uWhite ESP32.


Encendido y apagado de un led




No hay comentarios.:

Publicar un comentario