0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

基于RP 2040芯片的微處理器開發(fā)板樹莓派Pico評測

電子設計 ? 來源:搜狐科技 ? 作者:少數(shù)派 ? 2021-01-29 11:43 ? 次閱讀

疫情肆虐,芯片迎來史上最大的缺貨潮,然后2021 年 1 月 21 日,樹莓派基金會卻發(fā)布了微處理器(Microcontroller)級新品 Raspberry Pi Pico,給寒冷的冬天注入一絲溫暖。該產(chǎn)品基于樹莓派基金會自研的 RP 2040 芯片構(gòu)建,售價僅為 4 美元。據(jù)介紹,Pico 作為一款微處理器,它擅長低時延的 I/O 通信模擬信號輸入,功耗低,可以彌補樹莓派在與物理世界互動方面的不足。一起來揭開這款新品的神秘面紗吧。

Raspberry Pi Pico 是一款搭載了 RP 2040 芯片的微處理器開發(fā)板。對于 Pico 的參數(shù)和配置的介紹,我們分兩步進行:先看 RP 2040 芯片,再看 Pico 開發(fā)板。

RP 2040 芯片

RP 2040 芯片由樹莓派基金會設計開發(fā)。在 官網(wǎng) Blog 中,首席運營官、首席硬件工程師 James Adams 調(diào)侃道:似乎現(xiàn)在每個水果公司都在研制自己的芯片了,我們也不例外。

RP 2040 芯片采用 40 nm 制程工藝,7×7 mm QFN-56 封裝。它的具體規(guī)格參數(shù)如下:

搭載雙核 ARM Cortex M0+ 處理器,運行頻率 133 MHz

內(nèi)置 264 KB 的片上 RAM

可通過專用 QSPI 總線支持最高 16 MB 的片外閃存

DMA 控制器

外掛內(nèi)插器和整數(shù)除法器

30 個 GPIO 引腳,其中 4 個可用于模擬信號輸入

2 個 SPI、2 個 I2C、2 個 UART

16 個 PWM 通道

主機和設備支持的 USB 1.1

8 個樹莓派可編程 I/O 狀態(tài)機

支持 UF2 的 USB 大容量存儲啟動模式,用于拖放式編程

樹莓派Pico 開發(fā)板

以下展示 Raspberry Pi Pico 開發(fā)板的參數(shù)和配置 3。為了準確、完整地展示 Pico 的參數(shù)和配置,RP 2040 芯片的部分關鍵參數(shù)會被再次列舉。

搭載上述 RP 2040 芯片。

采用雙核 ARM Cortex M0+ 處理器,運行頻率 133 MHz。

搭載 264 KB 的片上 RAM,板載 2 MB 閃存。

主機和設備支持的 USB1.1。

支持低功耗的睡眠和休眠模式。

采用拖放式編程。

擁有 26 個 GPIO 引腳,其中 3 個可用于模擬信號輸入(即 3 路 12 位 ADC)。

擁有 2 個 SPI、2 個 I2C、2 個 UART、16 路 PWM。

片上時鐘、計時器;片上浮點庫;搭載溫度傳感器。

可通過 Micro USB 供電,也支持 1.8-5.5 V 直流電源供電。因此我們用串聯(lián)的干電池或者鋰電池即可驅(qū)動 Pico,這使得 Pico 的應用更加靈活。

配備 1 個 LED 燈和一個開關按鈕。該按鈕用于向 Pico 燒錄程序時控制 Pico 進入 USB 大容量存儲模式,也可用于通用的輸入。

40 個引腳均為 “焊孔 + 齒狀邊緣” 的形態(tài),由用戶靈活選擇安裝方式,便于與其他開發(fā)板焊接。

o4YBAGATg7uAdHUBAAQle9dCYe0647.png

從參數(shù)和配置來看,Pico 就是一款微處理器開發(fā)板,也就是我們常說的「單片機」開發(fā)板。做個類比,它不是一款可以運行操作系統(tǒng)、五臟俱全的「樹莓派」電腦,而是一款擁有豐富通用輸入輸出接口、可以與傳感器和組件高效互動的「Arduino」開發(fā)板。

開發(fā)方法

