



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第C#中的串口通信SerialPort詳解今天這篇文章帶大家學(xué)習(xí)下C#中的串口通訊。在日常的開發(fā)工作中,如果工作內(nèi)容是CS方向的同學(xué)應(yīng)該很容易接觸到串口通訊方面的業(yè)務(wù)需求。那么也就很容易想到C#中SerialPort類,它就是專門來處理串口通訊相關(guān)的。
了解什么是串口通訊
串口通訊是指外設(shè)和計算機間通過數(shù)據(jù)信號線,地線,控制線等,按位進行傳輸數(shù)據(jù)的一種通訊方式。
這種通訊方式使用的數(shù)據(jù)線少,在遠距離通信中可以節(jié)約成本,但其傳輸速度比并行通訊慢。
串口是計算機上一種非常通用的設(shè)備通訊協(xié)議。大多數(shù)計算機包含兩個基于RS-232的串口。
串口也是儀器儀表設(shè)備通用的通訊協(xié)議,很多GPIB兼容的設(shè)備也帶有RS-232口,同時串口通信協(xié)議也可以用于獲取遠程設(shè)備采集的數(shù)據(jù)。
串行接口是一種可以將接受來自CPU的并行數(shù)據(jù)字符轉(zhuǎn)換為連續(xù)的串行數(shù)據(jù)流發(fā)送出去,同時也可將接受的串行數(shù)據(jù)流轉(zhuǎn)換為并行的數(shù)據(jù)字符供給CPU的器件。
一般完成這種功能的電路,我們稱為串行接口電路。
串行按位(bit)發(fā)送和接收字節(jié),盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時用另一根線接收數(shù)據(jù)。它很簡單并且能夠?qū)崿F(xiàn)遠距離通信。
這里提一句,我們筆記本的USB口,它不是串口,它是所謂的U口,我們的串口如果需要插入到USB口,那么就需要一個RS-232轉(zhuǎn)U口的轉(zhuǎn)換器才可以。
這里需要注意下,一般我們的硬件工程師都會在自己的硬件設(shè)備都內(nèi)置這個小轉(zhuǎn)換設(shè)備,很方便。
C#中的串口通訊SerialPort
從.NETFramework2.0開始,微軟就默認提供了System.IO.Ports.SerialPort類,根據(jù)SerialPort類提供的簡單操作步驟,可以很容易的完成串口的信息收發(fā)程序,從特定的串口中接收到數(shù)據(jù)也可以進行數(shù)據(jù)的發(fā)送。
關(guān)于SerialPort類的應(yīng)用也很容易,可以根據(jù)微軟官方的介紹進行使用。
配置SerialPort的名稱,端口號,波特率等。打開/關(guān)閉串口接收/發(fā)送數(shù)據(jù)
SerialPortmySerialPort=newSerialPort("COM2");
mySerialPort.BaudRate=9600;
mySerialPort.Parity=Parity.None;
mySerialPort.StopBits=StopBits.One;
mySerialPort.DataBits=8;
mySerialPort.Handshake=Handshake.Non;
mySerialPort.DataReceived+=newSerialDataReceivedEvenHandler(DataReceive_Method);
mySerialPort.Open();
mySerialPort.Close();
發(fā)送數(shù)據(jù)
usingSystem.IO.Ports;
privatestaticvoidSendSampleData()
SerialPortport=newSerialPort(
"COM1",9600,Parity.None,8,StopBits.One);
port.Open();
port.Write("HelloWorld");
port.Write(newbyte[]{0x0A,0xE2,0xFF},0,3);
port.Close();
}
namespaceSerialPortExample
classSerialPortProgram
privateSerialPortport=newSerialPort("COM1",
9600,Parity.None,8,StopBits.One);
[STAThread]
staticvoidMain(string[]args)
newSerialPortProgram();
privateSerialPortProgram()
Console.WriteLine("IncomingData:");
port.DataReceived+=new
SerialDataReceivedEventHandler(port_DataReceived);
port.Open();
Application.Run();
privatevoidport_DataReceived(objectsender,SerialDataReceivedEventArgse)
Console.WriteLine(port.ReadExisting());
}
日常串口的使用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB32/T 3387-2018公路水運工程試驗檢測信息管理系統(tǒng)通用要求
- DB31/T 972-2016棉紡廠節(jié)能設(shè)計技術(shù)規(guī)范
- DB31/T 329.23-2021重點單位重要部位安全技術(shù)防范系統(tǒng)要求第23部分:大型活動場所
- DB31/T 1199-2019濕垃圾資源化利用技術(shù)要求餐廚有機廢棄物制備土壤調(diào)理劑
- DB31/T 1112-2018綠色展覽會運營導(dǎo)則
- DB31/ 506-2020集成電路晶圓制造單位產(chǎn)品能源消耗限額
- 編織工藝品的供應(yīng)鏈可持續(xù)發(fā)展考核試卷
- 學(xué)習(xí)型組織與領(lǐng)導(dǎo)科學(xué)的關(guān)系試題及答案
- 現(xiàn)代化工廠PLC控制系統(tǒng)集成及節(jié)能改造協(xié)議
- 海外務(wù)工人員意外傷害醫(yī)療保險代理協(xié)議
- 文藝復(fù)興時期的北方畫派課件
- 起重吊裝與履帶起重機的安全使用課件
- 弱電施工手冊
- 人力資源管理師二級理論知識要點
- 科研成果研制任務(wù)書
- 高分子材料完整版課件
- 完整版:美制螺紋尺寸對照表(牙數(shù)、牙高、螺距、小徑、中徑外徑、鉆孔)
- 籃球比賽記錄表(上下半場)
- 2022年商務(wù)標技術(shù)標最全投標文件模板
- TFDS系統(tǒng)介紹(濟南)
- 市政道路綜合整治工程施工部署方案
評論
0/150
提交評論