CH392作服务器TCP Server应用配置使用
CH392工作在TCP Server模式时,参考手册说明需要打开监听Socket端口,也要设置数据连接Socket端口,注意数据连接Socket的源端口和监听Socket的源端口一致。
配置TCP Server Socket数代码处理如下:
void InitCH392InfParam(void)
{
memset(&CH392Inf, 0, sizeof(CH392Inf)); /* Clear all CH392Inf to zero */
memcpy(CH392Inf.IPAddr, CH392IPAddr, sizeof(CH392IPAddr)); /* Enter the IP address in the CH392Inf file */
memcpy(CH392Inf.GWIPAddr, CH392GWIPAddr, sizeof(CH392GWIPAddr)); /* Enter the gateway IP address in the CH392Inf file */
memcpy(CH392Inf.MASKAddr, CH392IPMask, sizeof(CH392IPMask)); /* Enter the mask IP address in the CH392Inf file */
} /**********************************************************************************
* Function Name : InitSocketParam
* Description : Initialize Socket
* Input : None
* Output : None
* Return : None
**********************************************************************************/
void InitSocketParam(void)
{
memset(&SockInf[0], 0, sizeof(SockInf[0])); /* Clear all SockInf[0] to zero*/
SockInf[0].SourPort = Socket0SourPort; /* SourPort */
SockInf[0].ProtoType = PROTO_TYPE_TCP; /* TCP mode*/ memset(&SockInf[1], 0, sizeof(SockInf[1])); /* Clear all SockInf[1] to zero*/
SockInf[1].SourPort = Socket0SourPort; /* SourPort */
SockInf[1].ProtoType = PROTO_TYPE_TCP; /* TCP mode*/ memset(&SockInf[2], 0, sizeof(SockInf[1])); /* Clear all SockInf[1] to zero*/
SockInf[2].SourPort = Socket0SourPort; /* SourPort */
SockInf[2].ProtoType = PROTO_TYPE_TCP; /* TCP mode*/
} /**********************************************************************************
* Function Name : CH392SocketInitOpen
* Description : Set CH392 socket parameters to initialize and open the socket
* Input : None
* Output : None
* Return : None
**********************************************************************************/
void CH392SocketInitOpen(void)
{
UINT8 i; CH392CMDSetSocketProtType(0, SockInf[0].ProtoType); /* set socket 0 type */
CH392CMDSetSocketSourPort(0, SockInf[0].SourPort); /* set socket 0 sour port */
i = CH392CMDOpenSocket(0); /* open socket 0 */
mStopIfError(i); /* check the result */
i = CH392CMDTCPListen(0);
mStopIfError(i); CH392CMDSetSocketProtType(1, SockInf[1].ProtoType); /* set socket 1 type */
CH392CMDSetSocketSourPort(1, SockInf[1].SourPort); /* set socket 1 sour port */ CH392CMDSetSocketProtType(2, SockInf[2].ProtoType); /* set socket 1 type */
CH392CMDSetSocketSourPort(2, SockInf[2].SourPort); /* set socket 1 sour port */
}
注意:代码开启了两个数据连接Socket,CH392F最多支持开启三个,CH392T最多支持开启七个。
CH392作服务器TCP Server应用配置使用的更多相关文章
- Modbus库开发笔记之九:利用协议栈开发Modbus TCP Server应用
前面我们已经完成了Modbus协议栈的开发,但这不是我们的目的.我们开发它的目的当然是要使用它来解决我们的实际问题.接下来我们就使用刚开发的Modbus协议栈开发一个Modbus TCP Server ...
- 代码实现SQL SERVER TCP/IP协议配置
代码实现SQL SERVER TCP/IP协议配置 SET NOCOUNT ON ) ,) ,) SET @Root = 'HKEY_LOCAL_MACHINE' SET @Path = 'Softw ...
- 如何在linux服务器部署Rstudio server,配置ODBC远程访问win 服务器上的SQL server
如何在linux服务器部署Rstudio server,配置ODBC后通过RODBC包远程访问SQL server 背景介绍:之前写过一篇文章,提到近期要部署Rstudio server(搭建数据分析 ...
- 免费ftp服务器FileZilla Server配置
FileZilla Server下载安装完成后,必须启动软件进行设置,由于此软件是英文,本来就是一款陌生的软件,再加上英文,配置难度可想而知,小编从网上找到一篇非常详细的教程进行整理了一番,确保读到这 ...
- Windows Server 2019 配置远程桌面授权服务器许可RD
Windows Server 2019 配置远程桌面授权服务器许可RD Windows Server 201默认的最大远程登录连接为2个,超过这个数目需要使用license server进行授权,但又 ...
- Ubuntu Server如何配置SFTP(建立用户监狱)
Ubuntu Server如何配置SFTP(建立用户监狱) SSH File Transfer Protocol是一个比普通FTP更为安全的文件传输协议.(参考资料:http://en.wikip ...
- CentOS 6.3下Samba服务器的安装与配置方法(图文详解)
这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下 一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...
- 【转载】Linux NFS服务器的安装与配置
一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操 ...
- Ubuntu Server如何配置SFTP
SH File Transfer Protocol是一个比普通FTP更为安全的文件传输协议.(参考资料:http://en.wikipedia.org/wiki/SSH_File_Transfer_P ...
- Tomcat中server.xml配置及Context的配置说明
server.xml配置简介 下面是这个文件中的基本配置信息,更具体的配置信息见tomcat的文档 server: port 指定一个端口,这个 ...
随机推荐
- win32-改变显示器的亮度
调用SetMonitorBrightness 代码示例: #pragma comment(lib, "dxva2.lib") #include <windows.h> ...
- 项目实战:Qt监测操作系统物理网卡通断v1.1.0(支持windows、linux、国产麒麟系统)
需求 使用Qt软件开发一个检测网卡的功能. 兼容windows.linux,国产麒麟系统(同为linux) Demo windows上运行: 国产麒麟操作上运行: 功 ...
- 项目实战:Qt+FFmpeg录屏应用(支持帧率、清晰度设置)
若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/109827936各位读者,知识无穷而人力有穷,要 ...
- 【Azure Batch】在中国区批处理服务(Mooncake Batch Account)上实验自动池(Auto Pool)的创建/删除
问题描述 在Azure Batch的介绍文档中,提出了自动池的概念, 它可以在任务完成后,自动删除Pool资源,详细介绍:https://docs.azure.cn/zh-cn/batch/nodes ...
- Jmeter 之常数吞吐量作用
一 添加方法: 线程组右键->添加->定时器-> 常数吞吐量定时器 二 作用: 常数吞吐量定时器的作用: 设置最大的吞吐量不超过设置的值 注意:如果线程能发送的请求远远低于设置的 ...
- 按值传递,引用传递 浅析java String ,对象与对象引用的区别
目录 一.前言 二.何谓对象? 三.何谓对象引用? 四.创建对象 Vehicle veh1 = new Vehicle(); 五.参数传值 六.Java Sting 最后!有错误的地方欢迎指正 一.前 ...
- Vue前端项目架构梳理
撰写日期:2020-07-23 撰稿人:彭成刚 转载需经本人同意. Vue前端项目架构梳理 后期可以将TypeScript加入到项目来,对参数的数据类型进行更严格的校验. 现在主流就 Vue 和 Re ...
- 选择单词后 按 ctrl + space 单词发音
需求: 在ide或其他地方,经常有单词发音不是很确定,但并不要很详细 就听个单词发音. 确定快捷键: 左手单手操作,我键盘上貌似就 左边的ctrl和空格键 还没有设定 翻译软件: 使用 pc端的 欧路 ...
- day01-SpringBoot基本介绍
SpringBoot基本介绍 1.SpringBoot是什么? 官网地址:https://spring.io/projects/spring-boot 学习文档:https://docs.spring ...
- 引领文旅新体验!3DCAT实时云渲染助力打造“永不落幕”的湾区文采会元宇宙
2022年11月25日至27日,2022年粤港澳大湾区公共文化和旅游产品(东莞)采购会(简称"湾区文采会")在广东省东莞市文化馆举行. 文采会期间,文采会元宇宙线上虚拟展厅全新亮相 ...