RS232+RS485实现通讯实验板

合集下载

实现RS232或RS485接口设备和CAN设备之间的通信

实现RS232或RS485接口设备和CAN设备之间的通信

SCA-102应用案例
——实现RS232/RS485接口设备和CAN设备之间的通信
关键词:232转CAN,485转CAN,串口转CAN,现场总线系统要求:实现PC或者带有RS232/RS485接口设备和CAN设备之间的通信。

系统实现:
∙解决方案:SiboTech的网关SCA-102能够实现RS232/RS485与CAN总线之间透明传输,同时也可以满足从RS232/RS485到CAN的数据转换传输(RS232\RS485发送数据中带有CAN报文信息转换成相应的CAN报文发送)。

∙技术特性:SCA-102的CAN口支持CAN2.0A和CAN2.0B,波特率:5K~1000Kbps;
串口支持RS232/RS485,波特率:1200 ~115200bps;提供两种数据转换模式:透明转换、透明带标识转换;可设置断帧超时时间;CAN接口采用光电隔离,DC-DC电源隔离;串口接收缓存:4.5K字节,CAN接收缓存:1.6K字节。

∙配置方法:建立SCA-102串口(RS232)和电脑串口的连接,通过配置软件配置通讯相关参数:
系统连接:
如上图所示:RS232设备发送01 02 03 04数据,通过SCA-102,帧ID为06 27,所以只有节点2才能收到01 02 03 04四个数据,而节点2发送的数据01 02 03 04帧ID是06 43,因为SCA-102设置的接收ID范围为06 40~06 50,所以RS232设备能
接收到节点2发来的数据,从而实现RS232设备和CAN设备的数据通信。

如上图所示:通过SCA-102可以发送CANopen命令来控制各个CANopen从站,并接收CANopen从站节点的数据通过串口发送给PC机,然后PC机经过分析处理决定发送CANopen报文。

单片机对RS232-RS485相互通讯的硬件设计

单片机对RS232-RS485相互通讯的硬件设计

70内蒙古石油化工2014年第4期单片机对R S232--R S485相互通讯的硬件设计雷兆钢(包头供电局,内蒙古包头014030)摘要:随着数据采集系统的广泛应用,通常由单片机构成的应用系统常需要与PC机之间交换数据,实现单片机与PC机之间的通讯功能,以充分发挥PC和单片机之间的功能互补,资源共享的优势。

但常用的R S一232协议在某些场合下不能满足设计的要求,如在长距离传输时,传输信号易受外界的干扰。

本文设计一种硬件电路。

利用R S一232争R S一485接口芯片,实现单片机与PC机之间的远程通讯。

关键词:长距离传输;R S一485接口;转换中图分类号:TP368.1文献标识码:A文章编号:1006--7981(2014)04—0070—03目前,在很多的分布式数据采集和控制系统中,为了克服单片机的功能不足,都引入了PC机。

并采用主从式结构模式,即以PC机为主机,分布在现场的各个单片机系统为从机而组成的系统结构进行串行通信。

大多数的电脑设备都具有R S一232接口,然而由于R S一232接口标准出现较早,难免有不足之处,R S一485即是其中一个性能优于R S--232的接口,较后者而言,R S一485的接口信号电平低,且与TTL电平兼容;传输速率高;传输距离长。

因此,在一定的场合中,需通过R S一485接口进行通讯,把R S一232接口转换为R S--485接口成为了实际通信中的一个必要环节。

