|
| 1 | +.. zephyr:board:: rpi_pico2 |
| 2 | +
|
| 3 | +Overview |
| 4 | +******** |
| 5 | + |
| 6 | +The Raspberry Pi Pico 2 is the second-generation product in the Raspberry Pi |
| 7 | +Pico family. From the `Raspberry Pi website <https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html>`_ is referred to as Pico 2. |
| 8 | + |
| 9 | +There are many limitations of the board currently. Including but not limited to: |
| 10 | +- The Zephyr build only supports configuring the RP2350A with the Cortex-M33 cores. |
| 11 | +- As with the Pico 1, there's no support for running any code on the second core. |
| 12 | + |
| 13 | +Hardware |
| 14 | +******** |
| 15 | + |
| 16 | +- Dual Cortex-M33 or Hazard3 processors at up to 150MHz |
| 17 | +- 520KB of SRAM, and 4MB of on-board flash memory |
| 18 | +- USB 1.1 with device and host support |
| 19 | +- Low-power sleep and dormant modes |
| 20 | +- Drag-and-drop programming using mass storage over USB |
| 21 | +- 26 multi-function GPIO pins including 3 that can be used for ADC |
| 22 | +- 2 SPI, 2 I2C, 2 UART, 3 12-bit 500ksps Analogue to Digital - Converter (ADC), 24 controllable PWM channels |
| 23 | +- 2 Timer with 4 alarms, 1 AON Timer |
| 24 | +- Temperature sensor |
| 25 | +- 3 Programmable IO (PIO) blocks, 12 state machines total for custom peripheral support |
| 26 | + |
| 27 | + - Flexible, user-programmable high-speed IO |
| 28 | + - Can emulate interfaces such as SD Card and VGA |
| 29 | + |
| 30 | +Supported Features |
| 31 | +================== |
| 32 | + |
| 33 | +The ``rpi_pico2/rp2350a/m33`` board target supports the following |
| 34 | +hardware features: |
| 35 | + |
| 36 | +.. list-table:: |
| 37 | + :header-rows: 1 |
| 38 | + |
| 39 | + * - Peripheral |
| 40 | + - Kconfig option |
| 41 | + - Devicetree compatible |
| 42 | + * - NVIC |
| 43 | + - N/A |
| 44 | + - :dtcompatible:`arm,v8m-nvic` |
| 45 | + * - ADC |
| 46 | + - :kconfig:option:`CONFIG_ADC` |
| 47 | + - :dtcompatible:`raspberrypi,pico-adc` |
| 48 | + * - Clock controller |
| 49 | + - :kconfig:option:`CONFIG_CLOCK_CONTROL` |
| 50 | + - :dtcompatible:`raspberrypi,pico-clock-controller` |
| 51 | + * - Counter |
| 52 | + - :kconfig:option:`CONFIG_COUNTER` |
| 53 | + - :dtcompatible:`raspberrypi,pico-timer` |
| 54 | + * - GPIO |
| 55 | + - :kconfig:option:`CONFIG_GPIO` |
| 56 | + - :dtcompatible:`raspberrypi,pico-gpio` |
| 57 | + * - HWINFO |
| 58 | + - :kconfig:option:`CONFIG_HWINFO` |
| 59 | + - N/A |
| 60 | + * - I2C |
| 61 | + - :kconfig:option:`CONFIG_I2C` |
| 62 | + - :dtcompatible:`snps,designware-i2c` |
| 63 | + * - PWM |
| 64 | + - :kconfig:option:`CONFIG_PWM` |
| 65 | + - :dtcompatible:`raspberrypi,pico-pwm` |
| 66 | + * - SPI |
| 67 | + - :kconfig:option:`CONFIG_SPI` |
| 68 | + - :dtcompatible:`raspberrypi,pico-spi` |
| 69 | + * - UART |
| 70 | + - :kconfig:option:`CONFIG_SERIAL` |
| 71 | + - :dtcompatible:`raspberrypi,pico-uart` |
| 72 | + |
| 73 | +Connections and IOs |
| 74 | +=================== |
| 75 | + |
| 76 | +The default pin mapping is unchanged from the Pico 1 (see :ref:`rpi_pico_pin_mapping`). |
| 77 | + |
| 78 | +Programming and Debugging |
| 79 | +************************* |
| 80 | + |
| 81 | +As with the Pico 1, the SWD interface can be used to program and debug the |
| 82 | +device, e.g. using OpenOCD with the `Raspberry Pi Debug Probe <https://www.raspberrypi.com/documentation/microcontrollers/debug-probe.html>`_ . |
| 83 | + |
| 84 | +References |
| 85 | +********** |
| 86 | + |
| 87 | +.. target-notes:: |
0 commit comments