[发明专利]一种FPGA自适应控制RS485芯片收发方向的方法在审
申请号: | 201410587592.1 | 申请日: | 2014-10-28 |
公开(公告)号: | CN104317762A | 公开(公告)日: | 2015-01-28 |
发明(设计)人: | 朱启晨;张明宇;任光辉;郁惊一;肖鲲 | 申请(专利权)人: | 北京四方继保自动化股份有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40 |
代理公司: | 北京金阙华进专利事务所(普通合伙) 11224 | 代理人: | 吴鸿维 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 自适应 控制 rs485 芯片 收发 方向 方法 | ||
技术领域
本发明属于数字通信技术领域,具体涉及一种FPGA(即现场可编程门阵列)自适应控制RS485芯片收发方向的方法。
背景技术
RS485通讯在实现主站与各主从站的信息交换中有着广泛的应用,如何控制RS485通讯的方向是实现RS485稳定通讯很重要的一点。主要有以下几种方法可以实现:(1)使用CPU的I/O口进行控制,该方法驱动能力强,但需要有软件配合;(2)有CPU带RTS控制引脚(即请求发送控制引脚)的可以直接用来控制RS485的收发方向,驱动能力强且不需软件配合,但不是所有的CPU都带此功能,而且一般此类型引脚不多,当需要多个串口通讯的时候会不够用;(3)使半双工的RS485收发器实现自收发功能,通过TXD(数据输出发送)信号经过反相器产生RTS信号,同时在A、B端之间增加上下拉电阻配合实现,方法实现简单,成本低,但驱动能力较弱,抗干扰能力不够;(4)在方法(3)的基础上将TXD经过反相器前的下降沿延时,在一定程度上增加了驱动能力,但是在外部环境恶劣的条件下抗干扰能力仍不行。
RS485芯片自收发是现在比较普遍的用法,但是这种自动控制方向的通讯机制驱动能力弱,在环境恶劣干扰严重的情况下,此通讯方式会带来误码,造成通讯错误。
发明内容
本发明主要的发明目的是:在已有的带多串口通讯的系统上,为增加控制RS485芯片收发方向的功能或是改RS485芯片自收发为外部控制方向,可以不改动已有稳定的CPU的软件来实现。在电路上增加相对独立的FPGA电路,实现RS485通讯方向控制信号,软硬件都相对原系统独立,方便快速改进,并能达到从外部可靠控制RS485通讯收发方向的目的。
本发明具体采用如下技术方案:
一种FPGA自适应控制RS485芯片收发方向的方法,其特征在于:在一个完整的需要提供多串口的电路系统中,采用FPGA作为CPU发出的数据发送信号TXD的反相器,经过FPGA后从I/O口发出相对应的控制RS485芯片收发方向的请求发送信号RTS送给RS485芯片发送使能引脚、接收使能引脚,实现对RS485芯片收发方向的控制。
所述方法包括以下步骤:
(1)首先进行硬件的连接组成多串口电路系统,CPU的普通I/O口发出TXD信号给RS485芯片的接收端D,RS485芯片的发送端R发出数据接收信号RXD给CPU的另外的普通I/O口;同时CPU还将数据传输信号TXD发送给FPGA,FPGA的I/O口发出请求发送信号RTS给RS485芯片的发送使能引脚、接收使能引脚;
(2)步骤(1)所述的多串口电路系统上电后,由FPGA对数据传输信号TXD的最小脉宽进行检测,通过查询波特率列表,确定TXD信号的波特率,之后通信便按此波特率产生收发控制信号,并以零延时电路的工作原理传递数据;
(3)FPGA重复查询TXD信号的最小脉宽,若检测发现通信波特率发生变化,则启动复位,重复步骤(2);否则,进入正常工作模式,当FPGA收到的TXD信号持续为高电平时,FPGA向RS485芯片的发送使能引脚/R/E、接收使能引脚DE输出的请求发送信号RTS为持续低电平,此时控制RS485芯片处于接收状态,当总线上有差分数据信号到达RS485芯片的差分数据传输接口A、B时,该差分信号会经RS485芯片与CPU之间的RXD信道被CPU直接接收;当RS485芯片与CPU之间TXD信道有数据传输,数据信号的起始位的下降沿到来时,FPGA向RS485芯片的发送使能引脚/R/E、接收使能引脚DE输出的RTS信号马上变为高电平,控制RS485芯片处于发送状态,将TXD信道的数据流转换为差分对信号通过RS485芯片差分数据传输接口A、B发送到总线上;
(4)在RS485芯片传输数据时,FPGA实时监测TXD信号波特率的变化,当TXD信号波特率变化时,返回步骤(2),重复上述步骤,重新学习并设置正确的波特率,从而实现通过FPGA对RS485芯片收发方向的控制。
在本发明中,用FPGA代替接到TXD的反相器,将从CPU发出的多路TXD信号接入FPGA的普通I/O口,经过FPGA的操作后从I/O口出相对应的RTS信号,将此信号送给RS485的传输方向控制引脚,当TXD变化时,RTS即实现了对RS485的收发方向控制。
本发明具有以下有益效果:
(1)通过FPGA来控制RS485通讯的收发方向能明显的提升RS485通讯的稳定性;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京四方继保自动化股份有限公司,未经北京四方继保自动化股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410587592.1/2.html,转载请声明来源钻瓜专利网。