搜索
bottom↓
回复: 54

MODBUS协议---多机通讯

[复制链接]

出0入0汤圆

发表于 2009-9-7 11:39:56 | 显示全部楼层 |阅读模式
最近失业,  心情不好,相当的不好,为什么为什么一份工作总的做不长......很是郁闷,所以就狂看书,狂吃饭,狂抽烟.......
   加上上次说要搞个MODBUS协议,这几天刚好有空,所以就把它写了出来,里面还是有点问题,但是总体上问题不大,如果有的话应该是在某些细节上,呵呵 ,  同时也希望能得到多多的指点  谢谢,如果感觉还行给我顶下!!

说明:
1、
//*************************************************************************************************************
//主题: Modbus协议--多机通讯 ---AT89C52 Serial-m 主机部分
//编者:李 锦 华
//时间:2009-09-01
//QQ : 492031062  尽供交流用,无事勿扰 ,谢谢合作
//E-mail:li_jin_hua2006@yahoo.com.cn
//主页:http://hi.baidu.com/kuzhuu
//地点:园林  苏州
//注:  如对此程序设计有更好的建议,请发送信息到我的E-mail,我会非常感谢的!
//*************************************************************************************************************
2、此程序遵循MODBUS通讯协议,可以实现 功能码06--写单个积存器 和05--写单个线圈的功能,考虑到可以直观的看到效果和实际情况,如写单个积存器只能写到地址0x0001中去且写的数字必须要小于9,因为只用了一个数码管,,但是不防碍你写不同的地址和大于9的数字,只是不能显示出来,如 你可以输入如 02 06 00 01 00 09     则在站号02的数码管中显示9 这个数字   
3、因为只用了P32 P33 P34 这三个口来显示功能码05 所以在写线圈的时候,最好不地址不要超过0x0002
,还有根据我的实际情况对05功能做了点修改,就是状态1 由原来的0xff00改为了现在的0x0100,即把ff改为了0x01 后面的00不变,如果是状态0 和以前的Modbus 协议保持一致,如要开站号03的P32口的等,即在主机中按A键后输入:03 05 00 00 01 00  

因为本程序写的比较急促,难免有不当之处,请高手指点 谢谢 ,

(原文件名:1.jpg)


(原文件名:2.jpg)


(原文件名:3.jpg)




点击此处下载 ourdev_478582.rar(文件大小:624K) (原文件名:桌面.rar)

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2009-9-7 11:48:55 | 显示全部楼层
顶下,顺便祝楼主早日找到如意工作

出0入0汤圆

 楼主| 发表于 2009-9-7 12:19:49 | 显示全部楼层
我会努力的,相信自己

出0入0汤圆

发表于 2009-9-7 13:05:56 | 显示全部楼层
不错!谢谢分享!

出0入0汤圆

发表于 2009-9-7 14:39:42 | 显示全部楼层
同道中人..顶!

出330入0汤圆

发表于 2009-9-7 20:36:34 | 显示全部楼层
好样的。

出0入0汤圆

发表于 2009-9-7 23:03:28 | 显示全部楼层
原理图不错

出0入0汤圆

 楼主| 发表于 2009-9-10 11:34:26 | 显示全部楼层
最近东莞那边的一家叫  石龙京瓷光学有限公司打电话给我  然后在电话里面面试了,我面试的是嵌入式单片机的工作,不知道有那位对石龙京瓷比较了解的,说说的怎么样!!!因为我现在在苏州,要是不怎么样的话,我去了就没多大的意思,还花掉好几天的时间和盘缠,。。。。。。呵呵

出0入0汤圆

 楼主| 发表于 2009-9-10 14:23:58 | 显示全部楼层
面试成功,一举拿下   石龙京瓷光学有限公司   工资待遇都还可以,  准备明天就挥师南下     
    以后就有更多的时间和大家一起交流单片机技术了 ,也希望有志同道合者与我相拌!!!

出0入0汤圆

发表于 2009-9-17 23:53:59 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-9-18 08:32:45 | 显示全部楼层
我在石龙附近,不过不了解京瓷

主程序用了很多while,这习惯很不好,会使程序效率降低并且有很大的机会陷入死循环
没有看到是怎样判断接收到的数据是否正确
没有看到至少3.5字节的超时判断
感觉程序有点乱,可能我水平太次难以看懂

出0入0汤圆

 楼主| 发表于 2009-9-26 10:00:23 | 显示全部楼层
