Commit Graph

55 Commits

Author SHA1 Message Date
向秋林 a0b9fcc381 【修复】FreeModbus从机读离散输入一处宏错误。 2020-04-30 12:38:40 +08:00
armink 0f0a3e865f Update some modbus salve code and LICENSE file from https://github.com/cwalter-at/freemodbus . 2019-05-21 15:19:00 +08:00
Philip Odom 1384a31cff
format cleanup for defaults 2018-12-20 17:04:34 -08:00
Philip Odom e72d2d714a
default cases necessary to complile without warnings 2018-12-20 16:59:02 -08:00
nq ab2403888e tabs to space 2 2018-08-22 10:15:13 +08:00
nq 0ecdf2720f tabs to space 2018-08-22 10:05:25 +08:00
ericQiang 9a3a505612 fix the mistake of calling modbus API before T35 timer complate initialization 2018-08-22 06:55:58 +08:00
armink b473707f3e 1、【修复】FreeModbus V1.5从机源码中遗留的读保持寄存器一处书写错误。
Signed-off-by: armink <armink.ztl@gmail.com>
2015-11-09 18:58:29 +08:00
armink b48c07303d 1、【修复】FreeModbus主机写线圈一处潜在的Bug。
Signed-off-by: armink <armink.ztl@gmail.com>
2015-03-09 17:55:16 +08:00
armink 54460c7180 1、【修改】在接收数据长度超过MB_SER_PDU_SIZE_MAX即PDU最大长度后,错误未被处理的Bug。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-10-07 08:51:25 +08:00
armink 9c33ea1b1e 1、【修改】FreeModbus主机读写寄存器数量大于256时,可能出现的Bug。感谢网友 @geffu 的反馈。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-09-19 10:31:54 +08:00
armink c4a9632836 1、【还原】之前一版接收完成后处理逻辑代码,上版本的优化方案经过测试,485总线效果不好,等优化成功后再更新。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-07-17 19:57:02 +08:00
armink c3325ad15e 1、【优化】主机从机串口接收数据逻辑,在T3.5到了之后,迅速关闭串口接收,避免在极端条件下可能导致接收数据区数据被覆盖的问题。感谢网友@zhangshixing
的反馈。

Signed-off-by: armink <armink.ztl@gmail.com>
2014-07-17 16:42:45 +08:00
armink 0a2e9c8d6f 1、【优化】FreeModbus主机及从机协议栈事件机制,完全采用操作系统自带事件实现,比之前方式性能提升10倍。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-04-03 16:01:16 +08:00
armink b717ccd2e6 1、【修改】FreeModbus主机一处错误的接口命名。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-04-02 12:05:34 +08:00
armink 5832f7aa89 1、【修改】FreeModbus主机广播时,写多个寄存器或线圈过程中,命令执行出错的问题。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-03-03 11:43:25 +08:00
armink 6f01fe6286 1、【修改】FreeModbus主机事件处理及方法执行部分源码,使得在主机广播写从机的过程中,也同时更新主机缓冲区。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-03-01 17:06:13 +08:00
armink 7513daf118 1、【修改】FreeModbus主机所有请求方法,增加了请求响应成功、请求响应超时、接收数据出错及功能执行出错的返回值,目前主机请求方法为阻塞方法,直到有结果才会返回,保证了用户使用的便捷性。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-02-27 14:36:55 +08:00
armink d9d5cae9bb 1、【增加】FreeModbus主机请求结果,包括请求处理成功、请求响应超时、接收数据出错及功能方法执行错误;
2、【增加】FreeModbus主机请求处理成功的回调接口,用户可以在里面增加自己的代码,统计成功率等等;
2、【修改】FreeModbus主机错误处理回调方法存放的位置,移动至/port/portevent_m.c。

Signed-off-by: armink <armink.ztl@gmail.com>
2014-02-26 11:27:55 +08:00
armink e9d291a120 1、【优化】FreeModbus主机入参检测部分逻辑;
2、【增加】FreeModbus主机请求API流程图,主机请求增加对帧命令接收、处理结果的返回信息,为用户命令重发提供便利。

Signed-off-by: armink <armink.ztl@gmail.com>
2014-02-14 10:34:43 +08:00
armink ee41d11300 1、【增加】FreeModbus主机离散输入及输入寄存器相关api的注释说明。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-23 09:17:01 +08:00
armink 26160187b4 1、【增加】FreeModbus主机错误处理回调方法,位于port.c;
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-21 16:27:47 +08:00
armink 5d3bb1b383 1、【增加】FreeModbus主机保持寄存器API注释说明
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-20 12:02:57 +08:00
armink 8f88e24ea5 1、【增加】FreeModbus主机线圈API注释说明
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-09 22:17:15 +08:00
armink b02d228c7b 1、【修改】FreeModbus主机中几处单词拼写错误
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-08 14:38:57 +08:00
armink 58f8bdbbc8 1、【修改】FreeModbus主机部分源码,采用RT-Thread信号量方式来实现主机请求的同步机制。
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-08 14:08:00 +08:00
armink 01a1f809cf 1、【增加】FreeModbus主机请求支持同步等待功能,采用RT-Thread互斥锁事件同步机制
Signed-off-by: armink <armink.ztl@gmail.com>
2014-01-07 23:39:56 +08:00
armink 460be47a96 1、【优化】错误帧判断逻辑。感谢网友“worldsing”的反馈。
Signed-off-by: armink <armink.ztl@gmail.com>
2013-12-04 12:15:33 +08:00
armink d5b26b9516 1、【修改】FreeModbus主机中几处断言逻辑,解决了软件在运行过程中误报断言出错的问题
Signed-off-by: armink <armink.ztl@gmail.com>
2013-12-03 10:00:38 +08:00
armink a421f79264 1、【修改】FreeModbus用户回调函数及缓冲区主机与从机的架构,把主机与从机分离,提高代码效率及可读性;
2、【修改】IAR及KEIL工程配置,使其支持新的架构