l概述1.1串行通信的概念所谓“串行通信”是指外设和计算机问使用一根数据信号线(另外需要地线,可能还需要控制线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。

在串行通信中,数据通常是在两个站(如终端和微机)之间进行传送,同一时刻按照数据流的方向可分成三种基本的传送方式:全双工、半双工、和单工。

但单工目前已很少采用。

目前多数终端和串行接口都为半双工方式提供了换向能力,也为全双工方式提供了两条独立的引脚。

RS485通讯实验

RS485通讯实验

RS485通讯实验与CAN 类似,RS-485 是一种工业控制环境中常用的通讯协议,它具有抗干扰能力强、传输距离远的特点。

RS-485 通讯协议由RS-232 协议改进而来,协议层不变,只是改进了物理层,因而保留了串口通讯协议应用简单的特点。

RS-485 协议主要是把RS-232 的信号改进成差分信号,从而大大提高了抗干扰特性。

对比CAN 通讯网络,可发现它们的网络结构组成是类似的,每个节点都是由一个通讯控制器和一个收发器组成,在RS-485 通讯网络中,节点中的串口控制器使用RX 与TX 信号线连接到收发器上,而收发器通过差分线连接到网络总线,串口控制器与收发器之间一般使用TTL 信号传输,收发器与总线则使用差分信号来传输。

发送数据时,串口控制器的TX 信号经过收发器转换成差分信号传输到总线上,而接收数据时,收发器把总线上的差分信号转化成TTL 信号通过RX引脚传输到串口控制器中。

RS-485 通讯网络的最大传输距离可达1200 米,总线上可挂载128 个通讯节点,而由于RS-485 网络只有一对差分信号线,它使用差分信号来表达逻辑,当AB 两线间的电压差为-6V~-2V 时表示逻辑1,当电压差为+2V~+6V 表示逻辑0,在同一时刻只能表达一个信号,所以它的通讯是半双工形式的。

RS-485 与RS-232 的差异只体现在物理层上,它们的协议层是相同的,也是使用串口数据包的形式传输数据。

由于RS-485 与RS-232 的协议层没有区别,进行通讯时,我们同样是使用STM32 的USART 外设作为通讯节点中的串口控制器,再外接一个RS-485 收发器芯片把USART 外设的TTL 电平信号转化成RS-485 的差分信号即可。

RS-485—双机通讯实验本小节演示如何使用STM32 的USART 控制器与MAX485 收发器,在两个设备之间使用RS-485协议进行通讯,本实验中使用了两个实验板,无法像CAN 实验那样使用回环测试(把STM32USART 外设的TXD 引脚使用杜邦线连接到RXD 引脚可进行自收发测试,不过这样的通讯不经过RS-485 收发器,跟普通TTL 串口实验没有区别),本教程主要以“USART—485 通讯”工程进行讲解。

RS485总线通信实验

RS485总线通信实验
{
if(m>=0 && m<='9') return m-'0';
else if(m>='A' && m<='Z') return m-'A'+10;
else if(m>='a' && m<='z') return m-'a'+10;
return 0;
}
uchar AscByte(uchar p) //ok
while(1)
{
if(RECV)
{
RECV=0;
if(ChkLRC()==0)
{
w=AscByte(0);
if(w==Addr) ModbusASC();
}
}
}
}
五、实验预习要求
学习单片机的串口设置的有关特殊寄存器的设置,学习ASCII码通信协议的有关知识。
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
#define tim0 -50000
#define BPS4800 -13
ByteAsc(n);
switch(cmd&0x0c)
{
case 0x00: //byteok
s=(uchar*)DatB+p;
for(i=0;i<n;i++)
ByteAsc(s[i]);
break;
case 0x04: //wordok

RS232串口通信实验

RS232串口通信实验

RS232串口通信实验一、认识RS232单片机的串行口是非常有用的,通过他我们可以把单片机系统的数据传回电脑处理或者接受电脑传过来的数据而进行相应的动作,在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。

RS-232-C接口(又称EIA RS-232-C)是目前最常用的一种串行通讯接口. 它是在1970年由美国电子工业协会(EIA)联合贝尔系统,调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准.它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"该标准规定采用一个25个脚的DB-25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定.后来IBM的PC机将RS232简化成了DB-9连接器,从而成为事实标准.而工业控制的RS-232口一般只使用RXD,TXD,GND三条线.在讨论RS-232C接口标准的内容之前,先说明两点:首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。

因此这个标准的制定,并未考虑计算机系统的应用要求。

但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。

显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。

有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了。

其次,RS-232C标准中所提到的“发送”和“接收”,都是站在DTE立场上,而不是站在DCE的立场来定义的。

由于在计算机系统中,往往是CPU和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。

(1)RS232(DB9)的接口说明1 DCD 载波检测2 RXD 接收数据3 TXD 发送数据4 DTR 数据终端准备好5 SG 信号地6 DSR 数据准备好7 RTS 请求发送8 CTS 允许发送9 RI 振铃提示(2)接口的电气特性在RS-232-C中任何一条信号线的电压均为负逻辑关系。

RS485实验一报告模板

RS485实验一报告模板

实验一基于RS485和牛顿模块的A/D、D/A实验一、实验目的和要求(1)熟悉RS485总线与牛顿模块的结构组成,了解其工作过程,认识其结构形式。

(2)熟悉牛顿模块的基本工作原理。

(3)掌握应用RS485和牛顿模块进行电压输出和电压采集的方法。

二、主要仪器设备计算机、R-8017、R-8024、R-8043D、R-8053、RS232转RS485模块、24V稳压源三、实验内容和原理(1)RS485网络分析RS485采用差分信号负逻辑,+2V~+6V表示“0”,- 6V~- 2V表示“1”。

RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。

在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。

很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。

而忽略了信号地的连接,这种连接方法在许多场合是能正常工作的,但却埋下了很大的隐患,这有二个原因:1>.共模干扰问题:RS-485接口采用差分方式传输信号方式,并不需要相对于某个参照点来检测信号,系统只需检测两线之间的电位差就可以了。

但人们往往忽视了收发器有一定的共模电压范围,RS-485收发器共模电压范围为-7~+12V,只有满足上述条件,整个网络才能正常工作。

当网络线路中共模电压超出此范围时就会影响通信的稳定可靠,甚至损坏接口。

2>.EMI问题:发送驱动器输出信号中的共模部分需要一个返回通路,如没有一个低阻的返回通道(信号地),就会以辐射的形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波。

由于PC机默认的只带有RS232接口,有两种方法可以得到PC上位机的RS485电路:1>.通过RS232/RS485转换电路将PC机串口RS232信号转换成RS485信号,对于情况比较复杂的工业环境最好是选用防浪涌同时带隔离栅的产品。

RS232与RS485串行接口转换电路及其编程实现

RS232与RS485串行接口转换电路及其编程实现

第8卷第1期实验科学与技术・69・RS232与RS485串行接口转换电路及其编程实现胡玮,魏伟(华中科技大学电气学院.武汉430074)摘要:文章给出了一种通用RS232一RS485串口通信转换器的硬件结构和程序实现。

介绍了该转换器在电路测试技术课程电子实验报告中的应用实例。

关键词:电子实验报告;串口通信;转换器;MAX232芯片;MAX485芯片中图分类号:TP311:TM930文献标识码:B文章编号:1672—4550(2010)01—0069—03RS232toRS485SerialInterfaceConversionCircuitanditsProgrammeHUWei,WEIWei(CdlegeofElectrical&ElectronicEngineedng。

HuazhongUniversityofScieneandTechnology,Wuhan430074,China)Abstract:llfispaperpresentedaCOlllIgonusedRS232-RS485serialinterfaceconversioncircuitanditsprogrmme.Inaddition,thewholeconfigurationofelectronicalexperimentreportsforcircuitmeoryexperimentWaSalsogiveninthepaper.Keywords:ehctronicalexperimentreports;serialcommunication;conveyor;MAX232;MAX4851引言本文介绍的电路测试技术电子实验报告是电工实验台综合软件,该软件选用华中科技大学编著的电工基础实验讲义,制作了9个实验内容:2个直流实验,3个交流实验,4个动态实验。

每个实验相对于一个独立的实验界面,这个实验界面运用软件平台制作完成。

通过使用该软件,学生可以在课堂上完成实验的同时完成实验报告,并在网络打印机上打印出来。

RS232与RS485串行接口转换电路及编程实现

RS232与RS485串行接口转换电路及编程实现

RS232与RS485串行接口转换电路及编程实现RS232和RS485都是串行通信接口,但它们在信号电平、传输距离和通信方式等方面有所不同。

RS232是一种单向通信的接口,常用于连接个人计算机和外部设备,如打印机、调制解调器等,信号电平为正负12V。

而RS485是一种半双工通信的接口,常用于远距离和多点通信,信号电平为正负2-6V。

为了实现RS232与RS485之间的转换,我们需要使用特定的电路和编程实现。

电路设计:1.信号电平转换:由于RS232和RS485的信号电平不同,所以我们需要使用电平转换电路将RS232的正负12V转换为RS485的正负2-6V。

这可以通过使用MAX202芯片来实现。

MAX202芯片是一个双向转换器,可以将RS232信号转换为RS485信号。

2.数据方向控制:RS485是一种半双工通信接口,需要通过数据方向控制线来实现发送和接收的切换。

可以使用一个双四极开关(如74HC4053)来控制数据方向。

其中A路和B路分别连接到RS485的A线和B线上,控制端连接到MCU的IO口。

3.电源供电:RS485通信线需要提供独立的5V供电,可以使用一个稳压芯片(如LM7805)来为RS485提供稳定的电源。

编程实现:1.初始化串口:在MCU上初始化串口,设置波特率、数据位、停止位等参数。

根据不同的MCU,具体的初始化方法会有所不同。

2.设置数据方向:根据发送或接收操作,通过控制IO口的电平来控制数据方向,将数据发送到RS485或从RS485接收数据。

3.发送数据:将要发送的数据写入串口缓冲区,并发送出去。

4.接收数据:通过轮询串口缓冲区检查是否有数据到达,若有数据则读取并进行相关处理。

总结:通过以上电路设计和编程实现,我们可以实现RS232与RS485之间的串行接口转换。

这样可以实现单向通信接口与远距离多点通信接口之间的互联。

在实际应用中,我们需要根据具体的系统需求和MCU的特性进行具体的电路和编程设计。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

RS232+RS485实现通讯实验板
1 引言
计算机控制系统中经常采用多机系统进行通信,在由PC机和单片机构成的分布式控制系统中,往往以PC机为上位机完成较为复杂的数据处理和对前沿机的监督管理,以及对下位机进行多机协调,本文介绍一种将 RS232,RS485,及红外接口集成在一起的PC机--单片机多功能通讯实验板,用于实现PC机与单片机间的串口通信、红外通信及PC机与PC机间的通讯实验。

2 实验板的组成原理与设计
2.1 串行通信
串行通信是指通信的发送方和接收方之间数据信息的传输是在单根数据线,以每次一个二进制位移动的,他的优点是只需一对传输线进行传送信息,因此其成本低,适用于远距离通信,他的缺点是传送速度低,串行通信有异步通行和同步通信两种基本通信方式,同步通信适用于传送速度高的情况,其硬件复杂,而异步通信应用于传送速度在50-19200波特之间,是比较常用的传送方式,在异步通信中,数据是一帧一帧传送的,每一串行帧的数据格式由1位起始位,5-8位的数据位,1位的奇偶校验位(可省略)和1位停止位4部分组成,在串行通信前,发送方和接收方要约定具体的数据格式和波特率(通信协议)。

2.2 AT89C51微控制器
AT89C51单片机系统具有设计简单、性能可靠、功耗低等优点,它为用户预留下足够的软硬件资源,可供用户进行再开发应用,该系统除内部已有的 4K FLASH存储器外,还可以扩展选址64K ROM区和64K RAM区,供用户使用,用户在系统开发时,可以将自己的数据块和程序段、数据表,以若干控制子程序、数据块形式存放于AT89C51单片机的扩展ROM或 RAM 区中,以便系统工作时重复使用和反复调用。

2.3 RS232C通信接口
RS232C是一种电压型总线标准,可用于设计计算机接口与终端或外设之间的连接,以不同的极性的电压表示逻辑值。

-3~-25V表示逻辑&quot;1&quot;。

+3~+25V表示逻辑&quot;0&quot;。

其电平与TTL和CMOS电平是不同的,所以在通信时必须进行电平转换。

2.4 MAX232芯片
MAXIM公司的MAX232/MAX232A接收/发送器是MAXIM公司特别为满足EIA/TEA2232E的标准而设计的,他们在 EIA/TIA2232E标准串行通信接口中日益得到广泛的应用,他们具有功耗低、工作电源为单电源、外接电容仅为0.1&mu;F或1&mu;F,采用双列直插封装形式、接收器输出为三态TTL/CMOS等优越性,为双组RS 232接收发送器,工作电源为+5V,波特率高,仅需外接0.1&mu;F或1&mu;F的电容,其价格低,可在一般需要串行通信的系统中使用,MAX232外围需要 4个电解电容,是内部电源转换所需电容,其取值均为1&mu;F/25V宜选用钽电容并且应尽量靠近芯片。

2.5 红外发送、接收电路
红外通讯以红外线作为通讯载体,通过红外光在空中的传播来传输数据,他由红外发射器和红外接收器来完成,在发射端,发送的数字信号经过适当的调制编码后,送入电光变换电路,经红外发射管转变为红外脉冲发射到空中;在接收端,红外接收器对接收到的红外光脉冲进行光电变换,解调译码后恢复出原信号。

红外发送电路中采用的红外发射器件是塑封的TSAL6200红外发射二极管,他将周期的电信号转变成一定频率的红外光信号,他是一种时断时续的高频红外脉冲信号,但脉冲串时间长度是恒定的,根据脉冲串之间的间隔大小,表示传输的是数据&quot;0&quot;还是
&quot;1&quot;。

红外接收器对接收到的红外光脉冲进行光电变换,解调译码后恢复出原信号。

红外载波为频率38KHz的方波,采用脉宽调制PWM方式发送,通过待发送二进制数据的&quot;0&quot;或&quot;1&quot;控制两个脉冲串之间的时间间隔,即PWM的占空比。

红外载波可以使用单片机内部的定时器的PWM功能实现,也可以通过外围硬件电路实现,红外接收采用HS0038B红外接收器,当接收收到38KHz的载波信号时,HS0038B接收器会输出低电平,否则输出高电平,从而可以将&quot;时断时续&quot;的红外光信号解调成一定周期的连续方波信号,经单片机处理,便可以恢复出原数据信号。

2.6 设计思路
本实验板选用的ATMEL公司的AT89C51单片机为核心,RS232C接口选用9芯接头,电平转换芯片选用MAX232A,用来实现232电平与TTL电平的转换,RS485接口芯片选用65LBC184,他使用单一电源,电压在+3
~+5.5V范围内都能正常工作,能完成TTL与RS485电平之间的转换,红外发送电路中采用的红外发射器件是红外发射二极管,他将周期的电信号转变成一定频率的红外光信号。

红外接收芯片HS0038B是能够接收红外信号的小型化接收器,通过外围的自激振荡电路产生38KHz的载波频率。

为了及时显示各接口发送、接收数据的状态,在实验板上还设置了状态显示电路,由接口信号通过放大电路驱动相应发光二极管,例如,当232芯片接收到PC 机的数据时,232芯片的接收端会使相应的二极管闪烁,红外发送电路在发送数据时,其相应的发光管也会及时闪烁,而PC机上的串口通信程序使用一个叫做串口助手的程序,他可以设置串口,波特率,并发送/接收串口数据,故本文只介绍单片机部分的通信程序。

2.7 单片机软件设计
在实验板上还集成了51单片机来组成最小控制系统,所选用的AT51单片机的串口有4种工作方式,用于多机异步通信时选用方式2或方式3,数据帧格式为:1位起始位,8位数据位,1位停止位,进行串行通信前要对串口进行初始化,设置波特率和串行口工作模式,设定单片机的地址码为F1H1,在传送数据前先联络地址码,如地址码正确则传送数据,否则继续联络地址码,数据的通信采用累加和校验的方法,即每传送一组数据(个数自定,设为100个),校验一次累加和是否正确,正确则回送00H,否则回送FFH1,通信可以由中断传送方式和查询方式,本文采用查询方式,选择波特率为1200b/s,定时器T1作为波特率发生器,选用晶振为12MHz,定时器T1工作于模式2,定时器初值为0E6H,AT89C51单片机的通信程序框图如图2。

2.8 通讯实验示例
实验1 利用RS232接口及MAX232电平转换芯片来实现PC机与单片机的串口通信。

实验2 首先通过RS232接口将PC机1与实验板1连接,将232电平转换为TTL电平,然后通过RS485接口把TTL电平转换为485电平并连接到实验板2上,再通过RS232实现与PC机2的串口通信。

实验3 通过RS232接口将PC机1与实验板1连接,将232电平转换为TTL电平,然后通过红外发送电路将信号无线传送到实验板2上,再通过安装在实验板2上的RS232接口与PC机2完成通信。

3 结语
该系统硬件结构简单,功能可靠,硬件与软件均调试通过,在实际现场的应用中具有一定的实用价值,对于为了解并掌握多机间串行通信,红外通信的初学者是一个理想的实验工具。

相关文档
最新文档