
這次是我們要看的主角
起因是群里面有個大哥,發了一個鏈接。
說樹莓派進軍單片機了,我心想又收稅來了。
就沒有在意,后來就去查了一下,然后點錯了,看個了pico電腦,復雜指令集的。
然后大哥又發一個價格,35塊錢~我認為這個東西還算便宜,有起哄的,抬杠的。
那你不買便是。
那這篇文章就讓我們云體驗一次,看看配套資料怎么樣~
https://www.raspberrypi.org/documentation/pico/getting-started/
https://github.com/raspberrypi/
老規矩上地址,自己去探索

下載的配套的文件,很齊全

我這里簡單的截圖了官網貼出來的參數
首先,這個芯片不知道有沒有賣的。如果有就可以自己打板,diy。因為齊全用了ARM的處理器,不知道一些高級特性是不是支持。
性能方面(控制面)我覺得完全ok。就是SRAM以及板載內存有點少。以及支持USB1.1看看是不是閹割版的。以及資料多寡。

第二張
這個拖放編程沒有看懂。
。
。
出現次數挺多的。
以及這個IO腳,還是比較豐富的,26個腳在下文會有簡單的研究。
以及板載了RTC(不知道精度)以及定時器。
看這個介紹PWM的引腳非常豐富,我甚至想用這個做一個無人機的飛控出來,以及里面自帶溫度傳感器。
還有浮點計算庫。
不是DSP性能怎么樣,是arm里面的一個ip核實現的嗎?
以及還有8個IO狀態機,這個挺好的。

放一張引腳圖,打印出來。寫程序時候看

這是左側,首當其沖就是串口,然后就是I2C+SPI

右邊就是VSBS,可以自己在引USB出來。
3個12位的ADC,日常夠用了。以及還有一組串口,估計也是軟件串流控制

這個是下面的Debug口

以及三份資料圖,看名字就知道是什么了

此為第一份資料

此為最后一個

這是原理圖

先看看一直在吹噓的USB接口

PS = 0:PFM模式(默認,最佳效率)
PS = 1:PWM模式(改善了紋波,但效果卻很多輕載時效率較差)
開始分析:VBUS是來自微型USB端口的5V輸入,通過肖特基二極管饋電以產生VSYS。VBUS到VSYS二極管(D1)通過允許將不同電源的電源進行“或”運算來增加靈活性。VSYS是主系統的“輸入電壓”,并為RT6150降壓-升壓型SMPS供電,后者會產生固定的3.3V輸出,用于RP2040設備及其IO(可用于為外部電路供電)。VSYS經過R-C濾波并除以3(分別由R5,R6和C3(在Pico原理圖中),并且可以在ADC通道3上進行監視。例如,可以用作粗電池
電壓監視器。顧名思義,降壓-升壓型SMPS可以從降壓模式無縫切換到升壓模式,因此可以保持在大約1.8V至5.5V的各種輸入電壓范圍內提供3.3V的輸出電壓,這為選擇提供了很大的靈活性電源。GPIO24監視VBUS的存在,而R10和R1則將VBUS拉低以確保如果VBUS不為0V當下。GPIO23控制RT6150 PS(省電)引腳。當PS為低電平(Pico的默認設置)時,調節器處于“脈沖”狀態頻率調制模式,在輕載條件下,僅打開開關MOSFET可節省大量功率
偶爾保持輸出電容器充值。將PS設置為高電平將使調節器進入脈沖寬度調制
(PWM)模式。PWM模式強制SMPS連續切換,從而在光照條件下大大降低了輸出紋波負載(對于某些用例可能會很好),但以犧牲效率為代價。注意重負載下不論PS引腳狀態如何,切換器都將處于PWM模式。
SMPS EN引腳由一個100K電阻上拉至VSYS,并在Pico引腳37上可用。將該引腳接地短路將禁用切換器并將其置于低功耗狀態。

這里加了一顆電源管理芯片,一開始的前級是整流二極管

這個地方是強制USB啟動,就是代碼不從片上運行
你插個U盤摁住這個,執行你U盤里面的code,這個有趣


16MB的儲存,可以自己吹下來換更大的,記得備份

ADC
ADC GPIO引腳具有連接到VDDIO的二極管(其他GPIO沒有)
FET停止通過ADC3引腳二極管泄漏到3V3網絡
3V3電源關閉時(存在VSYS但3V3_EN為低電平)

這個沒什么好說的,就是芯片的腳直接引出來了。注意電氣隔離

連到25腳的小LED

三口調試

這個是實物的正反面

安裝圖,2.54mm。面包板安排
Pico引腳設計用于直接帶走盡可能多的RP2040 GPIO和內部電路功能
同時提供適當數量的接地引腳以減少EMI(電磁干擾)和信號
相聲。總的來說,這很重要,但對于以現代40nm硅工藝和
因此,數字IO邊沿速率非常快。
VBUS是連接到微型USB端口引腳1的微型USB輸入電壓。標稱值為5V(如果不是USB,則為0V)已連接或未通電)。VSYS是主系統輸入電壓,可以在1.8V至5.5V的允許范圍內變化,并由板載使用SMPS為RP2040及其GPIO產生3.3V電壓。