對于 Pico 的編程開發(fā),官方開發(fā)了 Pico C/C++ SDK 和 Pico Python SDK 軟件開發(fā)工具包,用戶可以選擇 C/C++ 或者 Python 對 Pico 進行開發(fā)。

對 Pico 的編程和燒錄需要在計算機上進行。所支持的操作系統(tǒng)和計算機包括:

搭載 Raspberry Pi OS 的樹莓派

其他搭載基于 Debian 的 Linux 系統(tǒng)的平臺

搭載 MacOS 的計算機

搭載 Windows 的計算機等。

其中,作為親兒子,搭載 Raspberry Pi OS 的樹莓派 4B 或樹莓派 400 的開發(fā)環(huán)境配置最為便捷,通過一行 setup 腳本命令便可以完成大部分的配置工作。

Pico 采用頗為便捷的拖放式編程:將 Pico 通過 USB 與計算機連接,Pico 會被計算機識別為大容量存儲設備,向其中拖放編程文件即可完成程序燒錄。接下來的「上手體驗」環(huán)節(jié)會對此做具體介紹和展示。

上手體驗

目前,樹莓派基金會在全球 53 個國家和地區(qū)的授權(quán)代理商均開始發(fā)售 Pico,售價基本為 4 美元。

接下來跟一元硬幣和鑰匙來張合照??戳诉@張照片,大家應該可以對 Pico 的「小」有了一個比較清晰的認識。掏出你手里的鑰匙,它就是那么??!Pico 開發(fā)板為雙層 PCB 板,除了小,還很薄。拿在手上,這種輕薄的手感和齒狀的邊緣讓人有種拿著一片蘇打餅干的感覺。

現(xiàn)在來看看下圖所展示的 Pico 正反兩面,圖中為了方便大家正確區(qū)分正反兩面的方向,我用紅色原點對 40 號引腳加以標記。Pico 的正面分布有 RP 2040 芯片、按鈕、LED 燈、電源芯片等元件。正面只對 1、2、39 號引腳進行了標識。其背面無分布其他元件,背面 PCB 上對 40 個引腳的功能進行了標識。Pico 正面的引腳標記缺失可能會對剛接觸 Pico 的用戶帶來不便。

pIYBAGATg9iACQisAAYfN03q9es293.png

現(xiàn)在我們來開發(fā) Pico。

我們嘗試按照官方入門指南 Getting started with Raspberry Pi Pico 的指引,在搭載 Raspberry Pi OS 的樹莓派 4B 上使用 C/C++ SDK 開發(fā)。

使用 C/C++ SDK 開發(fā) Pico 的思路是,利用軟件將使用 C 語言編寫的程序轉(zhuǎn)化為可被 Pico 識別的 .uf2 文件,燒錄到 Pico 中,由 Pico 運行。

首先在樹莓派安裝 Git 工具,如果已經(jīng)安裝過,則可以忽略:

$ sudo apt install git

接下來在根目錄「/home/pi」下新建「pico」目錄,并在該目錄中下載用于開發(fā) Pico 的 SDK 和示例程序:

$ cd ~/
$ mkdir pico
$ cd pico
$ git clone -b master https://github.com/raspberrypi/pico-sdk.git
$ cd pico-sdk
$ git submodule update --init
$ cd ..
$ git clone -b master https://github.com/raspberrypi/pico-examples.git

完成后,我們可以在「/home/pi/pico」目錄下看到「pico-examples」和「pico-sdk」兩個目錄?,F(xiàn)在安裝開發(fā)工具 CMake:

$ sudo apt update
$ sudo apt install cmake gcc-arm-none-eabi build-essential

至此,針對 Pico 開發(fā)的配置工作基本完成。

對于搭載 Raspberry Pi OS 的樹莓派,以上操作可以通過運行配置開發(fā)環(huán)境的腳本來更加便捷地完成。我們執(zhí)行克隆命令來獲取腳本,運行腳本后重啟樹莓派即可完成所有的配置工作,包括新建目錄、下載 SDK 和示例程序、下載 Visual Studio Code 等軟件,等等:

$ git clone https://github.com/raspberrypi/pico-setup.git
$ pico-setup/pico_setup.sh
$ sudo reboot

