Leer Primero

Como se utiliza este blog?

viernes, 12 de febrero de 2021

Nuevo Microcontrolador Raspberry Pi Pico

Bienvenido a mi blog, hoy hablaremos un poco de la nueva Raspberry Pi Pico. Raspberry Foundation, la institución encargada del popular miniordenador que ha ayudado a expandir GNU/Linux por el mundo, ha anunciado la comercialización de una variante, la nueva Raspberry Pi Pico, la cual es una solución que nos permitirá trabajar en sistemas embebidos de todo tipo y aplicarlo a desarrollos tan ambiciosos como dispositivos médicos o coches autónomos, la RPi Foundation esta iniciando a fabricar sus propios procesadores, está gobernada por un pequeño SoC que ha sido diseñado por los propios responsables de este proyecto en Reino Unido (UK). Se trata del Microcontrolador RP2040, que cuenta con un procesador dual core ARM Cortex M0+ de 32 bits funcionando a máx 133 MHz, acompañado de 264KB de RAM y 2MB de almacenamiento integrado. Ese SoC representa el nuevo papel de The Raspberry Pi Foundation como fabricante de semiconductores, y, en concreto, de SoC.

Dimensiones Reales de la Raspberry Pi Pico en mm

El chip está fabricado con una litografía de 40 nm de TSMC, y además de esos dos núcleos destaca por tener una unidad PIO (Programmable I/O) que permite, por ejemplo, emular interfaces como las de las tarjetas SD o VGA, con esas especificaciones lógicamente las prestaciones son mucho más limitadas que las de las modernas Raspberry Pi 4, y de hecho su orientación es también muy distinta: la idea es aprovecharla para proyectos de robótica, estaciones meteorológicas y otros proyectos de electrónica que necesitan de un microcontrolador económico pero potente y más completo. Desde un punto de vista meramente practico es más tipo Arduino que Raspberry Pi. Recordemos que la Taiwan Semiconductor Manufacturing Company Limited o TSMC, es la empresa de fundición de semiconductores más grande del mundo, con la sede y sus principales operaciones localizadas en el Parque científico e industrial de Hsinchu en Hsinchu, Taiwán. Es la primera empresa del mundo dedicada exclusivamente a la fabricación de semiconductores.​ Además de semiconductores, la compañía también ha estado investigando sobre iluminación e industrias relacionadas con la energía solar y ahora ha sido contratada por la fundación raspberry para la creación del RP2040.


Características Técnicas Principales:

  • Microcontrolador RP2040 diseñado por Raspberry Pi y fabricado por TSMC, encapsulado QFN-56 de 7x7mm.
  • Basado en un Dual ARM Cortex M0+ de doble núcleo de 32 bits a máx. 133 MHz que permite el desarrollo de Machine Learning a través de TinyML, TensorFlow Lite o Edge Impulse.
  • ROM: 16 kB de memoria de solo lectura ROM en el chip.
  • SRAM en chip de 264kB en seis bancos independientes.
  • Soporta hasta 16 MB de memoria Flash fuera del chip a través del bus QSPI (Quad Serial Peripheral Interface) dedicado, inicialmente viene con un chip QSPI FLASH externo de 2MB.
  • Controlador DMA.
  • LDO programable On-chip para generar voltaje central.
  • Puerto micro-USB B para energía y datos (y para reprogramar la Flash).
  • 2 PLL on-chip para generar USB y relojes centrales.
  • Controlador USB 1.1 y PHY integrado, con soporte para dispositivos y host.
  • Modo de bajo consumo e hibernación.
  • Programación drag-and-drop usando almacenamiento masivo por USB.
  • 30 pines GPIO, 4 de los cuales se pueden utilizar como entradas analógicas.
  • 3 canales de SAR ADC de 12 bits con una velocidad de muestreo de 500 kilomuestras por segundo (0.5 MSa/s). También hay un cuarto canal ADC, que está conectado a un sensor de temperatura interno, integrado en el RP2040.
  • 2 SPI, 2 I2C, 2 UART, 3 ADC de 12-bit y 500kps, 16 canales PWM.
  • 6 I/O dedicadas para SPI Flash (soportando XIP).
  • 1 RTC reloj en tiempo real, que se puede utilizar para generar interrupciones en momentos específicos.
  • Librerías de coma flotante on-chip.
  • Puerto de 3-pines para depuración tipo ARM Serial Wire Debug (SWD).
  • Puede emular interfaces VGA y tarjetas SD.
  • 8 puertos programables I/O (PIO) para trabajar con máquinas de estado finito [Que es un modelo computacional que realiza cómputos en forma automática sobre una entrada para producir una salida. La finalidad de los autómatas finitos es la de reconocer lenguajes regulares, que corresponden a los lenguajes formales más simples según la Jerarquía de Chomsky].

Test Point - Puntos de prueba

La Raspberry Pi Pico y Pico W, tienen seis puntos de prueba (TP1-TP6) en la parte posterior a los que se puede acceder si es necesario, como cuando se usa la placa como módulo de montaje superficial.

Estos son:

TP1 – Tierra (tierra estrechamente acoplada para señales USB diferenciales)

TP2 – DM USB

TP3 – USB DP

TP4 – Pin WL_GPIO1/SMPS PS (no usar)

TP5 – WL_GPIO0/LED (no se recomienda su uso)

TP6 – BOTASEL

Los ingenieros de Raspberry Pi también utilizan estos puntos de prueba para comprobar rápidamente que el Pico W funciona después de haber sido ensamblado en fábrica.

El puerto SWD

