📘Learn Digital Making weekly on Telegram. Join Channel Now📱

Raspberry Pi RP2040 MCU IC - Single Unit

RM4.50
Cashback: 3%
  • 13" Reel - 3400 pcs
  • 7" Reel - 500 pcs
  • Cut Tape - Single unit
Availability: 200

Buy locally from a partner

Country:
Description

Note: This is the Raspberry Pi RP2040 Dual-core ARM Cortex-M0+ Microcontroller IC.

Note: Please choose the preferred packaging from the options:
 

 


 

The 1st MCU Chip from Raspberry Pi - RP2040

 

Raspberry Pi's 1st MCU, designed and produced from the ground up by Raspberry Pi Engineers. It is being launched on the Raspberry Pi Pico in January 2021. And now, it's available for everyone to make their own product!

 

Why "RP2040"?

Well, this explained it all:

In layman terms: Raspberry Pi Dual Core ARM Cortex-M0+, on-chip 264KByte RAM, with no on-chip Flash

 

What is Raspberry Pi RP2040?

Well, RP2040 is a dual-core ARM Cortex-M0+ microcontroller silicon with a flexible clock up to 133MHz. A microcontroller is a brain for development boards such as Arduino UNO, yet RP2040 offers way more powerful features! A microcontroller is the main IC that allows you to program for physical computing projects where it controls anything from small electronic components, LEDs, motors; reading information from sensors, or communicate with other microcontrollers.

We probably have lots of microcontrollers in our house already. For example, a washing machine is controlled by a microcontroller; most likely our watch is too; there is also one in a microwave. And one of the closest examples to a digital maker might be the 3D printer. The controller board has a microcontroller on it. Of course, all these microcontrollers already have their programs for the applications.

 

 

Dual-Core ARM Cortex M0+

 

It comes with not one, but two cores (dual-core) of a 32-bit ARM Cortex M0+ processor. A flexible clocking system, with configurable up to a maximum speed of 133MHz! This tiny MCU comes with a whopping 264 Kbyte of SRAM, built-in. And offers an option for designers to match external Quad-SPI Flash of up to 16 MByte, and eXecute in Place (XIP). Large RAM and Flash size enable you to utilize high-level programming languages like MicroPython for this microcontroller.

 

 

USB 1.1 PHY (Host and Device Ready)

RP2040 contains a USB 2.0 controller that can operate as either:

  • A Full-Speed device (12 Mbit/s)
  • A host that can communicate with both Low Speed (1.5 Mbit/s) and Full-Speed devices. This includes multiple downstream devices connected to a USB hub.

RP2040 comes with an integrated USB 1.1 PHY which interfaces the USB 2.0 controller with the DP and DM pins of the chip. With this, the RP2040 has provided ease of interface to computers. This has been widely used on Raspberry Pi Pico, just download the UF2 file, drag and drop in the drive (Mass Storage), and you can program the RP2040 with MicroPython or CircuitPython, no additional programmer is needed. Neat!

 

Peripheral Rich MCU

Block Diagram of RP2040

 

With 30 GPIO (4 reserves for QSPI with  External Flash), there are plenty of peripherals for many different applications. Among these 26 GPIOs, there are:

  • 5 x 12-bit ADC with 500ksps (kilo sample per second)
    • 4 x ADC extended to GPIO
    • 1 x ADC tied to an internal temperature sensor
  • 2 x UART
  • 2 x SPI
  • 2 x I2C
  • 16 x PWM pin
  • Internally, it also comes with 1 x Timer with 4 alarms and 1 x Real Time Counter
  • 2 x High-Speed Programmable IO (PIO) blocks that are flexible and user-programmable. It can emulate interfaces such as the SD card interface or VGA.

 

246 KByte Built-in SRAM and up to 16 MByte External Flash

With on-chip 264 KByte of SRAM and external QSPI Flash up to 16 MByte, Raspberry Pi RP2040 will never prompt you about not enough memory :) Besides, the large size of RAM and Flash also enables applications to be supported with higher programming languages such as MicroPython, CircuitPython, or even Javascript.

 

Multiple Programming Languages

MicroPython, CircuitPython, C, and C++, and C alike in Arduino IDE

As many platforms are now working to build the ecosystem around the Raspberry Pi RP2040, more programming language is onboard to support it. Initially, MicroPython, C, and C++. Now CircuitPython from Adafruit is also being developed to support RP2040. Not to forget Arduino IDE also supports the program of RP2040 with the launch of Arduino Nano RP2040 Connect. 

 

