由于RS-422、RS-485总线具有抗干扰能力强、通讯速率高、通讯距离远、可以与多台从机通讯等特点,所以在主从式多机通讯中,得到普遍应用。
我们设计开发了一种以AT90S2343低功耗单片机为核心的外插式串行口智能转换器,它把RS232串行口转换至RS-422或RS-485串行口。它无须外部供电、并能自动识别通讯波特率(1200-115.2K)和通讯方式(8位、9位方式),智能控制接收和发送电路与通讯总线的连接、在不改变现有软件情况下,做到即插即用。
该转换器且通用性强、性能可靠、结构简单、使用方便的特点。可广泛应用于数据采集、监控管理及集散控制的通讯系统中。笔者在电气设备的绝缘在线监测系统中,应用该转换器实现对多台数据采集装置的数据通讯,通讯性能稳定可靠。
1、电路的整体结构
智能转换器的电路结框图如图1所示,整个电路由4个部分组成。第一部分是DC-DC电源变换电路。它从PC机串行口的信号线上窃取电能,将其转换成供智能转换器使用的电源;第二部分是RS-232接口电路,它实现各信号的RS-232电平与TTL电平的转换;第三部分是RS485/RS422接口电路,它实现通讯总线的RS485/RS422电平与TTL电平之间的转换;第四部分是以CPU为核心的智能控制电路,它通过监测PC机的TXD发送信号,识别通信的波特率、通讯方式(10/11位方式)、智能控制通讯数据的发送和接收。
当转换器用作RS485半双工通讯方式时,须将发送器输出和接收器输入的同相、反相端分别用两个跳线短接。2 电路工作原理
2.1 DC-DC电源变换电路
由于RS232接口不提供电源,全部电路的供电只能从RS-232信号线中获取。RS-232接口有DTR、RTS和TXD三个输出信号,每个信号可提供输出电流的典型值为±8mA。通用软件不使用握手信号RTS和DTR,它们输出为-12V。TXD信号在不发送数据和发送数据“1”的时,也输出为-12V。为了增加电源转换电路的输出功率,电路中把DTR、RTS和TXD三个信号的-12V输出作为电源变换电路的电源输入。
由于没有负电压输入转换到稳定正电压输出的DC-DC转换器,笔者在通用DC-DC转换电路的基础上,用IC芯片MAX761研制出具有输入-12V电压、+5V稳压输出的 DC-DC转换电路,转换效率>85%。具体的电路如图2所示。电路中MAX761是PFM(脉冲调频方式)的DC-DC转换控制器。最高调制频率为300KHZ。LX是功率驱动管(场效应管)的漏极输出端;REF是基准电压输出端;LB是电压采样输入端。MAX761控制器和电感L构成自举升压电路,输出电压采样网络由稳压管W1、晶体管T、和电阻R1、R2组成。采样电压经LB输入控制器,通过改变调制脉冲的频率来稳定输出电压。电路的稳压工作原理如下:
输出电压VOUT降低时,三极管T1的基极电流IEB减小,LB端的取样电压UR1(βIEB×R1×)减小,当LB的取样电压(UR1)<片内基准电压时,控制信号以最高调制频率的来控制功率驱动管的开通与截止,当功率驱动管导通时,LX等于-12V,二极管D4处于截止状态,电流经电感L流向LX,此时电感L储存能量。当功率驱动管截止时,电感L释放能量,反电动势产生的电流经二极管D4向电容C4充电,从而使输出电压VOUT升高。
输出电压VOUT升高时,三极管T1的基极电流IEB增大,LB端的取样电压UR1(βIEB×R1×)增大,当LB的取样电压(UR1)≥片内基准电压时,控制信号控制功率驱动管在一个完整调制的周期内处于截止状态,由负载消耗使输出电压VOUT下降。
通过以上的脉冲调频方式的自举升压调节,使输出电压稳定在+5V。
输出电压由下式确定:
VOUT=Vw1+Veb+Ib×R2≈Vw1+Veb ≈ 5V
2.2 单片机智能控制工作原理
RS485通讯方式是软件通过收、发使能信号来控制数据的分时接收与发送,使用同一对差分通讯总线实现双向数据通讯的半双工通讯方式,而RS232通讯接口不能提供这样的使能控制信号。但可以通过单片机对主机PC-TXD信号的监测,准确计算出传送一帧数据的时间,智能产生收、发使能信号控制数据的分时接收与发送,实现数据的半双工通讯。以AT90S2343低功耗单片机为核心的串行口智能转换器的具体电路如图3所示。
单片机对传送一帧数据的时间的识别方法如下:当单片机监测到主机发送数据的起始位时,开始测量PC-TXD信号的每个脉冲的脉冲宽度,计算出对应的波特率,若均属于通用波特率集合,它们中的最高波特率即是通讯波特率。否则,该脉冲宽度是发送两帧数据的间隔时间,电平负跃变的时刻是起始位的开始时刻,开始重新测量每个脉冲的脉冲宽度。当通讯波特率确定后,检测第十位的电平状态,若是低电平,则可确定是11位通讯方式。否则是10位通讯方式。由通讯波特率和通讯方式计算出传送一帧数据的时间。
通讯接口接收、发送数据的智能控制过程如下:每当监测到主机发送数据的起始位时,单片机输出收、发使能信号(RE=1、DE=1),控制收、发电路禁止接收、允许发送数据,主机数据发送到RS485通讯总线上,同时定时器开始计时。当计时时间等于发送一帧数据的时间时,单片机输出收、发使能信号(RE=0、DE=0),控制收、发电路允许接收、禁止发送数据。此时,主机可以接收RS485通讯总线上的从机数据。当单片机又监测到主机发送数据的起始位时,重复上述的发送过程。
在通讯过程中,波特率测量和收、发数据智能控制必须同步进行,否则就会造成通讯数据的丢失。
为适应高速通讯的要求,电路中采用美国Atmel 公司的AT90SL2343单片机。它是目前最新的单片机系列之一,其突出特点是执行速度高,片内硬件资源丰富。使用CPU内部的电源监测和可编程看门狗定时器,使电路具有较强的抗干扰能力。
单片机I/O端口的分配和功能:PB3输入,监测主机PC-TXD信号;PB0输出,接收使能信号;PB4输出,发使能信号;PB2输入,由K1设置双工或半双工通讯方式。3 软件设计
3.1 程序流程框图
串行口智能扩展卡的程序流程图如图4所示。
3.2 半双工通讯方式的软件设计
在RS485半双工通讯方式下,首先允许接收、禁止发送数据。在检测到PC-TXD信号的数据起始位之后,通讯接口禁止接收、允许发送数据,并开始计时。通过检测数据信号的每个脉冲宽度,确定其波特率和数据的发送位数,进而计算出每帧数据允许发送的时间。当计时时间大于或等于该时间时,该通讯接口禁止发送并允许接收数据。在接收状态下,CPU重复检测发送数据的起始位。当检测到发送数据的起始位时,重复上述的数据发送的控制过程。
3.3 双工通讯方式软件设计
在RS422双工通讯方式下,接收和发送使能信号始终有效,同时允许接收和发送数据。
4 结束语
电路结构简单、无须外部供电,将它制作成串行口转换器直接插接在串行口插口上即可。它具有通用性强、性能可靠、结构简单、使用方便的特点。该电路使用了电源监测和可编程的看门狗监测定时器,使转换器具有较强的抗干扰能力。该转换器可广泛应用于主从式多机通讯系统。
上一篇:关于小功率反激电源VCC绕组设计的问题之我见
下一篇:AT89S52单片机和FAT16文件的SD卡读写设计
推荐阅读最新更新时间:2023-10-12 22:34
Vishay线上图书馆
- 选型-汽车级表面贴装和通孔超快整流器
- 你知道吗?DC-LINK电容在高湿条件下具有高度稳定性
- microBUCK和microBRICK直流/直流稳压器解决方案
- SOP-4小型封装光伏MOSFET驱动器VOMDA1271
- 使用薄膜、大功率、背接触式电阻的优势
- SQJQ140E车规级N沟道40V MOSFET
- MathWorks 和 NXP 合作推出用于电池管理系统的 Model-Based Design Toolbox
- 意法半导体先进的电隔离栅极驱动器 STGAP3S为 IGBT 和 SiC MOSFET 提供灵活的保护功能
- 全新无隔膜固态锂电池技术问世:正负极距离小于0.000001米
- 东芝推出具有低导通电阻和高可靠性的适用于车载牵引逆变器的最新款1200 V SiC MOSFET
- 【“源”察秋毫系列】 下一代半导体氧化镓器件光电探测器应用与测试
- 采用自主设计封装,绝缘电阻显著提高!ROHM开发出更高电压xEV系统的SiC肖特基势垒二极管
- 艾迈斯欧司朗发布OSCONIQ® C 3030 LED:打造未来户外及体育场照明新标杆
- 氮化镓取代碳化硅?PI颠覆式1700V InnoMux2先来打个样
- 从隔离到三代半:一文看懂纳芯微的栅极驱动IC