呵呵  这个程序写的是比较乱了  因为条件有限  能力有限  加上要在Protues里面仿真  还有MODBUS里面的协议还没有体现出来呵呵  不过这些都可以自己加上去的   然后51里面的T/C0 T/C1不能同时用  而通讯里面比较要有T/C1提供波特  所以 有些力不从心

如果有高手的话  可以教教我哦

出0入0汤圆

发表于 2009-9-26 10:07:13 | 显示全部楼层
mark

出0入10汤圆

发表于 2009-9-26 10:23:41 | 显示全部楼层
生活总是会有不顺利的时候,楼主加油啊

出0入0汤圆

发表于 2009-9-28 10:45:04 | 显示全部楼层
下载收藏了,楼主加油~~~~~

出0入0汤圆

发表于 2009-10-5 18:26:19 | 显示全部楼层
谢谢了。

出0入0汤圆

发表于 2009-10-5 22:48:22 | 显示全部楼层
不错的,正在学这个东西呢,谢谢楼主

出0入0汤圆

发表于 2009-12-30 21:13:29 | 显示全部楼层

出235入235汤圆

发表于 2009-12-30 21:31:50 | 显示全部楼层
楼主使用的什么软件仿真?

出0入0汤圆

 楼主| 发表于 2009-12-31 09:18:55 | 显示全部楼层
Protues   最好下载经典的6.9版本!!

出0入0汤圆

发表于 2010-2-17 17:49:25 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-2-17 18:36:07 | 显示全部楼层

出0入0汤圆

发表于 2010-3-7 21:14:52 | 显示全部楼层
顶啊

出0入0汤圆

发表于 2010-3-7 21:59:04 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-24 15:19:21 | 显示全部楼层
顶上

出0入0汤圆

发表于 2010-6-11 15:59:35 | 显示全部楼层
学习学习

出0入0汤圆

发表于 2010-6-11 17:27:31 | 显示全部楼层
了解一下mudbus

出0入0汤圆

发表于 2010-7-10 22:28:19 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-7-12 16:34:10 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-7-12 22:55:22 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-11 23:13:16 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-31 16:10:16 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-4-10 12:14:46 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-4-10 21:35:09 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-4-19 20:43:11 | 显示全部楼层
记号

出0入0汤圆

发表于 2011-4-23 18:35:37 | 显示全部楼层
收藏   楼主加油!

出0入0汤圆

发表于 2011-6-26 10:04:19 | 显示全部楼层
记号

出0入0汤圆

发表于 2011-6-26 10:07:48 | 显示全部楼层
mark.

出0入0汤圆

发表于 2011-9-26 13:38:52 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-11-3 15:26:03 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-25 10:03:18 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-25 12:34:39 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-25 23:02:53 | 显示全部楼层
ding

出0入0汤圆

发表于 2011-11-26 00:09:42 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-5-29 19:26:26 | 显示全部楼层
        学习一下

出0入0汤圆

发表于 2012-5-30 00:11:48 | 显示全部楼层
有时间看看学一下

出0入0汤圆

发表于 2012-5-30 15:25:58 | 显示全部楼层
好,都有同感,楼主努力

出0入0汤圆

发表于 2012-5-31 15:09:58 | 显示全部楼层
楼主加油。

出0入0汤圆

发表于 2012-7-12 17:00:40 | 显示全部楼层
顶,强力顶

出0入0汤圆

发表于 2013-7-23 14:13:27 | 显示全部楼层
顶一个!

出0入0汤圆

发表于 2013-7-23 14:35:41 | 显示全部楼层
一直在尝试多机通讯,结果就是不理想,下来看看楼主的方法.

出0入0汤圆

发表于 2013-7-24 17:50:55 | 显示全部楼层
mark  MODBUS协议之多机通讯

出0入0汤圆

发表于 2013-7-25 16:38:54 | 显示全部楼层
你学的程序确实不太好,效率很低,CRC校验最好使用查表法,另外你没有做至少3.5个字符贞的检测,完全是循环等待,这样浪费了CPU,你应该使用定时器去做这个通信协议。希望对你有帮助

出0入0汤圆

发表于 2013-8-14 20:15:32 来自手机 | 显示全部楼层
mark……
顶一个…

出0入0汤圆

发表于 2014-6-28 01:38:23 | 显示全部楼层
多谢楼主分享!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 02:14

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表