c#串列埠通訊之adc資料採集
使用c#直接拖串列埠控制元件serialPort1 設定屬性即可。
</pre><p></p><p></p><pre name="code" class="cpp">using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; <span style="color:#ff0000;">using System.IO.Ports;</span> namespace Adc_Display { public partial class Form1 : Form { public Form1() { InitializeComponent(); serialPort1.DataReceived += new SerialDataReceivedEventHandler(PortDataReceivedEvent); //新增串列埠資料接受事件 System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false; // } private void PortDataReceivedEvent(object sender, SerialDataReceivedEventArgs args) //串列埠資料接收 { <span style="color:#ff0000;"> byte Data = (byte)serialPort1.ReadByte(); //讀串列埠接收位元組, progressBar1.Value = Data; //進度條賦值,顯示進度條刻度</span> } private void button1_Click(object sender, EventArgs e) { if (serialPort1.IsOpen) //判斷 { groupBox2.Visible = false; //第二個框框可見 this.Size = new Size(620, 117); //縮小 serialPort1.Close(); //此處可不加try,catch button1.Text = "開啟串列埠"; } else { try { serialPort1.PortName = comboBox1.Text; //串列埠號 serialPort1.Open(); //開啟 groupBox2.Visible = true; //第二個框框可見 this.Size = new Size(620, 172); //放大 button1.Text = "關閉串列埠"; //按鍵標題 } catch { MessageBox.Show("串列埠開啟錯誤", "錯誤"); } } } } }
效果如圖:
相關推薦
c#串列埠通訊之adc資料採集
使用c#直接拖串列埠控制元件serialPort1 設定屬性即可。 </pre><p></p><p></p><pre name="code" class="cpp">using System; usin
C# 串列埠通訊的資料丟失和同步非同步問題
串列埠通訊最痛苦的在於無法深入瞭解串列埠內部的規則,只能呼叫c#提供的SerialPort類,但是使用的時候也出現了很多問題,有的是自身的有的是由於不瞭解造成的。 首先SerialPort類提供了很多很好的方法,對於讀寫都很有幫助,但是有的讀是同步,有的是非同步,同步就是
串列埠通訊之 CRC校驗
一、CRC16簡介 迴圈冗餘碼CRC檢驗技術廣泛應用於測控及通訊領域。CRC計算可以靠專用的硬體來實現,但是對於低成本的微控制器系統,在沒有硬體支援下實現CRC檢驗,關鍵的問題就是如何通過軟體來完成CRC計算,也就是CRC演算法的問題。下
串列埠通訊之 QByteArray詳解
QByteArray在串列埠通訊中經常被使用,有一定必要較為全面詳細的對QByteArray進行闡述。本文通過以下幾個部分加以介紹 1 初始化 2 訪問與賦值 訪問QByteArray主要有4中方式,分別為[]、at()、data[]和constDat
C#串列埠通訊例項
C#串列埠通訊例項 程式介面如下圖: 引數設定介面程式碼如下: using System; using System.Collections.Generic; using System.ComponentModel; using Syste
C#串列埠通訊助手
簡介: 使用C#,開發平臺VS2010,功能是串列埠通訊。功能很簡單,僅供大家學習,效果如圖: 1.使用控制元件 控制元件型別 命名 用途 說明
linux c/c++串列埠通訊
/*串列埠裝置無論是在工控領域,還是在嵌入式裝置領域,應用都非常廣泛。而串列埠程式設計也就顯得必不可少。 偶然的一次機會,需要使用串列埠,而且作業系統還要求是Linux,因此,趁著這次機會,綜合別人的程式碼, 進行了一次整理和封裝。具體的封裝格式為C程式碼,這樣做是為了很好的
STM32之串列埠通訊之printf重定向
在串列埠通訊中,常用的協議包括RS-232、RS-422和RS-485。 •RS-232:標準串列埠,最常用的一種序列通訊介面。有三種類型(A,B和C),它們分別採用不同的電壓來表示on和off。最被廣泛使用的是RS-232C,它將mark(on)位元的電壓定義為-3V到-12V之間,而將space(off)
C#串列埠通訊程式SerialPort類
上篇文章主要是關於串列埠通訊中微控制器部分的程式編寫。在實際應用中,常常還要有上位機的配合才能完成工作。寫串列埠通訊的上位機程式,常常應用的程式語言有C++,VB,C#等。VB沒有學過,C++編寫視窗應用程式接觸也不多,暑假自己看了一些C#的書,也有了一些瞭解,所以就用C#
C/C++串列埠通訊(2)-重疊操作
重疊操作時,操作還未完成函式就返回。 重疊I/O非常靈活,它也可以實現阻塞。有兩種方法可以等待操作完成: 一種方法是用WaitForSingleObject這樣的等待函式來等待OVERLAPPED結構的hEvent成員; 另一種方法是呼叫GetOver
一個C串列埠通訊程式
#include <stdio.h>#include <dos.h>#include <conio.h>#include <string.h> #define COM232 0x2f8#define COMINT 0x0b
C/C++串列埠通訊(1)-同步操作
轉自: 串列埠通訊方式:呼叫Windows的API函式 兩種操作方式: 1. 同步操作方式 API函式會阻塞直到操作完成以後才能返回(在多執行緒方式中,雖然不會阻塞主執行緒,但是仍然會阻塞監聽執行緒); 2. 重疊操作方式(又稱為非同
51微控制器串列埠通訊的幀資料接收
首先定義一個數據幀格式,Header :{ 0xAA 0x55} type:{ 0x01 | 0x02 | 0x03 } length:{ N } body :{____n個位元組的資料___ } 資料的格式就是上面的定義 Header 為幀頭 標記一個數據幀的開始,t
關於c#串列埠通訊
/// <summary> /// 獲取serialPort /// </summary> private SerialPort serialPort = new SerialPort();
【C語言實現串列埠通訊知識點整理(三)】串列埠開啟、設定資料成功後進行資料讀寫
int OpenDev(char *Dev) { int fd = open(Dev,O_RDWR | O_NOCTTY | O_NONBLOCK); if(-1 == fd) { perror("Can't Open Serial Port"); return -1;
UART串列埠通訊淺談之(三)--字元與資料的轉換
版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/solar_Lan/article/details/78093692 學串列埠通訊的應用主要是實現微控制器和電腦之間的資訊互發,可以用電腦控制微控制器的一些資訊,可以把微控制器的一些資訊狀況發給電腦
C#winform實現串列埠通訊讀取電子天平資料
1. 本文中所試用的是針對賽多利斯電子天平的稱重資料讀取,可試用賽多利斯電子天平的型別為SQP系列和BSA系列,兩種型別的區別在波特率等的設定不同,其他相同。 點選開始實驗,開啟串列埠,準備讀取資料,讀取到的資料自動顯示在改稱重結果上; 具體實現程式碼: Seria
C#串列埠接收資料-根據特定通訊協議解析
string strs3 = null; //接收資料並顯示函式:可用:測試的接收資料為:0x01 0x02(鎮頭) 0x02(長度) 0x03(幀尾、即校驗位) 0x34 0x05(資料):這是硬體傳送過來的測試資料 private
Linux C開發之用modbus實現串列埠通訊
想要讀取串列埠資料,modbus是一個很好用的第三方庫。該庫適用於windows和Linux,支援RTP、RTU等協議,基於Linux的開發較難一些,是我前段時間主要的研究方向。http://www.modbus.org/是modbus的主頁,有興趣的朋友可以檢視一
微控制器C語言之串列埠通訊協議
現實生活中, 我們總是要與人打交道,互通有無。微控制器也一樣,需要跟各種裝置互動。例如汽車的顯示儀表需要知道汽車的轉速及電動機的執行引數,那麼顯示儀表就需要從汽車的底層控制器取得資料。而這個資料的獲得過程就是一個通訊過程。類似的例子還有控制器通常是微控制器或者PLC與變頻器