前面的話
我也不知道為什么,看到.net core覺得很爽,可以真正的跨平台,個人覺得很喜歡,所以就准備拿樹莓派來驗證我的想法。在我寫這篇文章的時候,剛好在樹莓派上裝好了core2.1,先上結果。
一、基礎准備
從板子拿到手到今天是第三天。。。中間經歷了許多坑,開始以為能裝win10 iot core結果好像3B+還不行,還有些問題所以就還是選擇官方的系統raspibian。
准備一個顯示器(只有VGA), HDMI轉VGA,鼠標,鍵盤,最重要的:SD卡,SD卡從舊手機拔下來的閃迪64G,讀卡器5塊錢買了一個。
工具准備鏈接:http://shumeipai.nxez.com/download#os
好了,准備好了那么下一步就是裝系統,裝系統也是一步一個坑,先下載系統和往SD卡寫系統,中間還有比如SD卡寫不進去,校驗錯誤,格式化SD卡又重來,又寫,又失敗又格式化再寫,大概重復了十幾次……SD卡終於寫好了放到板子了開機,結果開不了,然后以為系統問題又重做一個我勒個去。電源也是,開始插USB上提示電壓過低,換過數據線,然后換電源插頭,5V2A的比較穩當沒有提示電壓過低了。
終於終於,裝好了系統,成功看到了樹莓派的運行界面(此圖后面遠程連上截屏的不是用顯示器),就很有成就感了,畢竟第一次搞這個。
然后下一步呢,聯網,恩,沒錯,就是5G wifi效果杠杠的。
二、環境准備
要准備什么呢?當然是要准備core環境咯
1、先換源,換國內源,我選了清華的,恩,隨便選的,參考鏈接:http://shumeipai.nxez.com/2013/08/31/raspbian-chinese-software-source.html
2、遠程登錄:我每次都要找個顯示器,然后再插上鼠標和鍵盤,好麻煩,特別是長期用筆記本,鍵盤都翻舊的,擦灰很多拿出來用的。選了兩種遠程方式:window遠程登錄,SSH。
1)window遠程:sudo apt-get install xrdp,然后window端打開遠程桌面訪問就行了,官方系統默認賬號pi,密碼rasperry。
2)SSH:sudo raspi-config 進入配置界面
進入Interfacing Options
然后SSH回車,確定enable就好了。
回到Windows系統,安裝Putty,輸入IP,然后登錄就行了。參考鏈接:https://blog.csdn.net/u012313335/article/details/73920256
3、安裝netcore 2.1環境
1)更新源:sudo apt-get update
2)安裝依賴:sudo apt-get install curl libunwind8 gettext
3)下載安裝SDK或者Runtime:官方地址:https://www.microsoft.com/net/download/linux
或者直接執行:curl -sSL -o dotnet.tar.gz https://download.microsoft.com/download/1/f/7/1f7755c5-934d-4638-b89f-1f4ffa5afe89/dotnet-runtime-2.1.2-linux-arm.tar.gz
4)提取內容:sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
5)設置可以執行DotNet:sudo ln -s /opt/dotnet/dotnet /usr/local/bin
6)測試:dotnet --help 或者 dotnet --info.成功則就如我一開始的圖
core環境安裝參考鏈接:https://www.cnblogs.com/magicbowie/p/9320737.html
附:中間遇到了一個坑,我把轉接器和顯示器拔了,就給樹莓派上電,自動連接wifi,這時候由於DHCP,我不知道樹莓派IP地址無法遠程,應該怎么辦呢?
1)樹莓派用網線連接PC,樹莓派先在網口設置固定IP,然后用網口連接操作。
2)查詢樹莓派的自動獲取IP。
[1]有路由器密碼,那就登錄路由器就查行了
[2]沒有路由器密碼,無法登錄查看,我就是這種,那怎么辦呢?用IP掃描。。。然后探測IP,我在公司網絡測試的,有幾十台無法分清怎么辦?先把樹莓派斷電,掃描。然后保存結果,然后再樹莓派上電,連上wifi,再掃描。。。再加猜。
三、開發程序
為了不每次都去掃描IP(原因在上面)樹莓派連上wifi,網口連接電腦,需要同一個網段,那就需要樹莓派設置靜態IP地址,以便可以不同隨便考慮IP問題。
上傳文件:樹莓派帶有sftp,可以直接使用,用filezilla客戶端。
程序:.net core程序,程序目錄下使用 dotnet publish -r linux-arm進行編譯
目前已測試,程序運行正常,還同時測試了modbus從站程序,運行正常!!!詳細資料待整理補充。。。