微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于STC15F2K61单片机的MBUSRS232转换器设计

基于STC15F2K61单片机的MBUSRS232转换器设计

时间:11-30 来源:互联网 点击:

上额外增加11-20mA。如何识别电流脉冲序列是成功接收从机回传数据的关键。

接收电路如下图所示:

图6 MBUS主站信号接收电路

接收电路中MBUS总线经过R5、R6电阻分压之后连接到单片机的AD1引脚,单片机通过测量分压点的电压得到稳态时比较器反相端2引脚的电压。比较器的同相端3引脚连接电容然后通过R1连接单片机的PWM引脚,并通过电阻R2,R3分压后接单片机的AD2引脚,用于测量比较器同相端3引脚的电压。

系统上电后,总线给从机通信电路供电,由于负载的个数以及负载的特性等原因,在R7上的压降会不同,这也是很多MBUS接收电路当负载特性或个数有变化的时候不能正确抄收数据的原因。该电路上电后,先测量R4与R7之间的电压,计算出比较器2引脚的电压。然后控制PWM输出给电容C1充电,并不断采集AD2点的电压,使比较器3引脚电压大于比较器2引脚电压,而略小于当总线中传输数字0时比较器2引脚的电压。该电压作为比较器的基准电压。基准电压根据AD1点的电压不同而不同,建立一个表格存储到单片机存储器中,以备查询。当从站返回电流脉冲序列时,改变了比较器2引脚的电压,通过与基准电压相比较,OUT1引脚输出电压脉冲序列。经过电平转换为0-5伏信号后,接单片机的串口接收引脚。由于软件根据AD1点的电压实时调整比较器3引脚的基准电压,使该接收电路适应能力大大增强。在通信过程中,因为AD1点电压值不断改变,因此当集中器通过总线向表计发送数据前,停止AD1点的电压采样。当接收到从站数据返回之后,重新启动对AD1点的电压采样。每隔一秒根据AD1点不同的电压,更新一次基准电压。由于系统根据MBUS稳态电压动态地调整比较器基准电压,从而避免了由于负载个数或负载特性导致的MBUS负端压降变化的弊端,使接收电路的适应性大大增强。本设计已经在抄表系统中应用,运行表明该设计稳定性好,可靠性高,收到了良好的效果。

四、上位机测试软件

为了测试转换器,编写计算机程序如下,分别用于读取表计表号和数据。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top