1.說明
2.樹莓派3b上安裝系統
3.pi pico的環境搭建
4.遠程控制與ADC採集
樹莓派pi pico和樹莓派4相比差別很大,但是pi pico有一些特點是樹莓派4上沒有的,比如實時性控制上,採用cortex-m系列方案會更加佔據優勢,所以往往都會使用樹莓派+Arduino組成一個具有實時控制的系統。另外樹莓派上是沒有AD採樣的,而pi pico則有12位的ad採樣功能。而且在樹莓派3b或者樹莓派2上,只有一路串口,這樣只需要一個低成本的pi pico則可以實現I2C、SPI、UART的擴展,這樣是非常方便的,得一提的則是樹莓派上沒有而pi pico的ADC功能,下面通過一個集成方案來將樹莓派和pi pico的ADC結合起來進行使用。
2.樹莓派3b上安裝系統到官網上下載Raspberry Pi Imager。該軟體提供了安裝樹莓派鏡像的一體化方案。
https://www.raspberrypi.org/software/然後選擇合適的系統即可,這裡為了方便演示,選擇最小系統即可。
將SD卡插入並燒錄鏡像到SD卡中。
接入顯示器,接入鍵盤,配置wifi進行聯網。
raspberrypi: pi
Password: raspberry可以進入系統:
然後連接網絡設備
通過輸入sudo raspi-config進入配網界面。
2.1 配置聯網和選擇ssh功能按照下面的步驟進行操作即可。
首先選擇System Options進入配置操作。
然後再選擇使能WLAN
接著選擇相關的國家
最後輸入wifi的SSID和密碼即可
選擇SSH功能
使能SSH即可
設置完成後,可以看到系統重啟,並且通過網絡的ping測試,看到網絡正常。
區域網內使用ssh登錄樹莓派可正常訪問。
輸入樹莓派密碼raspberry即可。
此時便可以拔掉樹莓派上的鍵盤和顯示器,在區域網內進行控制了。
2.2 內網映射因為此時還只能在區域網內控制,實際的物聯網應用中,需要隨時進行設備的控制,那就需要內網映射。這裡我經常使用比較方便的是花生殼內網映射。
具體使用可以參考官網介紹,這裡簡單的演示
https://service.oray.com/question/11639.html選擇下載
wget https://dl-cdn.oray.com/hsk/linux/phtunnel_5_0_rapi_armhf.deb接著開始安裝,sudo -s 切換到管理員權限。
其中需要記得的是SN,這個在登錄http://b.oray.com網站上需要進行輸入,密碼則是admin。
激活綁定設備後就可以進行內網映射的添加了。
這樣,直接通過SSH訪問外網域名和外網埠就可以進行訪問了。
如果一切操作成功,那麼在手機上也可以通過ssh工具訪問和控制設備了。
當手機上可以正常的訪問設備時,表示隨時隨地的可以控制設備。
3.pi pico的環境搭建pi pico最方便的玩法就是使用micropython。
新的pi pico 插上電腦後,會出現一個盤符。
進入界面,選擇文件進入網頁。
接著選擇MicroPython的UF2文件即可。
將該文件下載完成後,拖入磁碟中。
此時設備會重啟,然後進入MicroPython的編程模式。
將pi pico 通過USB線插入樹莓派中,然後就可以遠程控制和編程了。
線路連接完成,測試編程即可。
此時可以在樹莓派上安裝minicom。
sudo apt install minicom選擇運行
minicom -b 115200 -o -D /dev/ttyACM0此時可以將led進行控制。
4.遠程控制與ADC採集這時可以使用手機進行編程操作,編程代碼如下所示:
import machine
import utime
sensor_temp = machine.ADC(4)
conversion_factor = 3.3/(65535)
while True:
read = sensor_temp.read_u16() * conversion_factor
temperature = 27 - (read - 0.706) / 0.001721
print(temperature)
utime.sleep(2)所以這裡可以採用上述代碼實現,手機上的代碼排版如下:
通過在命令行中輸入上述代碼,可以在手機上看到晶片的溫度顯示情況。
通過開啟串口
minicom -b 115200 -o -D /dev/ttyACM0可以然後輸入上述代碼,可以看到串口輸出ADC信息,該信息為晶片的溫度信息。