Học

Raspberry Pi Pico pinout: every pin, its PWM slice and the power pins

Cơ bản

Hoặc xem mọi bài học.

  • 503linh kiện trên bàn làm mạch
  • 44bo mạch đang chạy
  • 1.00xthời gian thực, trên mọi bo mạch
Raspberry Pi Pico: đèn chạylive0.000 s 0.00x
Nhấp để mở trong trình soạn thảo
Một chấm quét qua lại dọc sáu LED ở GP2 đến GP7.

Raspberry Pi Pico có bốn mươi chân, hai mươi sáu trong số đó là GPIO, và sơ đồ chân của nó đơn giản hơn hầu hết: mọi GPIO đều làm PWM được, ba chân là analog, và không chân nào là chân strapping khiến bo mạch không khởi động. Trang này liệt kê cả bốn mươi chân với những gì mỗi chân làm được, slice và kênh PWM phía sau mỗi GPIO, các chân nguồn và giới hạn của chúng, LED trên bo mạch và nên dùng chân nào cho việc gì.

Mạch ở trên là một Pico trong Mokxi quét một chấm dọc sáu LED ở GP2 đến GP7, mỗi LED một GPIO. Bảng được đọc từ cùng mô hình bo mạch mà trình mô phỏng chạy, và ở chỗ trình mô phỏng làm ít hơn RP2040, trang nói rõ.

Mọi chân trên header

Với ổ cắm USB ở trên, chân vật lý số 1 là GP0 ở góc trên bên trái, và các chân đếm xuống dọc bên trái tới 20 rồi lên dọc bên phải từ 21 đến 40, nên VBUS là chân 40 ở góc trên bên phải. Bên trái là GP0 đến GP15 với một chân GND sau mỗi bốn GPIO. Bên phải, từ trên xuống, là VBUS, VSYS, GND, 3V3_EN, 3V3, ADC_VREF, GP28, AGND, GP27, GP26, RUN, GP22, GND, rồi GP21 xuống GP16 với một GND giữa GP18 và GP17.

Trong code, một chân là số GP của nó: digitalWrite(15, HIGH) điều khiển GP15, và A0 đến A2 là GP26 đến GP28. Cột PWM nêu tên slice và kênh: "PWM 2A" là slice 2, kênh A. Các chân I2C và SPI là mặc định; RP2040 có thể đặt mỗi bus lên vài chân khác.

Raspberry Pi Pico: bên trái từ trên xuống dưới, rồi bên phải từ trên xuống dưới, USB ở trên
ChânGPIONó làm được gìCần lưu ý
GP00PWM 0A. UART0 TX.-
GP11PWM 0B. UART0 RX.-
GND-GND. Bảy lỗ.-
GP22PWM 1A.-
GP33PWM 1B.-
GP44PWM 2A. I2C SDA (mặc định).-
GP55PWM 2B. I2C SCL (mặc định).-
GP66PWM 3A.-
GP77PWM 3B.-
GP88PWM 4A.-
GP99PWM 4B.-
GP1010PWM 5A.-
GP1111PWM 5B.-
GP1212PWM 6A.-
GP1313PWM 6B.-
GP1414PWM 7A.-
GP1515PWM 7B.-
VBUS-5 V từ USB, lấy thẳng từ ổ cắm.Not a GPIO.
VSYS-Đầu vào nguồn chính, 1,8 đến 5,5 V.Not a GPIO.
3V3_EN-Mức thấp tắt mạch ổn áp 3,3 V.Not a GPIO.
3V3-Đầu ra 3,3 V của mạch ổn áp.Giữ tải dưới 300 mA.
ADC_VREF-Điện áp tham chiếu 3,3 V của bộ chuyển đổi.Not a GPIO.
GP2828PWM 6A. ADC2 (A2).-
AGND-GND analog cho ADC0 đến ADC2.-
GP2727PWM 5B. ADC1 (A1).-
GP2626PWM 5A. ADC0 (A0).-
RUN-Mức thấp reset RP2040.Not a GPIO.
GP2222PWM 3A.-
GP2121PWM 2B.-
GP2020PWM 2A.-
GP1919PWM 1B. SPI MOSI (mặc định).-
GP1818PWM 1A. SPI SCK (mặc định).-
GP1717PWM 0B. SPI SS (mặc định).-
GP1616PWM 0A. SPI MISO (mặc định).-

Nguồn: VBUS, VSYS, 3V3 và các chân điều khiển

VBUS là 5 V từ ổ cắm USB, giữ nguyên. VSYS là đầu vào chính của bo mạch: mạch ổn áp tạo 3,3 V từ bất kỳ điện áp nào giữa 1,8 và 5,5 V ở đó, nên hai hoặc ba pin AA cấp vào VSYS chạy được bo mạch mà không cần USB. Khi cắm USB, VSYS thấp hơn VBUS một mức sụt áp của diode. 3V3 là đầu ra của mạch ổn áp, và datasheet Pico yêu cầu giữ tải của nó dưới 300 mA. 3V3_EN tắt mạch ổn áp khi bị kéo xuống thấp, và RUN reset chip.

