⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cautombr.htm

📁 串口调试工具 用于串口调 试的很方便
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 2.0">
<title>CAutoModbus Class Members</title>
</head>

<body bgcolor="#FFFFFF">

<p><font size="5"><strong>CAutoModbus Class Members </strong></font></p>

<p><font size="3"><strong>class CAutoModbus : public </strong></font><a
href="cmodbu.htm"><font size="3"><strong>CModbus</strong></font></a></p>

<p><a href="#CAutoModbus::CreateInstance"><strong>CreateInstance</strong></a><strong>
- </strong>Create an automation object inside <a
href="Autosrv.htm">Modbus COM Server</a>.</p>

<p><a href="#CAutoModbus::Connect"><strong>Connect</strong></a><strong>
- </strong>Opens serial port or update com port parameters.</p>

<p><a href="modbuimp.htm#CModbus::TxRxMessage"><font size="3"><strong>TxRxMessage</strong></font></a><font
size="3"><strong> </strong></font>virtual CModbus implementation.
<font size="3">Sends and receives a message from a slave.</font></p>

<p><a href="modbuimp.htm#CModbus::ErrorMessage"><strong>ErrorMessage</strong></a><strong>
</strong>virtual CModbus implementation.Return string description
of an error code.</p>

<p>&nbsp;</p>

<p><a href="#CAutoModbus::ByteSize"><strong>ByteSize</strong></a>
- Specifies the number of bits in the bytes transmitted and
received. </p>

<p><a href="#CAutoModbus::BaudRate"><strong>BaudRate</strong></a>
- Specifies the baud rate </p>

<p><a href="#CAutoModbus::ComPort"><strong>ComPort</strong></a><strong>
</strong>- Comm serial port </p>

<p><a href="#CAutoModbus::FlowControl"><strong>FlowControl</strong></a>
- Specifies flow control. </p>

<p><a href="#CAutoModbus::Parity"><strong>Parity</strong></a> -
Specifies the parity scheme to be used. </p>

<p><a href="#CAutoModbus::SilentInterval"><strong>SilentInterval</strong></a>
- silent interval marking the begin and the end of message in ms.</p>

<p><a href="#CAutoModbus::StopBits"><strong>StopBits</strong></a>
- number of stop bits. </p>

<p><a href="#CAutoModbus::Timeout"><strong>Timeout</strong></a> -
message timeout in ms.</p>

<p><a href="#CAutoModbus::TransmissionMode"><strong>TransmissionMode</strong></a>
- Specifies RTU or ASCII transmission mode.</p>

<p><a name="CAutoModbus::CreateInstance"></a><font size="5"><strong>CAutoModbus::CreateInstance</strong></font></p>

<p><font size="3"><strong>HRESULT CreateInstance(LPCSTR
szMachine,LPCSTR szConnectionName);</strong></font></p>

<p><font size="3"><strong>Return Value </strong></font></p>

<p><font size="3">S_OK if function succeeds or HRESULT error code
returned by win api functions.</font></p>

<p><font size="3"><strong>Parameters</strong></font></p>

<p><font size="3">szMachine - </font>name of the machine to be
used, if szMachine is an empty string the function will try to
create the object on the same machine, common COM automation.</p>

<p><font size="3">szConnectionName - A string that specifies the
connection's name. </font></p>

<p><font size="3"><strong>Remarks</strong></font></p>

<p><font size="3">The machine name is used in when filling
COSERVERINFO</font><font size="1"> </font><font size="3">structure,
no security features of DCOM is used. Maybe you have to enhance
this function if you need to implement security features. See </font><a
href="mk:@ivt:pdobj/good/pdobj/com/api1_5ry0.htm"><font size="3">CoCreateInstanceEx</font></a><font
size="3"> in VC++ help for more information about creating remote
objects. </font></p>

<p><font size="3">The connection name can be any text , but you
can only share connections among apps with the same connection
name. Use , for instance , szConnectionName = &quot;com2&quot;
for opening com2 , &quot;com3&quot; for opening com3 and so on.</font></p>

<p><font size="3"><strong>example</strong>:</font></p>

<p><font size="3">HRESULT hRes;<br>
CAutoModbus autoModbus;<br>
//You need to call CoInitializeEx in any thread that use
automation<br>
// this include the main thread.<br>
hRes = ::CoInitializeEx(NULL,COINIT_MULTITHREADED); <br>
<br>
if FAILED(hRes) {<br>
goto ExitError;<br>
}<br>
<br>
<br>
//Create an object on machine with IP Address 200.251.186.30. </font></p>

<p><font size="3">// If you are using win95 the server must be
running before clients on other machines can create </font></p>

<p><font size="3">//objects instances.</font></p>

