.NET Core跨平臺串口通訊使用SerialPortStream基礎類庫問題解決
說明
由於.net core 2.x 中,已經找不到 serialport 庫,使用需要使用第三方框架,可以直接在 Nuget 中搜索
SerialPortStream
開源地址https://github.com/jcurl/SerialPortStream
為瞭方便使用,有人封裝把它瞭起來,在 Nuget 中搜索
flyfire.CustomSerialPort
這是一個增強的自定義串口類,實現協議無關的數據幀完整接收功能,支持跨平臺使用,使用 SerialPortStream 基礎類庫。
怎麼使用類庫
SerialPortStream在 Windows 下可以正常使用,但是,在 Linux 系統下,必須為 Linux 平臺編譯支持庫編譯類庫,其類庫作者說明如下:
不然的話,項目打包到Linux時,會出現:
文章作者給出的方法是,自己在 Linux 下編譯,可是很多人會在這裡失敗,輸入命令後,無法安裝 gcc 和 cmake,以及其它軟件。
安裝更新GCC sudo apt-get install gcc 安裝cmake sudo apt-get install cmake
安裝 GCC 、Cmake 的目的,是為瞭能夠編譯 serialportstream,生成 .so 文件。
安裝完成後,還需要安裝 Git ,把SerialPortStream 克隆下來編譯
有些朋友在安裝GCC、Cmake時,出現瞭無法安裝的問題。
可以試試這個方法
更方便的方法
為瞭避免麻煩和方便使用,筆者在 Linux 編譯支持類庫成功後,把需要的文件打包好瞭。
你隻需在 .NET Core 項目中,把文件放進去即可,無需在 Linux 中安裝 Gcc/Cmake 和後續編譯。
下載地址 http://pan.whuanle.cn/index.php?dir=uploads/dotnet-core-串口&response
下載這三個文件:
- libnserial.so
- libnserial.so.1
- libnserial.so.1.1
把這三個類庫,發到你的項目中,隨項目一起打包即可。
化繁為簡。
關於flyfire.CustomSerialPort 的使用,和串口通訊實現示例,筆者還有另一篇文章:
https://www.jb51.net/article/234697.htm
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。
推薦閱讀:
- .Net Core跨平臺應用開發串口篇HelloArm
- .Net Core應用增強型跨平臺串口類庫CustomSerialPort()詳解
- Linux系統Docker 部署 ASP.NET Core應用的流程分析
- 在.Net Framework應用中請求HTTP2站點的問題解析
- redis debug環境搭建過程詳解(使用clion)