Mọi GPIO đều 3,3 V và không chân nào chịu được 5 V. Các chân của RP2040 mặc định điều khiển 4 mA và có thể đặt thành 2, 8 hoặc 12 mA, đủ cho một LED với điện trở và không hơn bao nhiêu. Trong Mokxi bo mạch luôn dùng USB, VBUS cấp 5 V và VSYS 4,7 V.

PWM: những chân nào dùng chung một slice

RP2040 có tám slice PWM, mỗi slice có hai kênh, A và B. GPIO n nằm trên slice (n / 2) mod 8, kênh A với chân chẵn và kênh B với chân lẻ. Vậy GP0 và GP16 đều là slice 0 kênh A, còn GP0 và GP1 dùng chung slice 0.

Hai chân trên cùng một slice dùng chung tần số của nó. Chúng có thể có duty cycle khác nhau, nên hai LED ở GP0 và GP1 làm mờ độc lập, nhưng một servo 50 Hz và một động cơ 20 kHz không dùng chung slice được. Hãy đặt chúng lên các chân có slice khác nhau, chẳng hạn GP2 và GP4. Mokxi mô phỏng cả tám slice theo cùng cách, nên LED trên bo mạch ở GP25 cũng làm mờ dần được.

Đầu vào analog, LED, và những chân không có trên header

Bộ chuyển đổi có mười hai bit với điện áp tham chiếu 3,3 V, trên GP26, GP27 và GP28, tức ADC0 đến ADC2 và A0 đến A2. analogRead trả về mười bit trừ khi analogReadResolution yêu cầu nhiều hơn. Hãy dùng AGND làm GND của cảm biến analog và ADC_VREF nếu bạn cần điện áp tham chiếu. Mokxi mô phỏng bộ chuyển đổi từng mẫu một, không có FIFO, DMA hay nhiễu.

LED xanh lá ở GP25 và sáng khi chân ở mức HIGH; LED_BUILTIN là 25. GP25 không có trên header, và GP23 cũng không, chân điều khiển chế độ của nguồn cấp, cùng GP24, chân đo VBUS, hay GP29, chân đo VSYS qua một bộ chia áp. Đó là lý do header nhảy từ GP22 sang GP26. Trên Pico W, bốn chân đó đi tới chip không dây và LED chuyển theo; sơ đồ chân Raspberry Pi Pico W nói về điểm khác biệt.

Serial, I2C, SPI và BOOTSEL

GP0 và GP1 là TX và RX của UART0. Trong lõi Arduino cho Pico, Serial là cổng USB còn Serial1 là UART0 trên hai chân đó. Trong Mokxi, Serial tới thẳng Serial Monitor và GP0 cùng GP1 vẫn là các chân thường.

Wire.begin() đặt I2C trên GP4 cho SDA và GP5 cho SCL, còn SPI là GP18, GP16, GP19 và GP17 cho SCK, MISO, MOSI và SS. Trong Mokxi cả hai bus chạy bằng phần mềm trên các chân đó, vì khối I2C và SPI của RP2040 không được mô phỏng. BOOTSEL không phải GPIO: giữ nó khi cắm bo mạch vào thì Pico hiện ra như một ổ USB để nạp chương trình mới, và không thứ gì bạn nối có thể vô tình kích hoạt nó.

Câu hỏi

Nên dùng chân Pico nào cho nút nhấn?

Bất kỳ chân GP nào, với `INPUT_PULLUP` và nút nối xuống GND. Pico cũng có điện trở kéo xuống bên trong, nên `INPUT_PULLDOWN` với nút nối lên 3V3 cũng chạy được. Không có chân strapping nào phải tránh.

Những chân Raspberry Pi Pico nào là analog?

GP26, GP27 và GP28, tức ADC0, ADC1 và ADC2, hay `A0` đến `A2` trong code. Giữ tín hiệu trong khoảng 0 đến 3,3 V.

Pico có chân 5V không?

VBUS là 5 V từ USB và VSYS là khoảng 5 V trừ một mức sụt áp của diode. Cả hai đều cấp nguồn được cho module 5 V. Không GPIO nào chịu được 5 V.

Những chân nào là I2C và SPI trên Pico?

I2C mặc định là GP4 (SDA) và GP5 (SCL). SPI mặc định là GP18 (SCK), GP16 (MISO), GP19 (MOSI) và GP17 (SS).

Những chân Pico nào làm PWM được?

Tất cả. Hai chân trên cùng slice dùng chung tần số, nên servo và PWM động cơ nhanh nên đặt trên các chân có slice khác nhau.

Lắp mạch này ngoài đời

Mở trình soạn thảo, đổi một giá trị và xem con số thay đổi theo. Không cần cài gì, không cần tài khoản.