martes, 14 de febrero de 2023

MrBit Materiales Nuevos

En el enlace de la linea anterior de texto
encontrarás nuevos ejemplos del software MrBit
_____________________________________

El nuevo microntrolador Raspberry Pi Pico

(Una alternativa a Arduino y Micro:Bit)

La nueva creación de Raspberry Pi Pico viene para quedarse en el mundo de los microcontroladores siendo ya una realidad. Les presento aquí la aportación de la firma Cytron a la familia de tarjetas didácticas para creación de prototipos y aprendizaje. Son dos las tarjetas que se nos ofrecen: MAKER PI PICO  y  MAKER PI RP2040

Es hora de prestar atención a esta nueva plataforma que Raspberry Pi, pone en nuestras manos. Las posibilidades que se nos brindan son muy notables y sin lugar a dudas los fabricantes de kits educativos para el aprendizaje de la programación y diseño de modelos basados en microcontroladores van a apostar por ello.

Hace unos meses me hice de las tarjetas de Cytron que explico en esta nota, recuperé los distintos elementos sensores/actuadores de Seeed Grove y me he puesto a explorar la programación de las tarjetas.

Los primeros trabajos de programación los he realizado con el entorno gratuito de origen español llamado MicroBlocks que facilita mucho una primera fase de exploración de las posibilidades de Raspberry Pi Pico.

Voy a recoger de manera resumida la información que Cytron ofrece en relación a sus productos Raspberry Pi Pico

Placa básica MAKER PI PICO


Photo credit: Kevin J. Walters

Tarjeta MAKER PI PICO


Características
  • Trabaje fuera de la caja. ¡Sin soldadura!
  • Acceso a todos los pines de Raspberry Pi Pico o Pico W en dos cabezales de pines de 20 vías
  • Indicadores LED en todos los pines GPIO
  • 3x pulsador programable (GP20-22)
  • 1x LED RGB - NeoPixel (GP28)
  • 1x zumbador piezoeléctrico (GP18)
  • 1x conector de audio estéreo de 3,5 mm (GP18-19)
  • 1x ranura para tarjeta Micro SD (GP10-15)
  • 1x zócalo ESP-01 (GP16-17)
  • 6x puerto Grove

Función

Descripción

Puerto Micro USB
*MAKER-PI-PICO solamente

Se utiliza para encender el Maker Pi Pico y cargar programas desde la PC.

LED de alimentación 3V3

Indicador LED para 3V3. Encender cuando esté encendido.

LED GPIO

Indicador LED para Raspberry Pi Pico GPIO.

Encienda cuando el estado de GPIO sea alto.

LED RGB WS2812B

LED RGB WS2812B programable por el usuario. Conectado a GP28.

Desglose de GPIO

Desglose de los pines GPIO de Raspberry Pi Pico.
* MAKER-PI-PICO = Cabezales de clavija macho
* MAKER-PI-PICO-NB = Cabezales de clavija hembra

Desglose del puerto de depuración

Desglose del puerto de depuración de Raspberry Pi Pico.

Botón de reinicio

Presione para reiniciar el Raspberry Pi Pico.

Botones programables

Conectado al pin GP20, GP21 y GP22 respectivamente.

Accesible desde el programa de usuario.
* Rev1.0.0 a 1.1.0 = Para habilitar pull-up interno en el software.

* Rev1.2.0 = Activado permanentemente en hardware con condensador antirrebote.

Zumbador piezoeléctrico

Se puede utilizar para reproducir tonos o melodías.

Conectado a GP18.

Interruptor de silencio del zumbador

Se utiliza para silenciar el zumbador piezoeléctrico.

Salida de audio

Salida de audio no amplificada. Se puede conectar a un auricular o altavoz amplificado.

      Canal izquierdo      : GP18

      Canal derecho : GP19

Zócalo ESP-01

Enchufe para módulo WiFi ESP-01 ESP8266.

Se puede usar para habilitar IoT en su proyecto.

Zócalo para tarjeta Micro SD

Zócalo para tarjeta micro SD.

Frambuesa Pi
Pico GPIO

Tarjeta SD

Modo SD

Modo SPI

GP10

GP11

GP12

GP13

GP14

GP15

CLK

CMD

DAT0

DAT1

DAT2

CD/DAT3

SCK

IDE

SDO

X

X

CSn

* Los pines no utilizados deben configurarse como pull-ups internos.

Zócalo Pi Pico
*MAKER-PI-PICO-NB solamente