<p><font size="3"><br>
if
FAILED(autoModbus.CreateInstance(&quot;200.251.186.30&quot;,&quot;com2&quot;))
{</font></p>

<blockquote>
    <p><font size="3">AfxMessageBox(_T(&quot;Error creating
    automation object &quot;));<br>
    goto ExitError;</font></p>
</blockquote>

<p><font size="3">}</font></p>

<p><font size="3">autoModbus.ComPort(2);<br>
autoModbus.StopBits(TWOSTOPBITS);<br>
autoModbus.ByteSize(8);<br>
autoModbus.FlowControl(mbFC_NONE);<br>
autoModbus.Timeout(300);<br>
autoModbus.SilentInterval(20);<br>
autoModbus.TransmissionMode(mbMODE_RTU);</font></p>

<p><font size="3">// this function that actually try to open a
comm port.</font></p>

<p><font size="3"><br>
if (!autoModbus.Connect()) {<br>
goto ExitError;<br>
<br>
}<br>
</font></p>

<p><font size="3"><br>
pModbus= (CModbus*)&amp;autoModbus;<br>
</font></p>

<p>//preset register 40002 to 03 in slave device 17 <font
size="3"><br>
</font>wError = pModbus-&gt;<font size="3">PresetSingleRegister(17,1,3</font>)
; <font size="3"><br>
<br>
if (CModbus::ERR_OK!= </font>wError) {</p>

<blockquote>
    <p>AfxMessageBox( pModbus-&gt;ErrorMessage(wError));</p>
</blockquote>

<p>}</p>

<p><font size="3"><br>
ExitError:<br>
::CoUninitialize(); <br>
</font></p>

<p><font size="3"><strong>See also: </strong></font><a
href="#CAutoModbus::StopBits"><font size="3">StopBits</font></a><font
size="3"> , </font><a href="#CAutoModbus::ByteSize"><font
size="3">ByteSize</font></a><font size="3"> , </font><a
href="#CAutoModbus::FlowControl"><font size="3">FlowControl</font></a><font
size="3"> , </font><a href="#CAutoModbus::Timeout"><font size="3">Timeout</font></a><font
size="3"> , </font><a href="#CAutoModbus::SilentInterval"><font
size="3">SilentInterval</font></a><font size="3"> , </font><a
href="#CAutoModbus::TransmissionMode"><font size="3">TransmissionMode</font></a><font
size="3">.</font></p>

<p><a name="CAutoModbus::Connect"></a><font size="5"><strong>CAutoModbus::Connect</strong></font></p>

<p><font size="3"><strong>BOOL Connect();</strong></font></p>

<p><font size="3"><strong>Return Value </strong></font></p>

<p><font size="3">TRUE if function succeeds or FALSE if fails.</font></p>

<p><font size="3"><strong>Remarks</strong></font></p>

<dl>
    <dd>Calling &quot;Connect&quot; actually try to open a comm
        port. The comm parameters <a
        href="#CAutoModbus::StopBits"><font size="3">StopBits</font></a><font
        size="3"> , </font><a href="#CAutoModbus::ByteSize"><font
        size="3">ByteSize</font></a><font size="3"> , </font><a
        href="#CAutoModbus::FlowControl"><font size="3">FlowControl</font></a><font
        size="3"> , </font><a href="#CAutoModbus::Timeout"><font
        size="3">Timeout</font></a><font size="3"> ... must be
        set before calling this method.</font></dd>
</dl>

<p><font size="3"><strong>See also: </strong></font><a
href="#CAutoModbus::CreateInstance"><font size="3">CreateInstance</font></a></p>

<p>&nbsp;</p>

<p><a name="CAutoModbus::ByteSize"></a><font size="5"><strong>CAutoModbus::ByteSize</strong></font></p>

<p><font size="3"><strong>void ByteSize(WORD wSize);<br>
WORD ByteSize(); </strong></font></p>

<p><font size="3"><strong>Remarks</strong></font></p>

<dl>
    <dd>Specifies the number of bits in the bytes transmitted and
        received. RTU uses 8 and ASCII 7.</dd>
</dl>

<p><font size="3"><strong>See also: </strong></font><a
href="#CAutoModbus::CreateInstance"><font size="3">CreateInstance</font></a></p>

<p><a name="CAutoModbus::BaudRate"></a><font size="5"><strong>CAutoModbus::BaudRate</strong></font></p>

<p><font size="3"><strong>DWORD BaudRate(); //actual baudrate
value <br>
void BaudRate(DWORD dwBaudRate);</strong></font></p>

<p><font size="3"><strong>Remarks</strong></font></p>

<dl>
    <dd>Specifies the baud rate , 300 , 1200 , 9600. You can use
        the following windows constants:</dd>
</dl>

<table border="0">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -