c源代码-PIC32的MPLAB程序增加modbus协议通信485接口的功能

问题描述

PIC32的MPLAB程序增加modbus协议通信485接口的功能 3C
原产品工作环境为DSP、PIC、显示屏的连接,在modbus协议上pic是主、显示屏是从,pic发送请求放在UART3A传给显示屏并等待应答,那么请求的写寄存器指令程序(使用的寄存器地址是属于自定义的显示屏地址)是放在pic的MPLAB程序中的。现在想增加UART1B连接485接口实现远程数据监控的功能,那么这里在modbus协议上来说远程机是主,pic是从。那么要怎样在pic的MPLAB程序中添加指令来实现这个功能,且要把数据写入modbus正规协议地址的寄存器中?
参数地址表:
自定义的显示屏地址寄存器写入数据

现在要增加UART1B,
数据写入modbus协议地址寄存器

我的思路是:
远程控制端的请求数据帧发到UART1B的接收端,MPLAB程序通过接收中断进行数据处理,并要执行请求的内容(比如读寄存器),再吧响应数据帧从UART1B的发送端发回远程控制端。这里我就有个疑问了,我可以在程序中添加个fnDealModBus485()函数对接收到的请求数据帧进行处理,得到应答数据放入TXREG即可,那么我要怎么实现把一些数据参数按照给定的modbus地址写入相应的寄存器中好方便远程读出寄存器中的数据呢?

时间: 2024-08-18 06:59:44

c源代码-PIC32的MPLAB程序增加modbus协议通信485接口的功能的相关文章

mfc-MFC程序增加显示每日格言的功能,一个是自动运行每一个是通过菜单运行

问题描述 MFC程序增加显示每日格言的功能,一个是自动运行每一个是通过菜单运行 每日格言放在tips.txt文件中,每行一条,可以点击上一条下一条翻阅 解决方案 参考:http://www.codeproject.com/Articles/17/Improved-Tip-of-the-Day-Dialog 解决方案二: 读取文件:getline 将文件的内容update到控件上. 你这道题目的问题在于:每天要显示一条,那你如何保证一天只读取和显示一次文本内容.你这样操作: 在安装目录下生成一个文

《Hadoop MapReduce实战手册》一1.4 给WordCount MapReduce程序增加combiner步骤

1.4 给WordCount MapReduce程序增加combiner步骤 Hadoop MapReduce实战手册运行map函数后,如果有许多键值对使用相同的键,那么Hadoop必须将所有这些值传送到reduce函数.这可能会产生一个非常显著的开销.为了优化这样的场景,Hadoop支持一个专门的函数--combiner.如果配置了combiner,Hadoop会在运行完成mapper之后.调用reducer之前,在map节点所在的那个节点调用combiner.这可以显著地减少传输到reduc

class-windows任务栏上增加菜单栏?类似播放器的功能

问题描述 windows任务栏上增加菜单栏?类似播放器的功能 windows任务栏上增加菜单栏,点击菜单栏不启动程序执行其中的命令,这个功能怎么实现?类似播放器的功能 解决方案 可以使用shell带区扩展来实现http://www.codeproject.com/KB/shell/

开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等

在上篇随笔<基于微信小程序的系统开发准备工作>介绍了开发微信小程序的一些前期的架构设计.技术路线 .工具准备等方面内容,本篇随笔继续这个步骤,逐步介绍我们实际开发过程中对SSL协议的申请及后期处理过程,包括证书的IIS端口绑定,以及解决""小程序要求的 TLS 版本必须大于等于 1" 的问题. 1.证书申请及成功的后续处理 小程序的配置要求我们必须在网站提供443端口服务,需要加入HTTPS证书,这种证书可以从云服务商上购买,如腾讯云.阿里云上的云服务器后台都提供

如何理解Modbus协议

这些日子使用Modbus协议做设计,有关协议的理解,大家理解不一致,我在此做个笔记,和大家分享,说说读线圈,写线圈,读保持寄存器,读输入寄存器是什么意思. 读线圈:就是说读开关量输出的状态,看看开关量输出的到底是开着的还是关着的,这样说有点不专业,但是好明白.比如要在上位机显示开关量输出的当状态,就得用这个功能码. 写线圈:就是说读开关量输入的状态,开关量的输入大多是为了查看执行元件的动作情况,看看是否执行到位. 读保持寄存器:就是说对被控制的从器件设置一些状态值,如设置时间,设置一些定值,设置

【STM32 .Net MF开发板学习-05】PC通过Modbus协议远程操控开发板

从2002年就开始接触Modbus协议,以后陆续在PLC.DOS.Windows..Net Micro Framework等系统中使用了该协议,在我以前写的一篇博文中详细记载了这一段经历,有兴趣的朋友可以看一看<我的Modbus Slave/Client开发历程(Rtu/AscII/Tcp)>.该协议公开,精简,并且可靠,目前大部分智能仪表,智能模块和一些PLC都采用了该协议,前一段时间有位网友询问相关Modbus的问题,所以这里就以Modbus的实现来来作为.Net MF开发板的串口示例.

详解Python程序与服务器连接的WSGI接口

  这篇文章主要介绍了Python程序与服务器连接的WSGI接口,是Python网络编程学习当中的重要内容,需要的朋友可以参考下 了解了HTTP协议和HTML文档,我们其实就明白了一个Web应用的本质就是: 浏览器发送一个HTTP请求; 服务器收到请求,生成一个HTML文档; 服务器把HTML文档作为HTTP响应的Body发送给浏览器; 浏览器收到HTTP响应,从HTTP Body取出HTML文档并显示. 所以,最简单的Web应用就是先把HTML用文件保存好,用一个现成的HTTP服务器软件,接收

接口与汇编。我有如下几个简单的程序,我想是实现如图功能,8255多分支

问题描述 接口与汇编.我有如下几个简单的程序,我想是实现如图功能,8255多分支 以下有几个小程序 CODE SEGMENTASSUME CS:CODESTART:MOV AL89H MOV DX0073H OUT DXALS: MOV DX0072H IN ALDX MOV DX0071H OUT DXAL JMP S CODE ENDS END START相反CODE SEGMENTASSUME CS:CODESTART:MOV AL89H MOV DX0073H OUT DXALS: MO

可否有人给我一份modbus协议过来的原始数据看看

问题描述 可否有人给我一份modbus协议过来的原始数据看看 纯小白,要搞上位机,不知何处下手,惊觉竟然不知我要处理的数据长什么样子.手头有协议,但是不知道是怎么样传过来的数据?是我定时发送读取的指令,然后下位机回复数据?而且不同参数(如温度,电压)对应的格式长度都不一样,回复的帧中又不对应地址,我怎么知道哪个数据是哪个参数的啊? 解决方案 MODBUS协议中文版(高清版) MODBUS协议中文版 其实最简单的方法是 Google/Baidu 关键字:modbus协议大全,就能得到想要的文档.