完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1.RS-485通信协议标准
通信协议是指双方实体完成通信或服务所必须遵循的规则和约定,主要实现两个设备之间的数据交换功能,通信协议分硬件层协议和软件层协议。硬件层协议决定数据如何传输,比如要设备A要想设备B发送0x63,0x63的二进制数为0110 0011,这8个二进制数要从设备A传输到设备B,涉及到1怎么传,0怎么传,这就是硬件层要解决的问题。 硬件层协议目前比较多见的有RS-232、RS-485和SPI等。其中串行通信RS-485规定:逻辑“1”以两线间的电压差为+(2-6)伏表示;逻辑“0”以两线间的电压差为-(2-6)伏表示。再者,比如要选择多少条线传输数据,选择什么材质的线传输输入,这些也是属于硬件层协议约束的。 MCU管脚输出TTL电平,TTL电平的意思是,当MCU管脚输出0电平时,一般情况下电压是0伏,当MCU管脚输出1电平时,电压是5伏。因TTL电平是由一条信号线,一条地线产生,信号线上的干扰信号会跟随有效信号传送到到接收端,使得有效信号受到干扰,485通信实际上是把MCU出来的TTL电平通过硬件层的一个转换器芯片进行转换,示意图如图一所示。 图 1 把MCU出来的一条TTL信号经过芯片转换为两根线(线A、线B)上的信号。当MCU给转换器输入低TTL电平时,转换器会使线B上的电压比线A上的电压高,反之,线A上的电压比线B上的电压高。 485协议规定两条线上电压差值为多少表示0或者1,电压通过仪表可以测量得到,所以说RS-485是硬件层协议。 485协议的接收端可能是另一个MCU,MCU管脚也只接受TTL电平,转换芯片过来的是两条线的电压,所以需要对此两条线差分电压转换为TTL电平,示意图如图二所示。 图 2 把TTL电平转换为485电平,实质是一个集成芯片,其间无任何程序代码,纯粹是硬件逻辑。同理,将485电平转换为TTL电平也是如此。现在很多芯片将接收和转换都集成到了一块IC,注意,转换器和接收器依旧是没有同时工作的。 |
|
|
|
只有小组成员才能发言,加入小组>>
4493个成员聚集在这个小组
加入小组3327 浏览 0 评论
航顺(HK)联合电子发烧友推出“近距离体验高性能Cortex-M3,免费申请价值288元评估板
4260 浏览 1 评论
4287 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 16:09 , Processed in 0.524080 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号