zoukankan      html  css  js  c++  java
  • 485通信自动收发电路详解



    我们先看看普通的收发电路。

    普通的485电路,除了“用RXD连接485芯片的RO引脚、用TXD连接485芯片的DI引脚”,还会用一个单片机的普通IO引脚连接到RE、DE引脚上。

    当单片机要发送数据的时候,控制PA8为高电平,数据通过TXD发送出去。

    当单片机要接收数据的时候,控制PA8为低电平,数据通过RXD接收回来。

    然而,自动收发电路,就是不用单片机引脚PA8,当数据进来的时候,数据会自动通过RXD到单片机,当需要发送数据时,自动通过TXD发送出去。也就是只需要连接单片机的RXD和TXD引脚就可以,无需用单片机引脚连接485芯片的DE RE引脚。

    文章中第一张图,就是实现自动收发的电路,实际上,自动收发的电路,还有好几种连接方法。今天,我们只研究这一种经常用的。

    很多人,都会使用这个电路,但是不知道其中的原理。

    所以今天我来给大家解释一下其中的工作原理,详细到每个元器件。

    电阻R1的作用:

    RXD连接电阻R1到485芯片的RO,这里R1的作用是限流,保护引脚。R1的大小,可以选择330欧、470欧、560欧、1K。

    电阻R2、R3和三极管Q1:

    电阻R2、电阻R3和NPN三极管Q1组成一个典型的三极管开关电路。R3是限流电阻,最好选择4.7K,也可以选择10K。R2是上拉电阻,可以选择4.7K,也可以选择10K。

    NPN三极管,高电平导通,当TXD高电平,三极管导通,RE DE引脚接地,进入接收模式。当TXD低电平,三极管截止,RE DE引脚接高电平,进入发送模式。

    电容C1:

    C1是电源旁路电容,作用是给485芯片提供一个干净的电源,使它稳定的工作。

    在设计电路板的时候,如果芯片没有特殊要求,需要把每个芯片旁边放上一个0.1微法电容。在PCB布线的时候,电容到电源引脚的距离最好在2mm以内。

    电阻R4和R5:

    R4是下拉电阻,接到B上。R5是上拉电阻,接到A上。为什么要这两个电阻,后面会解释。

    双向稳压二极管D1、D2、D3:

    这里使用的双向稳压二极管型号是SMAJ6.5CA。他们的作用是把A、B引脚对地的电压以及A和B引脚之间的电压,牵制到6.5V以内,保护485芯片。

    从SP3485芯片手册得到,AB的耐压值是正负15V以内。

    现在,每个元器件就介绍完了,接下来说说为什么可以实现自动收发功能。

    发送数据过程:

    发送数据,用的是单片机的TXD引脚,也就是说,在TXD引脚上表现数据。

    例:要发送数据0x55,写成二进制就是0x01010101,TXD引脚上就会依次的用高低电平体现1和0。

    当TXD发送0时,三极管不导通,DE接高电平,进入发送模式,485芯片会把DI上的电平反应到AB引脚上输出,因为DI已经接地,所以AB引脚会传输0。

    当TXD发送1时,三极管导通,RE接低电平,进入接收模式,485芯片的AB引脚进入高阻状态,因为R5把A拉高,R4把B拉低,所以,AB传输的是1。

    总结,TXD发1,AB就发1;TXD发0,AB就发0。

    接收数据过程:

    接收数据,用的是单片机引脚RXD,也就是说,在RXD引脚上表现数据。

    在接收数据的过程中,TXD引脚是一直保持高电平的,当TXD是高电平时,RE是低电平,正好调理成了接收状态,然后485芯片的RO引脚(也就是接RXD的引脚)就会反应AB传输过来的数据。

  • 相关阅读:
    316 Remove Duplicate Letters 去除重复字母
    315 Count of Smaller Numbers After Self 计算右侧小于当前元素的个数
    313 Super Ugly Number 超级丑数
    312 Burst Balloons 戳气球
    309 Best Time to Buy and Sell Stock with Cooldown 买股票的最佳时间含冷冻期
    Java 类成员的初始化顺序
    JavaScript 全局
    HTML字符实体
    Java中的toString()方法
    JavaScript 弹窗
  • 原文地址:https://www.cnblogs.com/huangyangquan/p/12991799.html
Copyright © 2011-2022 走看看