The electronic industry uses embedded systems with powerful, low-cost MCUs or microcomputer units. This helps product development by adding capabilities like machine learning and rapid prototyping while supporting many types of tests. In most cases, the designer must understand the MCU in depth while also mastering low-level programming languages. Often, development boards are way too expensive, not readily available, and it may be difficult to get them up and running. As an alternative, designers can go for the Raspberry Pi Pico.
The Raspberry Pi Pico is a readily available, low-cost development board. It uses the RP2040 MCU which offers a wide range of capabilities to the designer. Additionally, it has many extension boards and software development kits that make the task of an embedded system designer easy.
First introduced in 2021, designers can use the Raspberry Pi Pico as a standalone development board. They can also integrate the board into a system by soldering the edge connectors onto a carrier board. The Pico is popular mainly because of its sub $5 cost, which is way less than the $20+ price of other similar development boards.
The RP2040 MCU that the Pico uses is a dual-core processor of the ARM Cortex family. It operates at 133 MHz. It includes 264 kB of SRAM and an external 2 MB flash chip interfacing with the MCU over a quad serial peripheral interface. A user LED, pushbutton, and crystal oscillator are on the board. The user can configure the pushbutton to boot the processor directly or direct it to a bootloader. They can use the crystal oscillator to act as a PLL or phase-locked loop for creating a high-speed CPU clock.
The Pi Pico offers an extensive ecosystem, where developers can use either the C or the MicroPython language to write applications for the board. In reality, there are three types of Pi Pico boards to choose from—the SC0915 with a standard configuration, the SC0197 with the header connectors, and the SC0918 with a low-cost Wi-Fi chip.
Each of the above boards has the same general footprint. The edge connectors are 40-pins providing connection options for peripherals. Among the connections available are those for power, ground, UART or universal asynchronous receiver and transmitter, GPIO or general purpose input and output, PWM or pulse width modulation, ADC or analog to digital converter, SPI or serial peripheral interface, I2C or inter-integrated circuit interface, and debugging.
There are several options for using the Pi Pico for rapid prototyping. One can use a breadboard and populate the headers, but this may result in a mess of wires. The other neater option is to use breakout boards to expand the edge connectors and make them available for easy interfacing.
The Raspberry Pi Pico ecosystem offers MicroPython as an alternative to the older C language. This is a modern language that most designers are already familiar with. They use API or application programming interfaces for accessing hardware and abstracting out the low-level details of the MCU and its related hardware.