
While the code looks and feels very similar to what you would write for lets say an Arduino board, compiling it and to run on the Pico is a different case. The trick is to compile this code and build the required UF2 file. This code will include the stdlib.h header file from the Pi Pico C++ SDK and will blink the built-in LED every 500ms. */ #include "pico/stdlib.h" int main () #endif * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. The basic code for a LED blink example is listed below. Programming microcontrollers has long been done in C and C++ and the Pi Pico forms no exception to this. One bright point is that Arduino will also be releasing a board based on the RP2040 so there is hope that the Arduino IDE will support it later down the line and enable hassle free C++ development for the Pi Pico and other RP2040 based microcontrollers.

The Pico has several development options available. It will show up as a storage device, drag the UF2 file onto it and the device will reboot and the flashing is completed. The process of doing this is very simple, simply press the BOOTSEL button when connecting the Pico to your computer. This is accomplished by utilizing UF2 files. One of the nice features is that the Pico supports drag and drop programming/flashing. With 26 GPIO boards there are loads of options to connect sensors, screens, inputs and outputs. The dual core chip give a lot of flexibility to create project which require a bit more processing power, as do the PIO state machines. In this blog post we will be focussing on the Pi Pico implementation of the RP2040. There are other boards with varying pinouts and functions available with this microcontroller. The Pi Pico is built around the RP2040, the actual microcontroller that powers it. The small footprint of microcontrollers like the Pico allows it to be integrated into DIY projects easily. These specs are in line with some of the more popular microcontrollers like teensy and ESP32 devices.

8 × Programmable I/O (PIO) state machines for custom peripheral support.1 × USB 1.1 controller and PHY, with host and device support.2 × UART, 2 × SPI controllers, 2 × I2C controllers, 16 × PWM channels.26 multi-function GPIO pins, including 3 analogue inputs.

RP2040: Dual-core Arm Cortex-M0+ processor, flexible clock running up to 133 MHz.The main technical specifications of the Pi Pico are:
