樹莓派Android Things物聯網開發:入門及資料彙總
序(che)言(dan)
Android Things是一個能執行在樹莓派3上的作業系統,可以用Java來操作硬體外圍裝置。這對於習慣於Java開發的人而言是一件很美的事。
對於Android嵌入式開發人員而言,也不再需要使用Androi開發板進行系統編譯、驅動和JNI介面開發了,省去了不少工作。
首先,入手一塊樹莓派3開發板吧
可能需要的裝置:USB滑鼠、USB鍵盤、HDMI高清線、支援HDMI介面的螢幕、SD卡讀卡器、至少8G的SD卡(目前版本的Android Things系統映象是4G多)、網線、USB口電源線(5V/2A)、散熱片
(注:作者一開始用的是HDMI轉VGA轉接頭,燒入Android Things系統後啟動螢幕是灰色的,燒入raspbian系統後螢幕正常顯示,直接用HDMI高清線接螢幕就行了)
鑑於瀏覽器卡得要命,還是把這些天積累的數不清的網頁標籤清一下吧[doge]~ 都是瀏覽過的精品乾貨,批量大放送啦~~~
樹莓派資料
樹莓派商家資料網盤 開啟連結
也有提到用視覺化電路軟體 進行輔助設計
檢視已知bug,只是提到Pi3B的硬體串列埠被藍芽佔用,miniUART為軟串列埠不支援校驗位(貌似串列埠通訊從來沒用過校驗位[捂臉]),波特率取決於時鐘速度,隨CPU負載,電壓和溫度變化,因此在高速資料傳輸情況下可能不夠穩定。要使用硬體串列埠需要禁用藍芽並重新對映GPIO,參考文章《Raspberry Pi 3 compatibility (BT disable & serial port remap fix)
不與智慧裝置有任何網路連線給其設定wifi密碼,開發設定wifi產品的時候可能會用到。
Android Things資料彙總
以上兩個示例程式碼用於手機與樹莓派LE藍芽連線,樹莓派LE藍芽不通過此程式是無法被手機藍芽發現介面搜尋到的哦 :)
《Android things翻譯文件及物聯網學習》系列
PS:包含按鈕庫、攝像頭呼叫等知識。注意的是外部按鍵中斷抖動厲害,按鈕庫進行了消抖處理(結合下文《》中提到的上拉電阻進行消抖)。
《使用Andorid開啟物聯網開發大門》系列
《使用Android開啟物聯網開發大門——Andoid Thigns開發》系列
PS:這兩篇文章中對於inputPin.setActiveType(Gpio.ACTIVE_HIGH); 上文解釋為設定引腳懸空時為高電平
下文解釋為getValue()時高電平則返回true,意見有所不同
請原諒我現在已經解除安裝了AndroidThings不方便測試[手動捂臉]
注意:Android Things剛出來不久還不完善,當前存在一些問題,尤其是攝像頭視訊方面,詳情見《樹莓派Android Things物聯網開發:已知Bug發行說明》網好英語好的請檢視 原文
也可以看google plus關於此話題的 討論 不支援USB攝像頭,CSI攝像頭相容性也不好。
Win10 IOT資料彙總
因為是產品選型,Win10 IOT的資料也參考了一些
MSDN原文連結 不過USB攝像頭是支援的 :-)
好了,清理了一遍,瀏覽器標籤乾淨多了~
PS:如果本文對您有幫助,請點個贊讓我知道哦~