Zócalo para Raspberry Pi Pico. Se puede usar con Raspberry Pi Pico con encabezados presoldados .

Tabla 1: Funciones de las tarjetas MAKER-PI-PICO y MAKER-PI-PICO-NB



Recursos


Simplificación de la robótica con Raspberry Pi® RP2040


Cytron Maker Pi RP2040 cuenta con el primer microcontrolador diseñado por Raspberry Pi - RP2040, integrado en una placa controladora de robot. Esta placa viene con controlador de motor de CC de doble canal, 4 puertos de servomotor y 7 conectores de E / S Grove, listos para su próximo proyecto de robot / control de movimiento de bricolaje. Ahora puedes construir un robot, mientras pruebas el nuevo chip RP2040.




Funciones

  • Desarrollado por Rapberry Pi RP2040
    • Procesador Arm Cortex-M0+ de doble núcleo
    • 264 KB de RAM interna
    • 2 MB de memoria Flash
    • exactamente las mismas especificaciones con Raspberry Pi Pico
  • Placa controladora del robot
    • 4x servomotores
    • 2x motores DC con botones de prueba rápida
  • Circuito de potencia versátil
    • Selección automática de energía: USB 5V, LiPo (1 celda) o Vin (3.6-6V)
    • Cargador LiPo / Li-Ion incorporado de 1 celda (protección sobrecargada y descargada)
    • Interruptor de encendido/apagado
  • 13x LED indicadores de estado para pines GPIO
  • 1x zumbador piezoeléctrico con interruptor de silencio
  • 2x Pulsador
  • 2x LED RGB (Neopixel)
  • 7 puertos Grove (opciones de E/S flexibles: digital, analógica, I2C, SPI, UART...)
  • Precargado con CircuitPython de forma predeterminada
  • Agujeros de montaje
    • 4 orificios de montaje de 4,8 mm (compatible con pines LEGO®)
    • 6x orificio de tornillo M3

Tabla comparativa de las dos tarjetas de Cytron



Enlace: Página del producto Maker Pi Pico



Nota: Para confeccionar esta entrada del blog he utilizado documentación y imágenes del la Web de  Cytron

Programación de las tarjetas Raspberry Pi Pico de Cytron

Para la programación de estas tarjetas he utilizado distintas herramientas que ahora paso a enumerar y comentar.

Desde el punto de vista educativo, antes de seleccionar una herramienta siempre debemos evaluar el "costo de aprendizaje" del uso de la herramienta. Basándome en esto voy a clasificar las herramientas de programación en dos grandes grupos: Herramientas graficas y herramientas de código textual.

Herramientas graficas:
Herramientas de código

Aplicación práctica: CONTADOR programado con MicroBlocks

Objetivo

En esta práctica te proponemos que experimentes con un contador. Usaremos dos Botones para crear los pulsos de cuenta, ascendente y descendente, y mostraremos el valor de la cuenta en el display OLED.

Funcionamiento:

 

En esta práctica vamos a crear un contador de acuerdo a las siguientes condiciones:

  • Con el Botón A haremos que el valor de la cuenta aumente: Contador+1
  • Con el Botón B haremos que el valor de la cuenta disminuya: Contador-1
  • El contador podrá contar hasta un máximo de 9 y no podrá contar números negativos
  • La salida del contador se realizará en el display OLED

Entradas salidas:

Usaremos dos dispositivos de tipo Botón y una pantalla OLED


Esquema de montaje:



Programa:

  • Se trata de crear una variable que llamaremos “contador
  • Dentro del bucle del programa estableceremos dos condicionales principales que testearan la acción de pulsar cualquiera de los botones A y B.
  • Dentro del condicional del botón A que es el que incrementa el valor del contador pondremos un condicional que vigilará el valor de la variable. Cuando contador sea mayor que 9 el valor se recoloca en 9 (contador no avanza)
  • Dentro del condicional del botón B que es el que decrementa el valor del contador pondremos un condicional que vigilará el valor de la variable. Cuando contador sea menor que 1 el valor se recoloca en 0 (contador no avanza)


El display OLED quedará tal como se indica en la siguiente figura




Actividades de Ampliación

  1. Crear un contador que cuente hasta 5 y que cada vez que llegue a este valor mande un impulso encendiendo un LED Rojo durante 1 segundo. Colocar el LED en GP3, el Pulsador en GP1 y el OLED en GP4 SDA y GP5 SCL

 

Solución



Práctica perteneciente de mi último trabajo: