当前位置: 首页 > news >正文

天水市城市建设投资集团网站360免费自助建站

天水市城市建设投资集团网站,360免费自助建站,seo的最终目的是?,怎么自己做一个网站文章目录 1、TCP介绍2、W5500简介2.1 关键函数socketlistensendgetSn_RX_RSRrecv自动心跳包检测getSn_SR 1、TCP介绍 TCP 服务端#xff1a; 创建套接字[socket]#xff1a;服务器首先创建一个套接字#xff0c;这是网络通信的端点。绑定套接字[bind]#xff1a;服务器将… 文章目录 1、TCP介绍2、W5500简介2.1 关键函数socketlistensendgetSn_RX_RSRrecv自动心跳包检测getSn_SR 1、TCP介绍 TCP 服务端 创建套接字[socket]服务器首先创建一个套接字这是网络通信的端点。绑定套接字[bind]服务器将套接字绑定到一个网络接口上通常是本地IP地址并指定一个端口号客户端将通过这个端口来连接服务器。监听套接字[listen]服务器开始监听来自客户端的连接请求。接受连接[accept]当服务器监听到客户端的连接请求时它将接受这个连接并创建一个新的套接字来处理与该客户端的通信。服务器可以同时接受多个客户端的连接。发送和接收数据[send/recv]服务器通过这个新的套接字与客户端进行数据交换。 6. 关闭连接数据交换完成后服务器可以关闭与客户端的连接。 TCP客户端 创建套接字[socket]客户端创建一个套接字。连接到服务器[connet]客户端连接到服务器的IP地址和端口。发送和接收数据[send/recv]一旦连接建立客户端就可以通过套接字发送请求并接收服务器的响应。关闭连接数据交换完成后客户端可以关闭套接字结束与服务器的通信。 2、W5500简介 特点 支持硬件 TCP/IP 协议TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE 支持 8 个独立端口Socket同时通讯 支持掉电模式支持网络唤醒 支持高速串行外设接口SPI 模式 03 内部 32K 字节收发缓存 内嵌 10BaseT/100BaseTX 以太网物理层PHY 支持自动协商10/100-Based 全双工/半双工 不支持 IP 分片 2.1 关键函数 socket 功能socket如果处于关闭状态则用于创建套接字[socket]、绑定套接字[bind]。 /** *brief This Socket function initialize the channel in perticular mode, and set the port and wait for W5200 done it. *param s: socket number. *param protocol: The socket to chose. *param port:The port to bind. *param flag: Set some bit of MR,such as ** No Delayed Ack(TCP) flag. *return 1 for sucess else 0. */ uint8 socket(SOCKET s, uint8 protocol, uint16 port, uint8 flag)描述按照传递的参数初始化并打开socket s 参数s socket号(0-7) 参数protocol 指定要运行的协议类型(Sn_MR_XXX) 参数port 绑定的端口号如果为0则自动分配 参数flag socket flags见SF_XXXXXXX 返回s 如果成功 SOCKERR_SOCKNUM 如果socket号无效 SOCKERR_SOCKMODE 不支持的socket模式 SOCKERR_SOCKFLAG 无效的socket flags. listen 功能socket开始监听 /** *brief This function established the connection for the channel in passive (server) mode. This function waits for the request from the peer. *param s: socket number. *return 1 for success else 0. */ uint8 listen(SOCKET s)send 功能在socket上的tcp链接成功建立后可以调用send函数来发送数据。 /** *brief This function used to send the data in TCP mode *param s: socket number. *param buf: data buffer to send. *param len: data length. *return 1 for success else 0. */ uint16 send(SOCKET s, const uint8 * buf, uint16 len)getSn_RX_RSR 功能几号sockedt 接收到数据长度。 /** *brief This fuction is to give size of received data in receive buffer. *param s: socket number *return socket TX free buf size */ uint16 getSn_RX_RSR(SOCKET s)recv 功能 接收TCP socket上连接的对象发来的数据 /** *brief This function is an application I/F function which is used to receive the data in TCP mode.It continues to wait for data as much as the application wants to receive. *param s: socket number. *param buf: data buffer to receive. *param len: data length. *return received data size for success else 0. */ uint16 recv(SOCKET s, uint8 * buf, uint16 len)自动心跳包检测 个人使用send_Ka函数如下手动每隔3S自动发送心跳包。 void send_Ka(SOCKET s) {IINCHIP_WRITE(Sn_CR(s),Sn_CR_SEND_KEEP);return; }void setKeepAlive(SOCKET s,uint8_t timeout) {IINCHIP_WRITE(Sn_KPALVTR(s),timeout);}getSn_SR 读取Socket sn状态机 /** *brief This function is to get socket status *param s: socket number *return socket status/* Sn_SR values */ *#define SOCK_CLOSED 0x00 /** closed */ *#define SOCK_INIT 0x13 /** init state */ *#define SOCK_LISTEN 0x14 /** listen state */ *#define SOCK_SYNSENT 0x15 /** connection state */ *#define SOCK_SYNRECV 0x16 /** connection state */ *#define SOCK_ESTABLISHED 0x17 /** success to connect */ *#define SOCK_FIN_WAIT 0x18 /** closing state */ *#define SOCK_CLOSING 0x1A /** closing state */ *#define SOCK_TIME_WAIT 0x1B /** closing state */ *#define SOCK_CLOSE_WAIT 0x1C /** closing state */ *#define SOCK_LAST_ACK 0x1D /** closing state */ *#define SOCK_UDP 0x22 /** udp socket */ *#define SOCK_IPRAW 0x32 /** ip raw mode socket */ *#define SOCK_MACRAW 0x42 /** mac raw mode socket */ *#define SOCK_PPPOE 0x5F /** pppoe socket */ */ uint8 getSn_SR(SOCKET s) {return IINCHIP_READ(Sn_SR(s)); }状态描述SOCK_CLOSEDsocket处于关闭状态资源被释放。disconnect或close命令生效后或者超时后无视之前状态变为这个状态此时无法通信SOCK_INITsocket以TCP模式打开然后才可以调用connect或listen。通过正确地调用socket函数以转变为这个状态SOCK_LISTENsocket正以TCP服务器模式运作并正在等待(监听)连接请求SOCK_SYNSENTsocket发送了一个连接请求包(SYN包)这是从SOCK_INIT使用connect命令后的中间状态如果随后收到了“接受连接”(SYN/ACK包)则会转为SOCK_ESTABLISHED否则在超时后会转为SOCK_CLOSED同时会设置超时中断标志位SOCK_SYNRECVsocket接收到了“请求连接”(SYN包)如果随后发送答复(SYN/ACK包)成功则会转为SOCK_ESTABLISHED否则在超时后会转为SOCK_CLOSED同时会设置超时中断标志位SOCK_ESTABLISHEDsocket tcp连接已建立即在SOCK_LISTEN状态下收到了tcp客户端发来的SYN包并答复成功或使用connect命令成功后会转变为的状态。SOCK_FIN_WAIT SOCK_CLOSING SOCK_TIME_WAIT表明socket正在关闭。它们是tcp链接主动或被动关闭的中间状态SOCK_CLOSE_WAIT表明socket正在关闭。这个状态说明socket收到了tcp链接的另一方发来的“断连请求”(FIN包)。这是半关闭状态可以继续发送数据。发送完后应该调用disconnect或者close来完全关闭。SOCK_LAST_ACK表明socket正在被动关闭状态下。这个状态说明socket正在等待对“断连请求”(FIN包)的答复(FIN/ACK包)。当成功收到答复或者超时后会变为SOCK_CLOSED状态。SOCK_UDPsocket正以UDP模式运作。通过正确地调用socket函数以转变为这个状态SOCK_IPRAWIP raw模式。本文不涉及这方面内容。SOCK_MACRAWMACRAW模式。本文不涉及这方面内容。
http://www.hkea.cn/news/14273976/

