BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040芯片的微控制器開發板,在盡量保留Raspberry Pi Pico的功能,外形尺寸,引腳布局的前提下,板載一顆 WS2812 彩色LED;一個JST SH 1mm 4-Pin 插座,可與 Qwiic & STEMMA QT 或任何可能的外設連接;將micro-USB插座替換為USB Type-C插座。
01
CircuitPython環境介紹
首先感謝發燒友平臺提供的免費測試活動,拿到開發板后,第一時間開箱,就看到了黑色的板子,配合鍍金焊盤,看起來也挺漂亮。
BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040芯片的微控制器開發板,其最顯著的特性是,在盡量保留Raspberry Pi Pico的功能,外形尺寸,引腳布局的前提下,增加一顆板載 WS2812 彩色LED;將 3-Pin DEBUG 接口替換為一個JST SH 1mm 4-Pin 插座,可與 Qwiic & STEMMA QT 或任何可能的外設連接;將micro-USB插座替換為USB Type-C插座,支持正反插,與絕大多數現代智能手機的USB Type-C線通用,無需額外購買。
關鍵特性
-
264K SRAM
-
2MB Flash
-
1 × LED
-
1 × WS2812 LED
-
1 × JST SH 1mm 4-Pin 插座
-
1 × USB Type-C插座
相對樹莓派官方的rp2040來說,引腳是完全兼容的,只是Flash體積從4MB減小到2MB(大部分代碼應用無所謂,不好做帶圖片的GUI設計而已)。
從官方的wiki可以找到引腳圖(見下圖)和尺寸圖、以及原理圖。還是相當不錯的。
![711f4e1c-147e-11ee-962d-dac502259ad0.jpg](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6AYHkPAAFVCs4mLBg050.jpg)
好了,閑扯這么多,現在就開始準備circuitPython點燈吧
>>>點此查看全文
02
RP2040可編程 IO (PIO) 使用初探
BPI-Pico-RP2040 開發板所搭載的RP2040微處理器,相對于其他微處理,最吸引人的一點就是提供了可編程 IO,簡稱PIO。
PIO的神奇之處在于,給PIO編程后,它可以自己運行來控制IO口,而不會再占用微處理器的資源,使得同時可以完成其他的邏輯,而相互之間可以完全不干擾。
因為是初探PIO的使用,而玩板子無不從點燈開始,所以這里也從點燈開始。
![71609d5e-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6AdHulAARyGQMTkxc215.png)
>>>點此查看全文
03
在通常情況下,數碼管的顯示方式多采用并行的方式,其通道是編程時的靈活性比較大,但比較耗費引腳資源。為此,這里選用一款以串行方式工作的數碼管模塊,它是以MAX7219作為控制芯片,具有占用引腳少,無需時時掃描的特點。
該模塊的外觀如圖1時時,它共有5個引腳,分別是:VCC、GND、SCL、CS和SDA。
![71b0b488-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6AQZC8AAHe61Cr06M527.png)
經程序下載,其運行效果如下圖所示,由于該數碼管的顯示符有限,故以“-”來替代“:”作為時間值的分隔符。
![71e5ab2a-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6AJRTKAAKelSMJomM954.png)
>>>點此查看全文
04
RP2040上的MicroPython環境中多線程編程
其核心是RP2040,采用的是ARM Cortex M0+ CPU內核,運行頻率高達 133 MHz。
比一般使用Cortex M0+的MCU更強大的是,RP2040使用了雙核ARM Cortex M0+,既然是雙核的,那么我們就可以在BPI-Pico-RP2040運行多線程程序了,更好的挖掘出其潛力來。
多線程了解
關于什么是多線程,本文不講,大家可以自行查找資料詳細了解。
為了更方便的進行測試,本次所有的實例,都是在python環境中進行的。
經過了解,circuitpython還不支持多線程,而micropython則已經提供支持。
多線程是個讓人有愛又恨的東西,用好了能有大作用,但是用不好可能會出現莫名其妙的問題,需要好好鉆研。本文只是一些較為基礎的研究,還比較淺顯,對于gc等方面,都尚未涉及,感興趣的讀者可以進一步深入了解。
![722b824e-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6ADW9uAAR_F6eQjIk184.png)
>>>點此查看全文
05
板載RGB-LED點亮不同顏色
本篇來測試BPI-Pico-RP2040板載的GRB LED。
WS2812介紹
![7274ef10-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6AQDt8AAAeprGdoUY886.png)
WS2812B是一種智能控制LED光源,將控制電路和RGB芯片集成在一個5050個組件的封裝中。內部包括智能數字端口數據鎖存和信號整形放大驅動電路。還包括精密的內部振蕩器和電壓可編程恒流控制部分,有效保證像素點的光色高度一致。
數據傳輸協議采用單NZR通信模式。像素上電復位后,DIN端口從控制器接收數據,第一個像素采集初始24位數據,然后發送給內部數據鎖存器,其他經過內部信號整形放大電路整形后的數據通過DO端口發送給下一個級聯像素。
![729207bc-147e-11ee-962d-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9D/31/wKgZomTn-h6Adl5tAAMduyNry1k007.png)
>>>點此查看全文
更多熱點文章閱讀
-
基于Cortex-M3內核的32位微控制器,STM32項目實戰分享!
-
基于32位RISC-V設計的互聯型微控制器,沁恒微CH32V307開發樣例
-
RK3568!四核64位ARMv8.2A架構,匯聚編譯源碼及實戰樣例
-
尺寸僅有21mm*51mm,板邊采用郵票孔設計,合宙 Air105 核心板開發總結
-
電子技術
+關注
關注
18文章
917瀏覽量
56309 -
電子發燒友論壇
+關注
關注
4文章
197瀏覽量
1149
原文標題:搭載RP2040雙核處理器芯片,BPI-Pico-RP2040 開發板開發實例展示
文章出處:【微信號:gh_9b9470648b3c,微信公眾號:電子發燒友論壇】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
OpenHarmony怎么修改DPI密度值?觸覺智能RK3566鴻蒙開發板演示
![OpenHarmony怎么修改DPI密度值?觸覺智能RK3566鴻蒙<b class='flag-5'>開發板</b>演示](https://file1.elecfans.com/web3/M00/03/8B/wKgZPGdqLoyAKZgAAAB1wHV_XdE820.png)
Made with KiCad(九十一):基于 RP2350 的最小系統設計
![Made with KiCad(九十一):基于 <b class='flag-5'>RP</b>2350 的最小系統設計](https://file1.elecfans.com//web2/M00/0B/65/wKgZomcy1sqAaZ30AALiqi9SnCc603.png)
評論