資源簡介
用C#寫的串口調試助手源代碼,VS2010工程,內有可執行文件可直接使用,也可以作為自己開發的串口程序的框架使用。現有可以配置波特率、停止位、串口號等參數的接口,也有手動發送和定時自動發送的功能,還有自動接收串口數據存文件并顯示的功能。

代碼片段和文件信息
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;
using?Microsoft.Win32.SafeHandles;
using?System.Runtime.InteropServices;
using?System.IO;
using?System.Diagnostics;
using?System.IO.Ports;
using?LEDLib;
using?System.Threading;
namespace?DTSerial
{
????public?enum?CmdShow
????{
????????SW_HIDE?=?0
????????SW_SHOW?=?5
????????SW_SHOWNOACTIVATE?=?4
????}
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????bool?m_bOpen?=?false;
????????#region?全局變量
????????Int32?ReceiveByte_Cnt?=?0;//串口操作,接收字節計數
????????Int32?SendByte_Cnt?=?0;//串口操作,發送字節計數
????????bool?ReceiveByte_Busy?=?false;
????????bool?serialPort_Closing?=?false;//串口正在關閉標志
????????bool?doing_flow?=?false;
????????System.Timers.Timer?stat_timer?=?new?System.Timers.Timer(100);
????????public?List?BufferData?=?new?List();//串口數據數據幀識別緩存空間
????????public?FormTM?tmfrm?=?null;//new?FormTM();
????????public?Thread?thrd?=?null;
????????public?FileStream?writefile?=?null;
????????#endregion
????????private?void?Form1_Load(object?sender?EventArgs?e)
????????{
????????????#region?串口設置初始狀態
????????????try
????????????{
????????????????foreach?(string?com?in?System.IO.Ports.SerialPort.GetPortNames())//自動獲取串口號名稱
????????????????????this.cmbboxCom.Items.Add(com);
????????????????foreach?(string?s?in?Enum.GetNames(typeof(Parity)))
????????????????{
????????????????????//Console.WriteLine(“?{0}“?s);
????????????????????cmbCheckBit.Items.Add(s);
????????????????}
????????????????foreach?(string?s?in?Enum.GetNames(typeof(StopBits)))
????????????????{
????????????????????cmbStopBit.Items.Add(s);
????????????????}
????????????????foreach?(string?s?in?Enum.GetNames(typeof(Handshake)))
????????????????{
????????????????????cmbHandShake.Items.Add(s);
????????????????}
????????????????//默認串口設置顯示
????????????????cmbboxCom.SelectedIndex?=?0;
????????????????cmbBaudRate.Items.Add(“4800“);
????????????????cmbBaudRate.Items.Add(“9600“);
????????????????cmbBaudRate.Items.Add(“19200“);
????????????????cmbBaudRate.Items.Add(“38400“);
????????????????cmbBaudRate.Items.Add(“115200“);
????????????????cmbBaudRate.SelectedIndex?=?4;
????????????????cmbDataBit.SelectedIndex?=?4;
????????????????cmbCheckBit.SelectedIndex?=?1;
????????????????cmbStopBit.SelectedIndex?=?1;
????????????????cmbHandShake.SelectedIndex?=?0;
????????????}
????????????catch
????????????{
????????????????MessageBox.Show(“找不到串口連接!“?“Error“);
????????????}
????????????#endregion
????????????stat_timer.Elapsed?+=?new?System.Timers.ElapsedEventHandler(stat_tmrout);
????????????stat_timer.AutoReset?=?false;//false執行一次,true一直執行
????????}
????????private?void?stat_tmrout(object?source?System.Timers.ElapsedEventArgs?e)
????????{
????????????ledRcvSt
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????30208??2017-11-11?15:47??DTSerialba
?????文件??????42496??2017-11-11?15:47??DTSerialba
?????文件??????11600??2017-11-11?15:45??DTSerialba
?????文件????????490??2015-06-04?12:48??DTSerialba
?????文件???????7680??2016-06-03?08:29??DTSerialba
?????文件??????29184??2017-11-11?15:47??DTSerialba
?????文件??????38400??2017-11-11?15:47??DTSerialba
?????文件??????11600??2017-11-11?15:47??DTSerialba
?????文件????????490??2015-06-04?12:48??DTSerialba
?????文件???????7680??2016-06-03?08:29??DTSerialba
?????文件???????4077??2017-11-11?15:46??DTSerialba
?????文件??????17687??2017-11-11?15:42??DTSerialba
?????文件??????31314??2017-11-11?15:42??DTSerialba
?????文件???????6428??2017-11-11?15:42??DTSerialba
?????文件???????3552??2016-08-22?10:59??DTSerialba
?????文件???????3634??2016-08-22?10:59??DTSerialba
?????文件???????6921??2016-08-22?10:59??DTSerialba
?????文件???????7680??2016-06-03?08:29??DTSerialba
?????文件???????9804??2017-11-11?15:46??DTSerialba
?????文件???????6368??2017-11-11?15:47??DTSerialba
?????文件???????3834??2017-11-11?15:47??DTSerialba
?????文件???????1034??2017-11-11?15:47??DTSerialba
?????文件??????30208??2017-11-11?15:47??DTSerialba
?????文件????????180??2017-11-11?15:47??DTSerialba
?????文件????????180??2017-11-11?15:47??DTSerialba
?????文件??????42496??2017-11-11?15:47??DTSerialba
?????文件????????180??2017-11-11?15:47??DTSerialba
?????文件????????388??2016-08-22?15:17??DTSerialba
?????文件????????928??2016-08-22?15:17??DTSerialba
?????文件???????9810??2017-11-11?15:25??DTSerialba
............此處省略33個文件信息
評論
共有 條評論