当前位置:首页 > MODBUS SDK用户手册
ZModbusSdk配置函数库
使用手册
V1.00
1
2
函数库说明 ............................................................................................................................... 3 1.1 简介: ........................................................................................................................... 3 1.2 提供的函数接口 ........................................................................................................... 3
1.2.1 以太网链路连接 ............................................................................................... 3 1.2.2 串口链路连接 ................................................................................................... 4 1.2.3 以太网与串口链路断开连接 ........................................................................... 5 1.2.4 以太网与串口链路的数据采集(读写) ....................................................... 5 错误代码 ................................................................................................................................. 11
1 函数库说明
1.1 简介:
ZModbusSdk函数库为标准的MODBUS(主机)协议提供函数接口。开发人员可以使用此函数库方便开发出遵循MODBUS协议的程序。如果需要开发MODBUS从机程序,开发人员需要使用其他的函数库或方法。
函数库在连接时使用对不同的链路层提供不同的函数接口如:以太网的为:ZMB_TCPConnectMDBServer,串口的为:ZMB_SerConnectMDBServer。其他的函数接口都相同,不区分连接链路。
(本文档中使用的术语服务器对应MODBUS协议里的从机模块,客户机对应MODBUS协议里的主机模块)
1.2 提供的函数接口
ZModbusSdk提供了连接到从机(服务器)和读写线圈与寄存器的函数接口。
1.2.1 以太网链路连接
? ZMB_TCPConnectMDBServer
描述
调用此函数连接到从机模块(或服务器)。
HANDLE ZMB_TCPConnectMDBServer( char * szIp,
int nDstPort,
int nConnTimeout);
参数 szIp
指定要进行连接的从机(服务器)的IP地址。 nDstPort
指定从机的端口号。 nConnTimeout 指定连接超时。 返回值
返回“非NULL”表示成功,否则为错误。
1.2.2 串口链路连接
? ZMB_SerConnectMDBServer(串口主机使用)
描述
调用此函数连接到从机模块(或服务器)。使用者应该注意对于串口的操作每个串口在同一时间只能打开一次,因此在操作串口时应该控制号程序使它每次只打开一次。 HANDLE ZMB_SerConnectMDBServer ( int iRtuAscii,
char *szCom, int iBautRate, int iByteSize, int iParity, int iStopBits, int iDtrCtl, int iRtsCtl, int iCtsCtl, int iDsrCtl, int iResponse);
参数 iRtuAscii
模块工作方式:RTU:0, ASCII:1 szCom
需要打开的计算机串口。”COM1”,”COM2”,…… iBautRate
模块工作的波特率。9600,19200,…… iByteSize
模块工作的数据位。数据位数(字节表示4-8位) iParity
模块工作的校验位,奇偶校验 0-4:表示:不校验,奇校验,偶校验,标号,空格 iStopBits
模块工作的停止位,0(ONESTOPBIT)表示1个停止位,1(ONE5STOPBITS)表示1.5个停止位,2(TWOSTOPBITS)表示2个停止位 iDtrCtl
模块是否需要DTR控制,0 不需要,1 需要 iRtsCtl
模块是否需要RTS控制,0 不需要,1 需要 iCtsCtl
模块是否需要CTS控制,0 不需要,1 需要 iDsrCtl
模块是否需要Dsr控制,0 不需要,1 需要 iResponse
模块的超时响应,默认 1000 ms 返回值
共分享92篇相关文档