.NET Core跨平臺串口通訊使用SerialPortStream基礎(chǔ)類庫問題解決
說明
由于.net core 2.x 中,已經(jīng)找不到 serialport 庫,使用需要使用第三方框架,可以直接在 Nuget 中搜索
SerialPortStream
開源地址https://github.com/jcurl/SerialPortStream
為了方便使用,有人封裝把它了起來,在 Nuget 中搜索
flyfire.CustomSerialPort
這是一個增強的自定義串口類,實現(xiàn)協(xié)議無關(guān)的數(shù)據(jù)幀完整接收功能,支持跨平臺使用,使用 SerialPortStream 基礎(chǔ)類庫。
怎么使用類庫
SerialPortStream在 Windows 下可以正常使用,但是,在 Linux 系統(tǒng)下,必須為 Linux 平臺編譯支持庫編譯類庫,其類庫作者說明如下:

不然的話,項目打包到Linux時,會出現(xiàn):

文章作者給出的方法是,自己在 Linux 下編譯,可是很多人會在這里失敗,輸入命令后,無法安裝 gcc 和 cmake,以及其它軟件。
安裝更新GCC sudo apt-get install gcc 安裝cmake sudo apt-get install cmake
安裝 GCC 、Cmake 的目的,是為了能夠編譯 serialportstream,生成 .so 文件。
安裝完成后,還需要安裝 Git ,把SerialPortStream 克隆下來編譯
有些朋友在安裝GCC、Cmake時,出現(xiàn)了無法安裝的問題。
可以試試這個方法

更方便的方法
為了避免麻煩和方便使用,筆者在 Linux 編譯支持類庫成功后,把需要的文件打包好了。
你只需在 .NET Core 項目中,把文件放進去即可,無需在 Linux 中安裝 Gcc/Cmake 和后續(xù)編譯。
下載地址 http://pan.whuanle.cn/index.php?dir=uploads/dotnet-core-串口&response
下載這三個文件:
- libnserial.so
- libnserial.so.1
- libnserial.so.1.1

把這三個類庫,發(fā)到你的項目中,隨項目一起打包即可。

化繁為簡。
關(guān)于flyfire.CustomSerialPort 的使用,和串口通訊實現(xiàn)示例,筆者還有另一篇文章:
http://www.dhdzp.com/article/234697.htm
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
asp.net DataSet轉(zhuǎn)換成josn并輸出示例
如何將DataSet轉(zhuǎn)換成josn并輸出,這是很多新手朋友們遇到的問題,下面有個不錯的示例,希望對大家有所幫助2014-01-01
C# 中使用iTextSharp組件創(chuàng)建PDF的簡單方法
C# 中使用iTextSharp組件創(chuàng)建PDF的簡單方法,需要的朋友可以參考一下2013-03-03
在ASP.NET Core5.0中訪問HttpContext的方法步驟
這篇文章主要介紹了在ASP.NET Core5.0中訪問HttpContext的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
使CheckBoxList的Attributes屬性生效(修改微軟的一個bug)
使CheckBoxList的Attributes屬性生效(修改微軟的一個bug)...2007-08-08
將DataRow轉(zhuǎn)成指定類型的類,并返回這個類的對象(帶值)
由于實際需要 將DataRow轉(zhuǎn)成指定類型的類,并返回這個類的對象(帶值) ,實現(xiàn)方法看下面的代碼。2008-04-04