相关文章:

  • 晋中建设集团有限公司网站网站建设怎么选择MySQL数据库大小
  • 大连城建设计研究院网站智能小程序搭建
  • 怎样让网站做301处理深圳整站全网推广
  • 建设网站公开教学视频下载上海企业名录大全官网
  • 国贸行业的网站建设宁波seo运营推广平台排名
  • php做原生直播网站上海微网站开发
  • 黄冈智能网站建设平台深圳大眼睛网站建设
  • 网站 多国语言做网站的软件
  • 网站已改版宁波建设工程学校
  • 深圳网站建设价格多少网站建设内容论文
  • 家居网站应该怎么做北京门户企业网站建设
  • 提供信息门户网站搭建网站首页设计收费
  • 室内设计网站参考wordpress 幻灯制作
  • 怎么建网站平台007工作制
  • 仿制别人网站十大免费跨境app
  • 网站开发和安卓开发沧州微酷网络科技有限公司
  • 网站开发难吗2008官方网站建设报价
  • 织梦cms 网站栏目管理咸阳网站开发公司电话
  • 如何用phpstudy做网站百度快速收录账号购买
  • 做农业的公司管理网站大连网站代运营的公司有哪些
  • 影视传媒广告公司网站模板微信上的网站怎么做的
  • 网站建设方案服务器网站怎么进入
  • 电子商务网站建设的答案用yii框架做的网站如何搭建
  • 零售网站开发wordpress 社交按钮
  • 湖南网站制作团队给建设单位造成损失的
  • 威胁网站检测平台建设wordpress dux2.0
  • 做企业网站的人才大连网络营销网站
  • 企业网站域名后缀做准的算命网站
  • 毛织厂家东莞网站建设什么是网络建设
  • 网站建设所需费用明细合肥网站开发招聘