You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/asciidoc/microcontrollers/c_sdk/official_sdk.adoc
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,6 +10,18 @@ You can find documentation around the C/{cpp} SDK at;
10
10
11
11
https://datasheets.raspberrypi.com/pico/getting-started-with-pico.pdf[Getting started with Raspberry Pi Pico]:: C/{cpp} development with Raspberry Pi Pico and other RP2040-based microcontroller boards
12
12
13
+
https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf[Connecting to the Internet with Raspberry Pi Pico W]:: Getting Raspberry Pi Pico W online with C/{cpp} or MicroPython
14
+
13
15
https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-c-sdk.pdf[Raspberry Pi Pico C/{cpp} SDK]:: Libraries and tools for C/{cpp} development on RP2040 microcontrollers
14
16
15
17
The API level Doxygen documentation for the Raspberry Pi Pico C/{cpp} SDK is also available https://rptl.io/pico-doxygen[as a micro-site].
18
+
19
+
[NOTE]
20
+
====
21
+
If you are building applications with the C/{cpp} SDK and targeting boards other than the Raspberry Pi Pico, you will need to pass `-DPICO_BOARD=boardname` to CMake. Here `boardname` is the name of your board, e.g. for the Adafruit Feather RP2040 you should pass `-DPICO_BOARD=adafruit_feather_rp2040`. See the https://github.com/raspberrypi/pico-sdk/tree/master/src/boards[`boards/` directory] in the Raspberry Pi Pico SDK, and the https://forums.raspberrypi.com/viewtopic.php?f=147&t=304393[forums], for more information.
22
+
====
23
+
24
+
[NOTE]
25
+
====
26
+
If you are building applications with the C/{cpp} SDK for Raspberry Pi Pico W and, to connect to a network you will need to pass `-DPICO_BOARD=pico_w -DWIFI_SSID="Your Network" -DWIFI_PASSWORD="Your Password"` to CMake.
Copy file name to clipboardExpand all lines: documentation/asciidoc/microcontrollers/c_sdk/your_first_binary.adoc
+5-7Lines changed: 5 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
The first program anyone writes when using a new microcontroller is to blink an LED on and off. The Raspberry Pi Pico comes with a single LED on-board (connected to GPIO pin 25).
6
6
7
-
image:images/Blink-an-LED-640x360.gif[]
7
+
image:images/Blink-an-LED-640x360-v2.gif[]
8
8
9
9
You can blink this on and off by,
10
10
@@ -15,14 +15,13 @@ You can blink this on and off by,
Copy file name to clipboardExpand all lines: documentation/asciidoc/microcontrollers/microcontroller_docs.adoc
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,15 +18,16 @@ https://datasheets.raspberrypi.com/pico/getting-started-with-pico.pdf[Getting st
18
18
19
19
NOTE: While it is not officially supported there is a https://github.com/ndabas/pico-setup-windows[Pico Setup for Windows] installation tool which automates installation of the C/{cpp} SDK on Windows 10.
20
20
21
+
=== Raspberry Pi Pico W
22
+
23
+
https://datasheets.raspberrypi.com/picow/pico-w-datasheet.pdf[Raspberry Pi Pico W Datasheet]:: An RP2040-based microcontroller board with wireless
24
+
25
+
https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf[Connecting to the Internet with Raspberry Pi Pico W]:: Getting Raspberry Pi Pico W online with C/{cpp} or MicroPython
26
+
21
27
=== Software Development
22
28
23
29
https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-c-sdk.pdf[Raspberry Pi Pico C/{cpp} SDK]:: Libraries and tools for C/{cpp} development on RP2040 microcontrollers
24
30
25
31
https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-python-sdk.pdf[Raspberry Pi Pico Python SDK]:: A MicroPython environment for RP2040 microcontrollers
26
32
27
33
The API level Doxygen documentation for the Raspberry Pi Pico C/{cpp} SDK is also available https://rptl.io/pico-doxygen[as a micro-site].
28
-
29
-
[NOTE]
30
-
====
31
-
If you are building applications with the C/{cpp} SDK and targeting boards other than the Raspberry Pi Pico, you will need to pass `-DPICO_BOARD=boardname` to CMake. Here `boardname` is the name of your board, e.g. for the Adafruit Feather RP2040 you should pass `-DPICO_BOARD=adafruit_feather_rp2040`. See the https://github.com/raspberrypi/pico-sdk/tree/master/src/boards[`boards/` directory] in the Raspberry Pi Pico SDK, and the https://forums.raspberrypi.com/viewtopic.php?f=147&t=304393[forums], for more information.
You can program your Pico by connecting it to a computer via USB, then dragging and dropping a file onto it, so we’ve put together a https://micropython.org/download/rp2-pico/rp2-pico-latest.uf2[downloadable UF2] file to let you install MicroPython more easily.
3
+
You can program your Pico by connecting it to a computer via USB, then dragging and dropping a file onto it so we’ve put together a downloadable UF2 file to let you install MicroPython more easily.
4
4
5
-
image::images/MicroPython-640x360.gif[]
5
+
image::images/MicroPython-640x360-v2.gif[]
6
6
7
-
. Download the https://micropython.org/download/rp2-pico/rp2-pico-latest.uf2[MicroPython UF2] file.
7
+
Download the correct MicroPython UF2 file for your board:
8
+
9
+
* https://micropython.org/download/rp2-pico/rp2-pico-latest.uf2[Raspberry Pi Pico]
10
+
11
+
* https://datasheets.raspberrypi.com/soft/micropython-firmware-pico-w-290622.uf2[Raspberry Pi Pico W] (with https://makeblock-micropython-api.readthedocs.io/en/latest/public_library/Third-party-libraries/urequests.html[urequests] and https://docs.micropython.org/en/latest/reference/packages.html[upip] preinstalled)
12
+
13
+
Then go ahead and:
8
14
9
15
. Push and hold the BOOTSEL button and plug your Pico into the USB port of your Raspberry Pi or other computer. Release the BOOTSEL button after your Pico is connected.
10
16
11
17
. It will mount as a Mass Storage Device called RPI-RP2.
12
18
13
19
. Drag and drop the MicroPython UF2 file onto the RPI-RP2 volume. Your Pico will reboot. You are now running MicroPython.
14
20
15
-
. You can access the REPL via USB Serial. Our MicroPython documentation contains step-by-step instructions for connecting to your Pico and programming it in MicroPython.
21
+
. You can access the REPL via USB Serial.
22
+
23
+
The https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-python-sdk.pdf[Raspberry Pi Pico Python SDK] book contains step-by-step instructions for connecting to your Pico and programming it in MicroPython using both the command line and the https://thonny.org/[Thonny] IDE.
Copy file name to clipboardExpand all lines: documentation/asciidoc/microcontrollers/micropython/what-is-micropython.adoc
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,6 +10,7 @@ MicroPython is a full implementation of the Python 3 programming language that r
10
10
You can find information on the MicroPython port to RP2040 at;
11
11
12
12
https://datasheets.raspberrypi.com/pico/raspberry-pi-pico-python-sdk.pdf[Raspberry Pi Pico Python SDK]:: A MicroPython environment for RP2040 microcontrollers
13
+
https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf[Connecting to the Internet with Raspberry Pi Pico W]:: Getting Raspberry Pi Pico W online with C/{cpp} or MicroPython
13
14
https://docs.micropython.org/en/latest/rp2/quickref.html[RP2 Quick Reference]:: The official documentation around the RP2040 port of MicroPython
14
15
https://docs.micropython.org/en/latest/library/rp2.html[RP2 Library]:: The official documentation about the `rp2` module in MicroPython
The Raspberry Pi Pico family consists of Raspberry Pi Pico (left), Pico H (middle), and Pico W (right).
6
+
7
+
[[technical-specification]]
8
+
== Raspberry Pi Pico and Pico H
2
9
3
10
Raspberry Pi Pico is a low-cost, high-performance microcontroller board with flexible digital interfaces. Key features include:
4
11
5
12
* xref:rp2040.adoc#welcome-to-rp2040[RP2040] microcontroller chip designed by Raspberry Pi in the United Kingdom
6
13
* Dual-core Arm Cortex M0+ processor, flexible clock running up to 133 MHz
7
14
* 264kB of SRAM, and 2MB of on-board Flash memory
8
-
* Castellated module allows soldering direct to carrier boards
9
15
* USB 1.1 with device and host support
10
16
* Low-power sleep and dormant modes
11
17
* Drag-and-drop programming using mass storage over USB
@@ -16,16 +22,46 @@ Raspberry Pi Pico is a low-cost, high-performance microcontroller board with fle
16
22
* Accelerated floating-point libraries on-chip
17
23
* 8 × Programmable I/O (PIO) state machines for custom peripheral support
18
24
19
-
=== Pinout and Design Files
25
+
The Raspberry Pi Pico comes as a castellated module allows soldering direct to carrier boards, while the Pico H comes with pre-soldered headers.
20
26
21
-
image::images/Pico-R3-SDK11-Pinout.svg[]
27
+
NOTE: Both boards have a three pin Serial Wire Debug (SWD) header. However, the Pico H has this broken out into a small, keyed, https://datasheets.raspberrypi.com/debug/debug-pin-connector-specification.pdf[3-pin connector] while the Pico has three castellated through-hole pins adjacent to the edge of the board.
22
28
23
-
* Download the https://datasheets.raspberrypi.com/pico/Pico-R3-A4-Pinout.pdf[Pinout Diagram] (PDF)
29
+
=== Pinout and Design Files
24
30
25
-
=== Design Files
31
+
image::images/pico-pinout.svg[]
26
32
33
+
* Download the https://datasheets.raspberrypi.com/pico/Pico-R3-A4-Pinout.pdf[Pinout Diagram] (PDF)
NOTE: More information on Fritzing is available on the https://fritzing.org/[fritzing.org] web site.
39
+
40
+
== Raspberry Pi Pico W
41
+
42
+
Raspberry Pi Pico W adds on-board single-band 2.4GHz wireless interfaces (802.11n) using the Infineon CYW4343 while retaining the Pico form factor. The on-board 2.4GHz wireless interface has the following features:
43
+
44
+
* Wireless (802.11n), Single-band (2.4 GHz)
45
+
* WPA3
46
+
* Soft Access Point supporting up to 4 clients
47
+
48
+
The antenna is an onboard antenna licensed from ABRACON (formerly ProAnt). The wireless interface is connected via
49
+
SPI to the xref:rp2040.adoc#welcome-to-rp2040[RP2040] microcontroller.
50
+
51
+
Due to pin limitations, some of the wireless interface pins are shared. The CLK is shared with VSYS monitor, so only
52
+
when there isn’t an SPI transaction in progress can VSYS be read via the ADC. The Infineon CYW43439 DIN/DOUT and
53
+
IRQ all share one pin on the RP2040. Only when an SPI transaction isn’t in progress is it suitable to check for IRQs. The
54
+
interface typically runs at 33MHz.
55
+
56
+
For best wireless performance, the antenna should be in free space. For instance, putting metal under or close by the
57
+
antenna can reduce its performance both in terms of gain and bandwidth. Adding grounded metal to the sides of the
58
+
antenna can improve the antenna’s bandwidth.
59
+
60
+
=== Pinout and Design Files
61
+
62
+
image::images/picow-pinout.svg[]
63
+
64
+
* Download the https://datasheets.raspberrypi.com/picow/PicoW-A4-Pinout.pdf[Pinout Diagram] (PDF)
0 commit comments