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

dede音乐网站wordpress顶和踩功能

dede音乐网站,wordpress顶和踩功能,江西省住房和城乡建设厅网站,网页制作与网站建设作业Modbus在串行链路上分为Slave和Master#xff0c;这一节我们就来开发Slave。对于Modbus RTU从站来说#xff0c;需要实现的功能其实与Modbus TCP的服务器端是一样的。其操作过程也是一样的。首先接收到主站的访问命令#xff0c;对该命令报文进行解析#xff0c;这里我们也…Modbus在串行链路上分为Slave和Master这一节我们就来开发Slave。对于Modbus RTU从站来说需要实现的功能其实与Modbus TCP的服务器端是一样的。其操作过程也是一样的。首先接收到主站的访问命令对该命令报文进行解析这里我们也只是实现前面提到的8种功能码。其次我们根据解析的结果进行对应的操作具体的软件访问结构如下 从上图中不难发现实际是3步 第1步、接到命令后先解析。解析的方式与前面几节中的类式。 第2步、根据解析结果进行操作。包括更具命令修改或者获取变量的值。 第3步、生成响应并返回给主机。 1、解析主机命令 从机在接收到主机的命令报文后对其进行解析我们暂且支持上图所示的8种功能码。 /*解析接收到的信息并返回合成的回复信息和信息的字节长度通过回调函数*/ uint16_t ParsingMasterAccessCommand(uint8_t *receivedMessage,uint8_t *respondBytes,uint16_t rxLength) 该函数接收接受到的报文并生成响应信息报文返回值是响应报文的长度。在开发应用是将接收到的报文发送个该函数并将生成的响应信息返回个客户端就可以了。 2、结果操作 解析之后无论是读命令还是写命令都需要进行相应的操作。我们根据不同的功能码封装不同的操作: /*处理读线圈状态命令*/ static uint16_t HandleReadCoilStatusCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理读输入状态命令*/ static uint16_t HandleReadInputStatusCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理读保持寄存器命令*/ static uint16_t HandleReadHoldingRegisterCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理读输入寄存器命令*/ static uint16_t HandleReadInputRegisterCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理写单个线圈命令*/ static uint16_t HandleWriteSingleCoilCommand(uint16_t coilAddress,uint16_t coilValue,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理写单个寄存器命令*/ static uint16_t HandleWriteSingleRegisterCommand(uint16_t registerAddress,uint16_t registerValue,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理写多个线圈状态*/ static uint16_t HandleWriteMultipleCoilCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) /*处理写多个寄存器状态*/ static uint16_t HandleWriteMultipleRegisterCommand(uint16_t startAddress,uint16_t quantity,uint8_t *receivedMessage,uint8_t *respondBytes) 同样我们也是定义一个函数指针数组来实现这8个函数的调用 uint16_t (*HandleMasterCommand[])(uint16_t,uint16_t,uint8_t *,uint8_t *){HandleReadCoilStatusCommand, HandleReadInputStatusCommand, HandleReadHoldingRegisterCommand, HandleReadInputRegisterCommand, HandleWriteSingleCoilCommand, HandleWriteSingleRegisterCommand, HandleWriteMultipleCoilCommand, HandleWriteMultipleRegisterCommand}; 3、生成从机响应 处理完还需要生成从机的相应信息无论是读操作命令还是写操作命令我们均在对应的功能码处理时生成响应报文。这么一来在开发应用时只需要调用解析函数据可以实现全部的功能了。 源码网址是https://github.com/foxclever/Modbus 欢迎关注
http://www.huolong8.cn/news/253272/

相关文章:

  • 网站建设与管理专业好不好就业搜索引擎优化seo应用
  • 成都新津县建设网站泸州工投建设集团有限公司网站
  • 建设一个视频网站襄阳谷城网站建设
  • 网站建设与维护面试自建电商网站销售商品
  • 自己做网站好做么typecho wordpress
  • 网站做qq链接代码网站建设完工后在什么科目核算
  • 松江郑州阳网站建设酒店找人做网站
  • 云主机 网站吗wap浏览器设置
  • 浦东新区做网站公司北京企业建站团队
  • 靖江有哪些做网站的百度快照 查看指定网站
  • 郑州网络推广联系方式青岛网站seo价格
  • 怎么查看一个网站做的外链视频网站备案
  • 河南专业网站建设公司排名网站制作教程 pdf下载
  • pc 移动 网站开发ios定制微信免费下载
  • 怎样申请注册公司网站电商网站 app
  • 山东通信局报备网站佛山网上房地产官网
  • 那个公司做的网站详情页好看pc网站建设怎么弄
  • 网站商城建设方式响应式网站科技
  • 哪些网站做京东的团购wordpress 块引用
  • 营销网站建设公司地址网页设计与网站建设课程总结
  • 怎么加快登录网站速度电商网站开发常用代码
  • 乐山住房和城乡建设厅网站网站建设设计技术方案模板下载
  • 树莓派做网站服务器转塘有做网站的吗
  • 长春网站提升排名龙岗营销网站建设
  • 揭阳网站推广教程做网站必须托管服务器吗
  • 珠海市建设工程造价协会网站做网站滨州
  • 网站佣金怎么做凭证创意策划网站
  • dw做的网站成品企业所得税25%怎么计算
  • 杭州微跑网站建设公司平面设计包括哪些内容
  • 建设黑彩网站大型网站域名