電量消耗,自己看去吧
編程閃存
可以使用串行線調試端口或專用USB對(板載)板載2MByte QSPI閃存進行(重新)編程
大容量存儲設備模式。
對Pico閃存進行重新編程的最簡單方法是使用USB模式。為此,請斷開電路板電源,然后按住
板上電期間BOOTSEL按鈕會降低(例如,在連接USB時按住BOOTSEL)。然后,Pico將
出現為USB大容量存儲設備。將特殊的“ .uf2”文件拖到磁盤上會將此文件寫入閃存并重新啟動
Pico。
USB啟動代碼存儲在RP2040的ROM中,因此不會被意外覆蓋。
通用IO
Raspberry Pi Pico的GPIO由板載3.3V電源軌供電,因此固定為3.3V。
通過將它們直接路由到Pico接頭連接器引腳,Pico公開了30個可能的RP2040 GPIO引腳中的26個。GPIO0至
GPIO22僅是數字的,GPIO 26-28可用作數字GPIO或ADC輸入(軟件可選)。
需要注意的一件事是,具有ADC功能的GPIO26-29在VDDIO(3V3)電源軌上具有一個內部反向二極管,因此輸入電壓不得超過VDDIO加約300mV。另外,如果RP2040沒電,請給這些電源施加電壓。GPIO引腳將通過二極管“泄漏”到VDDIO電源軌中。普通數字GPIO引腳0-25(以及調試引腳)不具有此限制,因此當RP2040升壓時,可以安全地向這些引腳施加電壓。
如果n你要在Raspberry Pi 為Raspberry Pi Pico開發,則可以這樣做,先clone,再配置。

4個個小時前才提交,這個板子可以的

我clone下來了

我對代碼做了一些更改,可以在電腦上面編譯的更快
git clone https://github.com/raspberrypi/pico-setup.git
1.如果尚未安裝Git,則應先sudo apt install git。
然后運行
pico-setup / pico_setup.sh
該腳本將:
?創建一個名為pico的目錄
?安裝所需的依賴項
?下載pico-sdk,pico-examples,pico-extras和pico-playground存儲庫
?~./bashrc中定義PICO_SDK_PATH,PICO_EXAMPLES_PATH,PICO_EXTRAS_PATH和PICO_PLAYGROUND_PATH
?在pico-examples / build / blink和pico-examples / build / hello_world中構建眨眼和hello_world示例
?下載并構建picotool。將其復制到/ usr / local / bin。
?下載并構建picoprobe
?下載并編譯OpenOCD
?下載并安裝Visual Studio Code
?安裝所需的Visual Studio Code擴展(有關更多詳細信息,請參見第6章)
?配置Raspberry Pi UART以與Raspberry Pi Pico一起使用
一旦運行,您將需要重新啟動Raspberry Pi,


C的SDK

所有的外設

硬件嘛,看看GPIO的是實現
那接下來就是安裝編譯工具了,我不在Linux下就不演示了,我板子好還沒有呢~

滴滴,寫個點燈程序
cd pico-examplesmkdir buildcd buildexport PICO_SDK_PATH=../../pico-sdkcmake ..Using PICO_SDK_PATH from environment ('../../pico-sdk')PICO SDK is located at /home/pi/pico/pico-sdk...Build files have been written to: /home/pi/pico/pico-examples/buildcd blinkmake -j4
執行這些命令,生成elf文件以及USB的運行的文件~
?blink.elf,由調試器使用
?blink.uf2,可以將其拖到RP2040 USB Mass Storage Device上
該二進制文件將使連接到RP2040的GPIO25的Raspberry Pi Pico的板載LED閃爍
滴滴,文章就先到這里啦~想繼續看的話就告訴我把!
