社区
C++ Builder
帖子详情
用计算机做主机,通过485总线与多个单片机通信,因为其通信方式是半双工的。那如何检测485总线是否空闲。
MackedNice
2003-09-30 09:41:47
以前,我是用延时的方式作的,发送一个命令,延时一端时间。效率太差。现在,我想在向单片机发送一个命令以前。先检查485总线,如果空闲,则发送,否则命令转到一个队列中,当485总线空闲时,发出一个消息,队列接到消息后,再发送命令。
...全文
553
7
打赏
收藏
用计算机做主机,通过485总线与多个单片机通信,因为其通信方式是半双工的。那如何检测485总线是否空闲。
以前,我是用延时的方式作的,发送一个命令,延时一端时间。效率太差。现在,我想在向单片机发送一个命令以前。先检查485总线,如果空闲,则发送,否则命令转到一个队列中,当485总线空闲时,发出一个消息,队列接到消息后,再发送命令。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gpg
2003-09-30
打赏
举报
回复
你只管发送,收到回应再发送。
就是你只要保证统一时刻只收或只发。
当然,你会说,我发的同时它也发咋办。
好办,建立严格的因答机制就行了。
appletreestudio
2003-09-30
打赏
举报
回复
只需要查询计算机的串口是否为空就可以了。
具体请参见《C++builder与RS-232串口通信》
虽然不是485的,但是效果是一样的
Behard
2003-09-30
打赏
举报
回复
检查 485 总线?好像不行的吧!
因为计算机仅仅是知道是否有数据已经接收完毕或者正在接收数据
而不知道是否后面还有数据进来
(使用计算机发送时,他仅仅是查询是否可以再次发送数据而已)
一般 485 通讯都是固定的由主机查询,子机响应(这里做一个严格的时间限制)
MackedNice
2003-09-30
打赏
举报
回复
软件怎么实现
fatwave
2003-09-30
打赏
举报
回复
有这种硬件,叫排队机,它会自动将数据从空闲的端口发出去的!!
netsys2
2003-09-30
打赏
举报
回复
得写硬件驱动。。。
MackedNice
2003-09-30
打赏
举报
回复
那么不检查485总线,发送线程发送一条命令后,等待。接受线程不断接受并检查串口的数据。如果接受到一条数据包的结束码(如03),则通知发送线程再发送一条命令。这样行不行啊。。
代码怎么实现啊。。。
郁闷中。。。。。。。。。。
单线
半双工
通信
简单例程(STM32与电脑
通信
)
单线
半双工
通信
的官方资料 单线半双方模式通过设置USART_CR3寄存器的HDSEL位选择。在这个模式里,下面的位必须保持清零状态: ● USART_CR2寄存器的LINEN和CLKEN位 ● USART_CR3寄存器的SCEN和IREN位 USART可以配置成遵循单线
半双工
协议。在单线
半双工
模式下,TX和RX引脚在芯片内部互连。使用控制位”HALF DUPLEX SEL”(USART_CR3中的HDSEL位)选择
半双工
和全双工
通信
。 当HDSEL为’1’时 ● RX不再被使用 ● 当没有数据传输时,TX总是被释放。因此,它在
空闲
状态的或接收状态时表现为一个标准I/O口。这就意味该I/O在不被
485
总线
死锁与复位
摘要:针对RS-
485
接口收发电路的特点,讨论RS-
485
总线
在Polling和CSMA/CD
通信
方式
中死锁
检测
和解除死锁的方法。该方法同样适用于RS-422接口。 关键词:RS-
485
接口 死锁
检测
死锁解除 RS-
485
总线
传送距离远、速度快、抗干扰能力强,是工业现场广泛应用的数字
通信
标准。RS-
485
总线
是一种
半双工
通信
标准,支持
总线
方式多点互连,使其成为集散控制系统和现场
总线
控
计算机
网络 物理层 实现的功能详解
# 物理层的四个特性描述 机械、电气、功能和过程#
通信
模型两大模型 局域网:数字信号 广域网:光纤型号# 数据
通信
常用术语 信息(message)、数据(data)、信号(signal)、码元 (code) 模拟信号 (analogous signal)、数字信号 (digital signal)# 码元携带信息量变化 模拟信号转数字信号及采样精度# 信道与
通信
模式 单工、
半双工
和全双工# 基带调制和带通调制 归零、不归零、曼切斯特编码和差分 调幅、调频和调相# 奈氏准则 香农公式 # 导向传输媒体 各类双绞线、各电阻同轴电缆、多模和单模光纤# 非引导型传输媒体 无线电频谱图及应用、短波
通信
、微波
通信
、地球卫星# 信道复用 频分复用:模拟信号,ADSL将1M复用256信道提高到15M 时分复用:统计时分复用,增加地址信息如vLAN划分 波分复用:80路以上频分复用,从2.5到20Gb每秒提高 码分复用:CDMA向量A 和B作格式化内积,1的1;-1得0;0得无# 宽带 铜线接入xDSL,ADSL最高下载25Mb每秒 光纤同轴混合网、光纤、移动互联网接入# 综合习题
【物联网毕设基础】
单片机
:RS
485
通信
与 Modbus 协议
在工业控制、电力通讯、智能仪表等领域,通常情况下是采用串口
通信
的方式进行数据交换。最初采用的方式是 RS232 接口,由于工业现场比较复杂,各种电气设备会在环境中产生比较多的电磁干扰,会导致信号传输错误。除此之外,RS232 接口只能实现点对点
通信
,不具备联网功能,最大传输距离也只能达到十几米,不能满足远距离
通信
要求。而 RS
485
则解决了这些问题,数据信号采用差分传输方式,可以有效的解决共模干扰问题,最大距离可达1200米,并且允许
多个
收发设备接到同一条
总线
上。随着工业应用
通信
越来越多,1979年施耐德
单片机
各种
通信
协议详解
** 一、IIC
通信
协议 ** (1)概述 I2C(Inter-Integrated Circuit BUS) 集成电路
总线
,该
总线
由 NXP(原 PHILIPS)公司设计,多用于主控制器和从器件间的主从
通信
,在小数据量场合使用,传输距离短,任意时刻只能有一个
主机
等特性。 经常 IIC 和 SPI 接口被认为指定是一种硬件设备,但其实这样的说法是不尽准确的,严格的说他们都是人们所定义的软硬结合体...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章