As Python is the official programming language of Raspberry Pi OS, MicroPython is chosen to be one of the programming languages for Raspberry Pi RP2040. MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimized to run on microcontrollers and in constrained environments.

Programming loading of MicroPython and CircuitPython into Raspberry Pi RP2040 is effortless, as it is being shown with Raspberry Pi Pico. Just connect the RP2040 to any computer (including Raspberry Pi SBC) via USB, then drag and drop the file onto it. Yes! It is that easy! And the UF2 files for MicroPython or CircuitPython are ready for everyone to download and use.

 

High-Speed Programmable Input/Output

One of the features that make RP2040 different from most other microcontroller IC is the Programmable Input/Output block. There are two PIO blocks and they are unique for RP2040, special!

Check out this video about PIO from the Raspberry Pi team:

Just imagine you want to develop a library or driver for a certain protocol that is not standard, for example, to drive WS2812B or SK6812 (NeoPixel Compatible). It requires accurate timing to send RGB information. Conventionally, many have to drill down to assembly language and bit-bang the IO with accurate instruction set timing to do that! Now, you can utilize the PIO to do that from a high-level programming language. 

PIO allows you to create additional hardware interfaces or even new types of interfaces. If you’ve ever looked at the peripherals on a microcontroller and thought “I need four UARTs and I only have two,” or “I’d like to output DVI video,” or even “I need to communicate with this accursed serial device I found, but there is no hardware support anywhere,” then you will have fun with PIO.

Here is another detailed explanation about Programmable I/O from stacksmashing:

 

 

 

 

What Will You Need to Get Started?

Get yourself the development board based on Raspberry Pi RP2040 will help you unleash the power of it:

 

 

 

Warranty Period: 12 months
Features

Features and Specs:

  • 1st Microcontroller Silicon designed by Raspberry Pi (Raspberry Pi Silicon)
  • Proven with Raspberry Pi Pico
  • Dual-Core, 32-bit ARM Cortex M0+ Processor
  • Flexible clock, configurable max to 133MHz
  • On-chip 264KB of SRAM
  • Support up to 16MB of external Flash (QSPI)
  • 12 Channels of DMA (Direct Memory Access)
  • Ready with USB 1.1 PHY, supports Host and Device
  • Connected to the USB port and it will appear as USB Mass Storage by default, no driver is needed
  • Supports MicroPython, CircuitPython, C, C++, C alike in Arduino IDE Programming Language
  • Drag and Drop Program loading method, just like moving file in Windows Explorer
  • Peripheral rich:
    • 30 GPIO (4 reserves for QSPI interface to external Flash IC)
      • 26 multifunction 3.3V General Purpose I/O (GPIO)
      • 23 GPIO are digital-only
      • 5 x 12-bit ADC capable of 500Ksps, Analog to Digital Converter
        • 4 x ADC extended to GPIO
        • 1 x ADC tied to an internal temperature sensor
    • 2 x UART (Universal Asynchronous Receiver/Transmitter)
    • 2 x SPI (Serial Peripheral Interface)
    • 2 x I2C (Inter IC)
    • 16 x PWM (Pulse Width Modulation)
    • 1 x Timer with 4 alarms
    • 1 x Real Time Counter
    • 2 x Programmable IO (PIO) blocks that can emulate high-speed interfaces such as SD card or VGA
  • 3-pin ARM Serial Wire Debug (SWD) port
  • Accelerated floating-point libraries on-chip
  • Comprehensive SDK, software examples, and documentation
  • QFN-56 package:

Packing List
  • 1 x Raspberry Pi RP2040 IC in 13" Reel/Tape for SMT Machine - 3400 pcs

 

  • 1 x Raspberry Pi RP2040 IC in 7" Reel/Tape for SMT Machine - 500 pcs

 

  • 1 x Raspberry Pi RP2040 Cut Tape - Single Unit (sealed in ESD pack)

Resources

 

 

Q & A (1)

Ask a question

Reviews
  • 5 out of 5
                  
  • 5
    100%
  • 4
    0%
  • 3
    0%
  • 2
    0%
  • 1
    0%
Sort By:

Tags: first microcontroller, Raspberry Pi, IC on Pico, Pi-Pico, RP2040, Cortex M0+, 133MHz, Programmable IO, DMA, dual core