A medida que los dispositivos se volvieron más complejos, aumentó la dificultad para hacerles debug o depuración, es decir, leer las señales internas de los microcontroladores. En consecuencia se tuvo que estandarizar las señales de prueba y se creó el Joint Tag Action Group (JTAG) Grupo de Acción de Etiqueta Conjunta.

Esto permitió establecer estándares que pueden detectar errores utilizando solo unos cuantos pines. No todos los microcontroladores implementan JTAG; por ejemplo el ATMEGA328P del Arduino no lo tiene, pero la Raspberry Pi Pico y el ESP32 sí. Los tres pines en el borde inferior de la Pico son para conectar un depurador. El Serial Wire Debug (SWD Depuración de cables serie) es una interfaz JTAG alternativa de 3 pines (SWDIO/GND/SWCLK). SWD utiliza un protocolo de cable bidireccional estándar de CPU ARM, definido en la interfaz de depuración de ARM v5. Esto permite que el depurador se convierta en otro maestro de bus AMBA para el acceso a la memoria del sistema y a los registros periféricos o de depuración.

Podemos alimentar la Raspberry Pi Pico a través del puerto micro USB, o podemos usar el pin VSYS GPIO para proporcionar energía entre un rango de +1.8V a +5.5Vcc

Esta pequeña placa no cuenta con un sistema operativo como tal que la gobierne: simplemente ejecuta los programas que pidamos que ejecute, y que pueden estar programados en lenguajes como MicroPython o C y que podemos lanzar desde un ordenador host como una PC o una Mac, por ejemplo. Junto con el nuevo dispositivo, la fundación ha hecho público un SDK basado en C, accesible desde cualquiera de los principales entornos de desarrollo, como puede ser Visual Studio Code; además de otro basado en Python 3, recordemos que MicroPython es una versión reducida de Python hecha especialmente para microcontroladores.

Esta pequeña placa hace uso de un GPIO de +3,3V que la habilita para trabajar con muchos otros componentes que trabajan a voltajes de 3 y 5V, y destaca por una eficiencia fantástica: para pequeños proyectos es mucho mejor candidata que una Raspberry Pi convencional, que consume bastante más energía, y que probablemente está sobredimensionada para esos escenarios.

Su pequeño tamaño y su reducido precio actual hacen que NO contemos con conectividad inalámbrica en este modelo en comparación con familias como la esp32 de Espressif System, la cual ya cuenta con wifi y bluetooth integrados. Así que esperamos que estas características sean adicionadas en futuras versiones como Raspberry Pi Pico W. Tampoco cuenta con un botón de reset físico como estamos acostumbrados en Arduino, ya que el botón que posee la pico es simplemente para cargar el bootloader, si deseas hacer un reset deberías utilizar un pulsador entre GND y el pin RUN.

Recordar que ya hay placas entrenadoras o tarjetas de desarrollo para Raspberry Pi Pico y se espera que los makers desarrollen mas, para experimentación y aprendizaje universitario:


https://01001000.xyz/2021-02-13-Raspberry-Pi-Pico-dev-board-Kiwikit/


La Raspberry Pi Pico puede emular por software un puerto I2S mediante el pin 31 (DIN) pin 32 (BCK_PWM1) y pin 34 (LRCLK_PWM0), I2S conocido también como Inter-IC Sound, Integrated Interchip Sound, o IIS, es un estándar de interfaz eléctrica de bus serial usado para interconectar circuitos de audio digital.​ El bus I2S separa las señales de datos seriales y de reloj independientes, lo que resulta en menores cantidades de fluctuación (jitter en inglés) de la señal, que en sistemas que recuperan el reloj de la señal de datos.

Destacar que la RPi Foundation ha iniciado en la fabricación de sus propios SoC, su propio silicio personalizado y esto augura un gran futuro tecnológico. También resaltar que Raspberry Pi ha iniciado las ventas de unidades individuales y por carrete de su SoC RP2040 y ahora están disponibles a través de los revendedores aprobados por Raspberry Pi (compra tu chip RP2040 Aquí).



Compra tu Raspberry Pi Pico AQUI


Una de las grandes ventajas que tendremos al trabajar esta placa Raspberry Pi Pico con MicroPython, será que el código que generemos, nos funcionará tanto en esp32, como en la pico, además desde este sitio web podremos descargar la última versión de firmware actualizada.


También algunas empresas y maker's han lanzado los primeros clones de la Raspberry Pi Pico, los cuales tienen conector USB Type C, 16 MB de memoria flash y botón de reset, más que clones, son nuevas mejoras (obviamente no veremos el nombre Raspberry, ni el logo, ya que son marcas registradas):

Original a la derecha Vs clones


Finalmente observemos un "Hola Mundo" o "Blynk" de encender y apagar un led con Raspberry Pi Pico con Micropython, cortesía del simulador online gratuito Wokwi:



Interesante opción para Raspberry Pi Pico W con soporte para BASIC y wifi https://geoffg.net/webmite.html


Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.


Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.



También te puede interesar:


Raspberry Pi Pico/W PinOut

Arduino NANO v3

Arduino UNO WiFi Rev2

Nueva Placa Arduino Nano RP2040 Connect

Nueva Raspberry Pi 400

Nueva Raspberry Pi 4 con 8 GB de RAM

Descarga Aquí Tus Wallpaper Raspberry Pi para PC

Compra Aquí tu Raspberry Pi 4 Modelo B 8GB

Carcasas Raspberry Pi que puedes imprimir en 3D

Convierte fácilmente una Fuente ATX de PC en una Fuente para alimentar tus proyectos Arduino y/o Raspberry Pi

No hay comentarios.:

Publicar un comentario