日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#_串口调试助手-扫描可用串口

發布時間:2024/3/13 C# 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#_串口调试助手-扫描可用串口 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先使用的是掃描串口號的方式去掃描可用串口,掃描20個串口,并嘗試打開此串口,如果可以打開則說明此串口可用,添加到列表否則錯誤跳過

但是會造成當已經打開過某個串口將無法掃描到,不是很可取

private void USART_Scan(SerialPort MyPort, ComboBox MyBox) {string Buffer; //判斷當前查詢的串口號是否可用int Count = 0; //記錄當前查詢到的可用串口號個數comboBox1.Items.Clear(); //清空ComboBox顯示內容 for (int i = 1; i < 20; i++){Buffer = "COM" + i.ToString(); //轉換串口號MyPort.PortName = Buffer; //賦值串口號try{MyPort.Open(); //嘗試打開串口MyBox.Items.Add(Buffer); //添加項目到ComboBOXMyPort.Close(); //關閉串口if (Count == 0) { Count = 1; comboBox1.Text = Buffer; }}catch{if (MyPort.IsOpen){MyBox.Items.Add(Buffer); //添加項目到ComboBOXif (Count == 0) { Count = 1; comboBox1.Text = Buffer; }}}} }

其次是直接獲取系統存在的串口列表,可以保證所有打開未打開的都可以獲取到,目前這鐘比較好使,又快

private void USART_Scan(SerialPort MyPort, ComboBox MyBox) {comboBox1.Items.Clear(); //清空ComboBox顯示內容//得到當前串口號 string[] Serial_Name = SerialPort.GetPortNames();if (Serial_Name.Length > 0){Array.Sort(Serial_Name); //排序comboBox1.Items.AddRange(Serial_Name);}//如果當前有項目則默認填充第一個if (comboBox1.Items.Count != 0){comboBox1.SelectedIndex = 0;} }

更重要的是可以實現實時掃描可用串口,方法也比較簡單,思路就是我們每次點擊下拉框切換串口時掃描一次

只需要雙擊Click 后面的空白區域,即可自動生成事件函數

然后將掃描串口的函數放在里面,不過由于每次點擊都會掃描,所以會有輕微卡頓,串口數量特別多沒有怎么測試,三四個問題不大 +-+

個人見解,感謝閱讀。

總結

以上是生活随笔為你收集整理的C#_串口调试助手-扫描可用串口的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。