RP2040: the microcontroller, perfected RP2040 is our idea of the perfect mid-range microcontroller, based on years of using other vendors devices in our own products and projects. It stands out in three key ways: Two fast CPU cores. A pair of ARM Cortex-M0 cores, clocked at 133 MHz, provide ample integer performance. Use one core to run application code, and the other to supervise hardware; or run application code on both cores with FreeRTOS or MicroPython. Plenty of RAM. With 264KB of RAM, you can concentrate on implementing features, not optimizing your application for size. A fully connected switch connects ARM cores and DMA engines to six independent RAM banks, allowing you to squeeze every last drop of performance out of the system. Flexible I/O. We provide all the usual interfaces: hardware UARTs, SPI and I2C controllers, USB 1.1, and a four-channel ADC. But its the programmable I/O (PIO) subsystem that makes RP2040 stand out, enabling software implementations of protocols including SDIO, DPI, I2S, and even DVI-D. All of this is packed into 2 mm^2 of 40 nm silicon, in a 77 mm QFN56 package.