資源簡(jiǎn)介
Visual studio 環(huán)境下C#實(shí)現(xiàn)Modbus協(xié)議
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Timers;
using?System.IO.Ports;
namespace?Modbus_Poll_CS
{
????public?partial?class?Form1?:?Form
????{
????????modbus?mb?=?new?modbus();
????????SerialPort?sp?=?new?SerialPort();
????????System.Timers.Timer?timer?=?new?System.Timers.Timer();
????????string?dataType;
????????bool?isPolling?=?false;
????????int?pollCount;
????????#region?GUI?Delegate?Declarations
????????public?delegate?void?GUIDelegate(string?paramString);
????????public?delegate?void?GUIClear();
????????public?delegate?void?GUIStatus(string?paramString);
????????#endregion
????????public?Form1()
????????{
????????????InitializeComponent();
????????????LoadListboxes();
????????????timer.Elapsed?+=?new?ElapsedEventHandler(timer_Elapsed);
????????}
????????#region?Delegate?Functions
????????public?void?DoGUIClear()
????????{
????????????if?(this.InvokeRequired)
????????????{
????????????????GUIClear?delegateMethod?=?new?GUIClear(this.DoGUIClear);
????????????????this.Invoke(delegateMethod);
????????????}
????????????else
????????????????this.lstRegisterValues.Items.Clear();
????????}
????????public?void?DoGUIStatus(string?paramString)
????????{
????????????if?(this.InvokeRequired)
????????????{
????????????????GUIStatus?delegateMethod?=?new?GUIStatus(this.DoGUIStatus);
????????????????this.Invoke(delegateMethod?new?object[]?{?paramString?});
????????????}
????????????else
????????????????this.lblStatus.Text?=?paramString;
????????}
????????public?void?DoGUIUpdate(string?paramString)
????????{
????????????if?(this.InvokeRequired)
????????????{
????????????????GUIDelegate?delegateMethod?=?new?GUIDelegate(this.DoGUIUpdate);
????????????????this.Invoke(delegateMethod?new?object[]?{?paramString?});
????????????}
????????????else
????????????????this.lstRegisterValues.Items.Add(paramString);
????????}
????????#endregion
????????#region?Timer?Elapsed?Event?Handler
????????void?timer_Elapsed(object?sender?ElapsedEventArgs?e)
????????{
????????????PollFunction();
????????}
????????#endregion
????????#region?Load?Listboxes
????????private?void?LoadListboxes()
????????{
????????????//Three?to?load?-?ports?baudrates?datetype.??Also?set?default?textbox?values:
????????????//1)?Available?Ports:
????????????string[]?ports?=?SerialPort.GetPortNames();
????????????foreach?(string?port?in?ports)
????????????{
????????????????lstPorts.Items.Add(port);
????????????}
????????????lstPorts.SelectedIndex?=?0;
????????????//2)?Baudrates:
????????????string[]?baudrates?=?{?“230400“?“115200“?“57600“?“38400“?“19200“?“9600“?};
????????????foreach?(string?baudrate?in?baudrates)
????????????{
????????????????lstBaudrate.Items.Add(baudrate);
????????????}
????????????lstBaudrate.SelectedIndex?=?1;
????????????//3)?Datatype
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件?????????931??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS.sln
?????文件???????16896??2007-10-18?09:44??Modbus?Poll?CS\Modbus?Poll?CS.suo
?????目錄???????????0??2007-10-18?09:44??Modbus?Poll?CS\Modbus?Poll?CS\
?????目錄???????????0??2007-10-18?11:30??Modbus?Poll?CS\Modbus?Poll?CS\bin\
?????目錄???????????0??2007-10-18?11:30??Modbus?Poll?CS\Modbus?Poll?CS\bin\Release\
?????文件???????32768??2007-10-18?11:30??Modbus?Poll?CS\Modbus?Poll?CS\bin\Release\Modbus?Poll?CS.exe
?????文件???????36352??2007-10-18?11:30??Modbus?Poll?CS\Modbus?Poll?CS\bin\Release\Modbus?Poll?CS.pdb
?????文件????????5632??2005-09-23?06:56??Modbus?Poll?CS\Modbus?Poll?CS\bin\Release\Modbus?Poll?CS.vshost.exe
?????文件????????9893??2007-10-18?09:44??Modbus?Poll?CS\Modbus?Poll?CS\Form1.cs
?????文件???????16759??2007-10-18?09:44??Modbus?Poll?CS\Modbus?Poll?CS\Form1.Designer.cs
?????文件????????6013??2007-10-18?09:44??Modbus?Poll?CS\Modbus?Poll?CS\Form1.resx
?????文件????????3272??2007-10-17?11:42??Modbus?Poll?CS\Modbus?Poll?CS\Modbus?Poll?CS.csproj
?????文件????????9096??2007-10-17?11:42??Modbus?Poll?CS\Modbus?Poll?CS\modbus.cs
?????文件?????????481??2007-10-17?11:41??Modbus?Poll?CS\Modbus?Poll?CS\Program.cs
?????目錄???????????0??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\
?????文件????????1276??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\AssemblyInfo.cs
?????文件????????2856??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\Resources.Designer.cs
?????文件????????5612??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\Resources.resx
?????文件????????1098??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\Settings.Designer.cs
?????文件?????????249??2007-10-17?11:33??Modbus?Poll?CS\Modbus?Poll?CS\Properties\Settings.settings
評(píng)論
共有 條評(píng)論