現(xiàn)在,我們在「/home/pi/pico」目錄下新建目錄「myProject」:

$ cd /home/pi/pico
$ mkdir myProject
$ cd myProject

在「~/myProject」目錄下,我們需要準備三個文件:

文件 1:用 C 語言編寫控制 Pico 上 LED 等閃爍的「blink.c」程序,LED 燈連接的是 25 號引腳:

#include "pico/stdlib.h"
int main() {
const uint LED_PIN = 25;
gpio_init(LED_PIN);
gpio_set_dir(LED_PIN, GPIO_OUT);
while (true) {
gpio_put(LED_PIN, 1);
sleep_ms(250);
gpio_put(LED_PIN, 0);
sleep_ms(250);
}
}

文件 2:創(chuàng)建「CMakeLists.txt」文件:

cmake_minimum_required(VERSION 3.12)
include(pico_sdk_import.cmake)
project(test_project)
pico_sdk_init()
add_executable(myProject
blink.c
)
pico_add_extra_outputs(myProject)
target_link_libraries(myProject pico_stdlib)

文件 3:從「~/pico-sdk/external」目錄復制「pico_sdk_import.cmake」文件:

$ cp ../pico-sdk/external/pico_sdk_import.cmake .

準備好三個文件后,在「~/myProject」目錄下新建并進入目錄「build」并執(zhí)行:

$ mkdir build
$ cd build
$ export PICO_SDK_PATH=../../pico-sdk
$ cmake ..
$ make

make 命令即為「編譯」,它將在「~/myProject/build」目錄下生成 .uf2 文件和其他文件。

o4YBAGATg-iAXXrUAADopzcD6m0915.png

現(xiàn)在用 Micro USB 轉(zhuǎn) USB 數(shù)據(jù)線將 Pico 和樹莓派 4B 連接。按住 Pico 的開關按鈕,將 Pico 通過 Micro USB 數(shù)據(jù)線與樹莓派 4B 連接,隨后松開按鈕。此時,Pico 會被樹莓派 4B 識別為「USB Mass Storage Device」。將「~/myProject/build」目錄下的「myProject.uf2」文件拖入其中,即可完成燒錄,Pico 上的 LED 燈便開始閃爍了。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微處理器
    +關注

    關注

    11

    文章

    2221

    瀏覽量

    81982
  • 樹莓派
    +關注

    關注

    116

    文章

    1679

    瀏覽量

    105255