Signed-off-by: armink <armink.ztl@gmail.com>
2013-11-25 11:58:12 +08:00
armink 45825267df 1、【修改】.git/config中autocrlf设置为true,解决在Linux和Windows中的换行回车符问题
Signed-off-by: armink <armink.ztl@gmail.com>
2013-11-07 11:34:23 +08:00
armink c778f40a6d 1、【修改】FreeModbus主机及从机关于线圈及离散输入变量缓冲区的定义,解决了之前在线圈及离散输入不为8的倍数时,缓冲区大小不正确的Bug
Signed-off-by: armink <armink.ztl@gmail.com>
2013-10-17 08:52:39 +08:00
armink 24432b4fee 1、【修改】软件中几处断言无法通过的地方
Signed-off-by: armink <armink.ztl@gmail.com>
2013-10-16 18:16:06 +08:00
armink a07b2ae87f 1、【增加】FreeModbus主机离散量输入相关功能,并在app_task.c中增加相应测试用例,测试通过;
2、【修改】user_mb_app.c中涉及到使用xMBUtilSetBits()的几处逻辑,避免xMBUtilSetBits()在操作位数量为0时,出现数据越界及出错的bug;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-10-15 11:20:26 +08:00
armink 9e557e8f4a 1、【增加】FreeModbus主机线圈相关功能,并在app_task.c中增加相应测试用例,测试通过;
2、【优化】FreeModbus主机相关功能方法入参的顺序;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-10-14 18:20:08 +08:00
armink 478d15dc94 1、【增加】FreeModbus主机读输入寄存器功能的实现及测试用例
Signed-off-by: armink <armink.ztl@gmail.com>
2013-10-12 15:05:42 +08:00
armink 5de9d82e09 1、【增加】FreeModbus主机寄存器相关功能的实现,目前是异步模式,后期可以考虑支持同步模式;
2、【增加】FreeModbus主机寄存器相关测试用例,位于app_task.c;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-09-16 13:35:57 +08:00
armink 3cf7da44e0 1、【增加】FreeModbus主机请求读写单个、多个寄存器方法,测试通过。处理从机响应的方法还有待完善;
2、【优化】FreeModbus主机忙信号设置相关逻辑;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-09-07 13:33:33 +08:00
armink a115bbf3e3 1、【优化】FreeModbus主机框架,使其与应用软件及从机部分耦合度降低;
2、【增加】主机忙查询、目标从机地址、获取当前PDU总长度等实用Get及Set方法;
3、【修改】user_mb_app.c一处书写错误;
4、【增加】主机读单个及多个寄存器方法,位于mbfuncholding_m.c,目前只实现了异步发送命令,下一步准备实现同步方式;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-09-03 19:20:08 +08:00
armink 3947c51e7b 1、【增加】FreeModbus主机忙标志,可通过Get方法获取其值;
2、【修改】FreeModbus主机定时器状态机命令,去掉T35字样

Signed-off-by: armink <armink.ztl@gmail.com>
2013-09-02 09:37:59 +08:00
armink 8d9e79b308 1、【更新】《FreeModbus 主机分析图》;
2、【移除】mb.h中部分不用的方法定义;
3、【增加】.gitattributes文件;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-31 16:24:21 +08:00
armink 0342273472 1、【优化】FreeModbus主机测试写保持寄存器测试,保证每秒都能看到变化;
2、【更新】IAR工程配置,使其支持user_mb_app.c;
3、【更新】《FreeModbus 主机分析图》;
4、【增加】FreeModbus主机收到异常码后,发送异常处理事件功能;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-31 13:27:38 +08:00
armink 5f51ac69ae 1、【修改】FreeModbus主机写单个保持寄存器方法,并且测试通过;
2、【修改】FreeModbus主机定时器配置,使其操作更加严谨,保证了定时器的稳定性;
3、【修改】user_mb_app.c中保持寄存器回调函数一处书写错误;
2013-08-30 11:45:33 +08:00
armink a23f9528fb 1、【增加】FreeModbus主机轮训线程;
2、【增加】Modbus主机写寄存器功能,目前测试暂未通过;
3、【修改】串口2时钟配置错误,导致无法发送数据的Bug;
4、【增加】FreeModbus主机发送数据缓冲区;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-29 16:45:56 +08:00
armink e8c502eca6 1、【增加】主机模式下从机节点相关数据模型;
2、【更新】Modbus主机模式下相关回调函数;
3、【更新】《FreeModbus 主机分析图》;
4、【增加】主机模式下支持的从机最大数宏定义,默认16;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-27 18:08:31 +08:00
armink 20239198e5 1、【修改】主机RTU帧缓冲区及PDU缓冲区定义
Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-21 19:38:43 +08:00
armink 33eec6ff56 1、【优化】FreeModbus主机轮训业务逻辑
Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-20 18:32:28 +08:00
armink c1520d3634 1、【增加】FreeModbus主机轮训事件方法,错误处理事件具体内容后期补充;
2、【更新】FreeModbus主机文件框架,使其更加合理;
3、【更新】IAR及Keil工程代码架构

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-20 13:07:51 +08:00
armink dfe745c166 1、【更新】《FreeModbus 主机分析图》中关于发送及接受状态图,其余还需后期完善;
2、【增加】FreeModbus主机传输层逻辑实现,稳定性还需后期测试;

Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-19 16:51:08 +08:00
armink 31fab3ed4d 1、【修改】Slaver字段为Slave,统一从机英文名称
Signed-off-by: armink <armink.ztl@gmail.com>
2013-08-19 11:20:22 +08:00