打印

请教一个关于485串口通信的问题

[复制链接]
2296|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yuse|  楼主 | 2009-12-6 22:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yuse 于 2009-12-8 20:52 编辑

我是用的modbus通信协议,主机轮询访问485上的从机。
我的问题是:如果主机轮询编号相邻的两个从机的时间间隔很短,那么是否会影响到从机的正常工作呢,因为从机是采用中断方式接收发送,假如总线上不断地有主机和从机互相发送接收数据,那么从机们就会一直进入中断检测是不是自己的地址,这样是否会影响从机工作呢?因为我的从机用来检测温度用,至少需要1s的周期才能够读到每次的温度值。所以是不是应该调长主机轮询编号相邻的两个从机的时间间隔呢?这个时间怎么算最合适呢?不知道我的思路是不是有问题,希望朋友们给予指点 谢谢!
//////////////////////////////////////////////////////////////////////////////////////////
谢谢前辈指点,我调试了下程序,一旦通讯发生进入中断,返回后很容易会导致破坏了18b20的时序图,导致进入死循环,或者出错

091208175688d9f166aeeee701.jpg (12.14 KB )

091208175688d9f166aeeee701.jpg

091208175694f03cc91f379894.jpg (10.24 KB )

091208175694f03cc91f379894.jpg

DS18B20.pdf

218.99 KB

相关帖子

沙发
chunyang| | 2009-12-6 22:40 | 只看该作者
只要从机程序合理就不会有影响,中断服务程序只负责数据转存和设定标志,主程序再根据标志进行处理,所费时间很短,完全来得及处理其它任务,楼主现在的问题是要先解决编程思想。

使用特权

评论回复
板凳
yuse|  楼主 | 2009-12-8 17:54 | 只看该作者
本帖最后由 yuse 于 2009-12-8 17:58 编辑

谢谢前辈指点,我调试了下程序,一旦通讯发生进入中断,返回后很容易会导致破坏了18b20的时序图,导致进入死循环,或者出错 2# chunyang

QQ截h图未命名.jpg (10.24 KB )

QQ截h图未命名.jpg

未命名.jpg (12.14 KB )

未命名.jpg

DS18B20.pdf

218.99 KB

使用特权

评论回复
地板
chunyang| | 2009-12-9 13:30 | 只看该作者
要调整软件工艺,18b20的操作周期远慢于MCU的几条指令运行时间,期间发生的中断处理得当就不会有影响,18b20无需始终在读取,上次数据上报后再行读取一次即可,此时发生的通讯跟本机无关,甚至可以不响应。

使用特权

评论回复
5
yuse|  楼主 | 2009-12-10 12:38 | 只看该作者
恩 那我就是想得检测温度时关中断 通信时开中断 通信完关中断执行一次读温度 再开中断等待通信

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

152

主题

453

帖子

0

粉丝