收藏 人收藏

    評論

    相關推薦

    樹莓和arm開發(fā)板的區(qū)別

    樹莓(Raspberry Pi)和ARM開發(fā)板都是基于ARM架構(gòu)的微型計算機,但它們之間存在一些關鍵區(qū)別。 一、歷史背景 樹莓(Rasp
    的頭像 發(fā)表于 08-30 15:36 ?279次閱讀

    linux開發(fā)板樹莓的區(qū)別

    操作系統(tǒng)的微型計算機,主要用于教育、編程、媒體播放等領域。 硬件配置 Linux開發(fā)板:Linux開發(fā)板的硬件配置因廠商和型號而異,通常包括處理器、內(nèi)存、存儲、網(wǎng)絡接口等。 樹莓
    的頭像 發(fā)表于 08-30 15:34 ?204次閱讀

    ubuntu上交叉編譯rp2040

    連接到rp2040 ,所以使用另一塊pico作為調(diào)試,需要給pico調(diào)試下載固件,也就是picoprobe 地址 https://git
    發(fā)表于 08-27 08:00

    樹莓Pico 2發(fā)布,搭載RP2350雙核RISC-V和Arm Cortex-M33微控制

    兼容性。Pico 2 現(xiàn)已發(fā)售,售價為 5 美元。 了解 RP2350 兩年前,隨著樹莓 5 的 RP1 I/O 控制
    發(fā)表于 08-13 10:07

    pico-ice:RP2040 plus Lattice iCE40UP5K FPGA 開發(fā)板 介紹

    處理器 (RP2040) 和 Lattice Semiconductor iCE40UP5K FPGA。該開發(fā)板具有用于 FPGA 和 RP2040 的獨立閃存、低功耗 SSRAM、
    發(fā)表于 06-28 15:45

    【米爾-瑞米兼容樹莓擴展模塊-試用體驗】用視頻來了解這塊生態(tài)_米爾-瑞米兼容樹莓擴展模塊

    今天為大家展示一下初始開發(fā)板_米爾-瑞米兼容樹莓擴展模塊, 米爾-瑞米兼容樹莓
    發(fā)表于 04-29 11:51

    【米爾-瑞米兼容樹莓擴展模塊-試用體驗】初始開發(fā)板_米爾-瑞米兼容樹莓擴展模塊

    兼容樹莓擴展模塊也有豐富的軟件支持: 為了讓大家對米爾-瑞米兼容樹莓擴展模塊有更多的了解
    發(fā)表于 04-29 11:42

    飛騰開發(fā)板評測獲獎名單公布?。?!

    恭喜以上小伙伴!經(jīng)過飛騰專家評選,前三名小伙伴可保留飛騰開發(fā)板,其余小伙伴需退回開發(fā)板,有問題請微信聯(lián)系工作人員(微信號:elecfans123) 飛騰
    發(fā)表于 01-30 17:02

    如何在RT-Thread Studio中使用樹莓Pico開發(fā)板

    Raspberry Pi Pico 是一款低成本,高性能的微控制開發(fā)板,具有靈活數(shù)字接口。
    的頭像 發(fā)表于 11-21 16:43 ?1357次閱讀
    如何在RT-Thread Studio中使用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b><b class='flag-5'>Pico</b><b class='flag-5'>開發(fā)板</b>?

    樹莓Pico RP2040上怎樣使用MicroPython呢?

    RP2040 是一款由樹莓公司設計的 32 位雙核 ARM Cortex-M0+ 微控制芯片,于 2021 年 1 月發(fā)布,作為
    的頭像 發(fā)表于 11-08 14:29 ?2596次閱讀
    在<b class='flag-5'>樹莓</b><b class='flag-5'>派</b><b class='flag-5'>Pico</b> <b class='flag-5'>RP2040</b>上怎樣使用MicroPython呢?

    樹莓單片機-Raspberry Pi Pico

    樹莓Pi Pico樹莓基金會在2021年1月份發(fā)布的一款新的基于RP2040定制
    的頭像 發(fā)表于 10-31 17:07 ?1256次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>單片機-Raspberry Pi <b class='flag-5'>Pico</b>

    樹莓Pico文件系統(tǒng)應用:數(shù)據(jù)記錄

    在前面的章節(jié)中,你一直在使用樹莓 Pico 連接到樹莓或其他電腦。不過,與所有微控制一樣,
    的頭像 發(fā)表于 10-24 10:51 ?1025次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b><b class='flag-5'>Pico</b>文件系統(tǒng)應用:數(shù)據(jù)記錄<b class='flag-5'>器</b>

    使用樹莓Pico開發(fā)板制作實時音頻光譜圖可視化

    本期教程將會通過使用一塊帶有外置數(shù)字麥克風和 TFT LCD 顯示屏的樹莓 Pico 開發(fā)板制作一個實時音頻光譜圖可視化。有了它,你就可
    的頭像 發(fā)表于 10-24 10:49 ?1388次閱讀
    使用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b><b class='flag-5'>Pico</b><b class='flag-5'>開發(fā)板</b>制作實時音頻光譜圖可視化<b class='flag-5'>器</b>

    樹莓PICO pio使用

    樹莓 Pico 小小的板子上總是能讓我們發(fā)現(xiàn)一些驚喜。其所使用的RP2040芯片還具備8個可編程I/O(PIO)狀態(tài)機,用于自定義外圍設
    的頭像 發(fā)表于 10-18 15:17 ?1301次閱讀

    Waveshare RP2040-PiZero具有Raspberry Pi Zero外形

    Waveshare RP2040-PiZero是一款類似于 Raspberry Pi Zero 的,具有Raspberry Pi RP2040微控制
    的頭像 發(fā)表于 10-12 15:36 ?1050次閱讀
    Waveshare <b class='flag-5'>RP2040</b>-PiZero<b class='flag-5'>板</b>具有Raspberry Pi Zero外形