基于单片机的RS232转485总线毕业设计论文.docx
《基于单片机的RS232转485总线毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的RS232转485总线毕业设计论文.docx(23页珍藏版)》请在冰豆网上搜索。
基于单片机的RS232转485总线毕业设计论文
学号:
0121009310106
学生实习报告书
实习执行大纲
一、实习目的
1、巩固《单片机原理与应用》理论课的理论知识;
2、熟悉单片机应用系统的硬件设计及软件设计的基本方法;
3、将《单片机原理与应用》理论课的理论知识应用于实际的应用系统中;
4、训练单片机应用技术,锻炼实际动手能力。
二、实习纪律与要求
1、实习纪律
1)参加实习的学生必须按照实习大纲的要求,在指导教师的指导下,全面完成实习任务;
2)听从指导教师安排,严格遵守实习纪律;
3)因故在实习期间缺勤累计超过规定时间的三分之一,不得参加本次实习考核,但可在补足所缺天数后再给予考核并评定实习成绩。
2、基本要求
1)利用PROTEL等软件进行硬件设计;
2)利用KeiluV2软件完成应用系统软件设计;
3)利用stc-isp软件完成在系统编程、下载,并完成系统软件调试;
4)题目由指导教师提供;
5)要求每个学生单独完成硬件软件设计、仿真、焊接、调试任务;
6)写出实习报告,实习报告主要包括以下内容:
目录、摘要、关键词、基本原理、方案论证、硬件设计、软件设计(带流程图、程序清单)、仿真结果、实物运行结果照片、结论、参考文献等;
7)实习完成后通过答辩;
8)答辩时交实习报告电子文档,通过答辩后根据修改意见修改并打印、装订成册。
三、实习地点
武汉理工大学信息工程学院通信实验室。
四、实习时间
2012年12月10日---2013年1月10日。
实习单位:
武汉理工大学信息工程学院
参观考察单位:
(1)武汉理工大学信息工程学院国创课题小组
(2)武汉理工大学信息工程学院开放实验室
(3)武汉理工大学电工电子实习中心
(4)
(5)
(6)
实习开始时间:
2012年12月10日,实习时间共20天。
完成实习报告时间:
2013年1月10日。
目录
摘要I
AbstractII
1、引 言1
2、设计方案2
3、电路基本知识3
3.1.1、RS-232引脚及其含义3
3.1.2、RS-232接口电平4
3.1.3、RS-232的不足之处4
3.2.1、RS-485简介5
3.2.2、RS-485引脚说明5
3.2.3、RS-485特点6
3.3.1、MAX232芯片简介6
3.3.2、MAX232芯片引脚图7
3.3.3、MAX232引脚功能说明7
3.4.1、MAX485芯片简介8
3.4.2、MAX485芯片引脚图及其说明8
3.4.3、MAX485芯片的主要特性10
4、单元电路设计11
5、电路调试15
6、电路实物图16
7、心得体会17
8、参考文献18
附录:
程序19
摘要
RS-232只能进行短距离的通信,推出为10米左右。
并且抗干扰能力不是很理想。
而RS-485与RS-232相比有很多优点,首先,它的通信距离比前者远得多,通常可以达到数百米甚至千米以上,而且还可以实现多点通信方式,从而建立一个小范围的局域网,因而更有使用价值。
并且它采用差模信号传输方式,与地电平关系不大,因而它的抗干扰能力远比前者强多了。
本文介绍了如何设计一个RS-232转RS-485的电平转化电路,介绍了基于RS485实现的PC机与单片机串行通信控制系统.通过RS485与RS232信号转换电路,PC机根据下位机的地址不间断采集下位机的数据,经过处理后,将控制信号传给下位机,从而实现PC机与单片机之间的多路远程数据采集和远程控制。
关键词:
RS485;单片机;串行通信
Abstract
RS-232onlyforashortdistancecommunication,introducedforthe10meters.Andtheanti-interferenceabilityisnotveryideal.ComparedwithRS-232andRS-485hasalotofadvantages,firstofall,thecommunicationdistanceisfarmorethantheformer,usuallycanbehundredsofmetersorevenkilometersabove,butalsocanrealizemulti-pointcommunicationmode,soastoestablishasmallLAN,somoreusevalue.Anditusesthedifferentialmodesignaltransmissionmode,andagroundlevelrelationshipisnot,soitsanti-interferenceabilityisfarstrongerthantheformerstract.
ThispaperintroduceshowtodesignaRS-232transferRS-485thelevelconversioncircuit,basedonRS485implementationofthePCserialcommunicationbetweenSCMandPCcontrolsystemthroughtheRS485andRS232signalconversioncircuit,PCmachineaccordingtothemachineaddressofuninterruptedcollectedunderthecrewofthedata,aftertreatment,thecontrolsignalistransmittedtothenextmachine,therebyrealizingbetweenPCandsingle-chipmicrocomputermultichannelremotedatacollectionandcontrol.
Keywords:
RS-232;RS485;Singlechipmicrocomputer;Serialcommunication
基于单片机的RS-232
转485总线设计
1、引 言
目前PC机与多台单片机构成的分布式工业控制系统、数据传输系统等在工业现场的应用越来越广泛.它既利用了单片机功耗低、价格便宜、功能强大、抗干扰能力好等优点构建适宜分布于工业现场、使用方便灵活的监控站或下位机,又结合PC机丰富的软硬件资源,提供管理功能强大、人机界面友好的操控平台.而随着近几年来变频技术的不断发展,多单片机应用系统又以由单片机实现的变频控制为突出代表.
在这类控制系统中,稳定可靠、方便快捷的数据通信是实现系统功能的基础和保障.因此,根据系统的实际工作环境条件,选择恰当的接口形式和通信协议,设计合理通信软件和硬件控制电路就显得十分重要.RS485是工业界使用最为广泛的双向、平衡传输线标准接口,它以半双工方式通信,支持多点连接,允许创建多达32个节点的网络(某些驱动器模块可增加至128个),具有传输距离远(最大传输距离为1200m),传输速率快(1200m时为100kbit/s)等优点,用于多站互连时,便于组建成本低廉、可靠性高及分布范围较广的总线网络.文章结合聊城自来水公司利用PC机集中监控多台变频器实现供水的工程项目简要介绍RS485串行通信部分的设计与调试.
2、设计方案
方案说明:
此次PC机与单片机之间的通信接口电路RS232-485转换器主要包括了电源、232电平转换、485电路三部分。
本电路的232电平转换电路采用了NIH232或者也可以直接使用MAX232集成电路,485电路采用了MAX485集成电路。
为了使用方便,电源部分设计成无源方式,整个电路的供电直接从PC机的RS232接口中的DTR(4脚)和RTS(7脚)窃取。
PC串口每根线可以提供大约9mA的电流,因此两根线提供的电流足够供给这个电路使用了。
PC机的串行接口为RS232接口,RS485总线标准采用平衡发送和差分接收,具有抗干扰能力强、灵敏度高、数据传输距离远等优点,所以本系统选用RS485总线进行数据传输。
(即用3.8V~5V表示“1”,0V~0.3V表示“0”),故在数据传输时需要先进行RS232/RS485电平转换,本系统选用MXA232芯片实现上位机端RS232电平与TTL电平的转化,然后通过MAX485芯片将TTL电平转换为RS485标准电平。
在下位机端MAX485将RS485标准电平转换为TTL电平接入处理器的异步串行通信口(UART),实现RS485网络的半双工通信。
图1系统框图
3、电路基本知识
3.1、RS-232介绍
3.1.1、RS-232引脚及其含义
RS-232是PC机与通信工业中应用最广泛的一种串行接口。
上位机通常需要同时对多个检测监控设备进行指令下发,并及时搜集下位机传送来的数据,进行通信的前提是要保证串口连接正确并且工作正常。
RS232是单端输入输出,双工工作时至少需要数字地线。
发送线和接受线三条线(异步传输),还可以加其它控制线完成同步等功能。
RS-232C标准规定通信双方采用有25个引脚的DB-25连接器,并对连接器的每个引脚的信号内容和各种信号的电平加以规定。
后来IBM的PC机将RS-232C简化成了DB-9连接器,从而成为事实标准。
图2是DB-9的连接器的引脚分布,表一为其各个引脚功能说明。
图2RS-232串口DB-9引脚
表一DB-9连接器的引脚意义
3.1.2、RS-232接口电平
RS232采用负逻辑电平:
-15~-3:
逻辑1;
+15~+3:
逻辑0;
电压值通常在7V左右。
3.1.3、RS-232的不足之处
由于RS232接口标准出现较早,难免有不足之处,主要有以下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps;因此在“南方的老树51CPLD开发板”中,综合程序波特率只能采用19200,也是这个原因。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。
3.2、RS-485接口介绍
3.2.1、RS-485简介
为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。
由于EIA提出的建议标准都是以RS作为前缀,所以在通讯工业领域,仍然习惯将上述标准以RS作前缀称谓。
RS-485标准是为弥补RS-232通信距离短、速率低等缺点而产生的。
RS-485标准只规定了平衡发送器和接收器的电特性,而没有规定接插件、传输电缆和应用层通信协议。
3.2.2、RS-485引脚说明
1、连接主机端的RS485接口。
----信号定义如下:
----RS485接口--------信号含义
----3-----------BRXD-接收数据
----4------------ARXD+接收数据
----5------------YTXD+发送数据
----7------------ZTXD-发送数据
2、-连接从机端的RS485接口。
----信号定义如下:
----RS485接口---------信号含义
----3------------ZTXD-发送数据
----4------------YTXD+发送数据
----5------------ARXD+接收数据
----7------------BRXD-接收数据
3.2.3、RS-485特点
RS-485具有以下特点:
(1)RS-485的电气特性:
逻辑“1”以两线间的电压差为+(2―6)V表示;逻辑“0”以两线间的电压差为-(2―6)V表示。
接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL电路连接。
(2)RS-485的数据最高传输速率为10Mbps。
(3)RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
(4)RS-485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外RS-232-C接口在总线上只允许连接1个收发器,即单站能力。
而RS-485接口在总线上是允许连接多达128个收发器。
即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。
3.3、MAX232芯片
3.3.1、MAX232芯片简介
MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。
MAX232是一种双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。
每个接收器将EIA/TIA-232-E电平输入转换为5VTTL/CMOS电平。
这些接收器具有1.3V的典型门限值及0.5V的典型迟滞,而且可以接收±30V的输入。
每个驱动器将TTL/CMOS输入电平转换为EIA/TIA-232-E电平。
所有的驱动器、接收器及电压发生器都可以在德州仪器公司的LinASICTM元件库中得到标准单元。
MAX232的工作温度范围为0℃至70℃,MAX232I的工作温度范围为-40℃至85℃。
3.3.2、MAX232芯片引脚图
从RS-232转RS-485电平转换电路图中,我们可以看见与PC机接口的芯片为MAX232.
MAX232的结构图如下:
图3MAX232结构图
3.3.3、MAX232引脚功能说明
内部结构基本可分三个部分:
第一部分:
是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分:
是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分:
是供电,15脚GND、16脚VCC(+5v)。
3.4、MAX485芯片
3.4.1、MAX485芯片简介
MAX485采用单一电源+5V工作,额定电流为300μA,采用半双工通讯方式。
它完成将TTL电平转换为RS-485电平的功能。
其引脚结构图如图4所示。
从图中可以看出,MAX485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。
RO和DI端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别与单片机的RXD和TXD相连即可;/RE和DE端分别为接收和发送的使能端,当/RE为逻辑0时,器件处于接收状态;当DE为逻辑1时,器件处于发送状态,因为MAX485工作在半双工状态,所以只需用单片机的一个管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A的电平低于B端时,代表发送的数据为0。
在与单片机连接时接线非常简单。
只需要一个信号控制MAX485的接收和发送即可。
同时将A和B端之间加匹配电阻,一般可选100Ω的电阻。
可以串行口取电,可以驱动MAX232与MAX485实现通信。
没加负载时电压有5.16V,加负载后降制3V左右。
3.4.2、MAX485芯片引脚图及其说明
MAX485接口芯片是Maxim公司的一种RS-485芯片,该芯片引脚图如图4所示:
图4MAX485引脚图
MAX485是用于RS-485和RS-422通信的低功率收发器,芯片中包含有1个驱动器和1个接收器,它的电气特性如表3所示:
MAX485芯片由8个管脚组成,其功能如下:
(1)RO脚(接收器输出端):
若A比B大200mV,RO为高;若A比B小200mV,则RO为低。
(2)/RE脚(接收器输出使能端):
/RE为低时,RO有效;/RE为高时,RO成高阻状态。
(3)DE(引脚3):
输出信号的控制引脚。
当这个引脚低电平时,输出驱动器无效;当这个引脚高电平时,输出驱动器有效,来自DI引脚的输出信号通过A和B引脚被加载到总线上。
是COMS电平,可以直接连接到单片机。
(4)DI(引脚4):
输出驱动器的输入引脚。
是COMS电平,可以直接连接到单片机。
当DE是高电平时,这个引脚的信号通过A和B脚被加载给总线。
(5)GND(引脚5):
电源地线。
(6)A(引脚6):
连接到RS485总线的A端。
(7)B(引脚7):
连接到RS485总线的B端。
(8)Vcc(引脚8):
电源线引脚。
电源4.0≤Vcc≤5.0V
3.4.3、MAX485芯片的主要特性
图5MAX485内部电路与引脚图关系
表2MAX485主要特点
MAX485是用于RS-485与RS-422通信的低功耗收发器。
MAX485的驱动器摆率不受限制,可以实现最高2.5Mbps的传输速率。
这些收发器在驱动器禁用的空载或满载状态下,吸取的电源电流在120μA至500μA之间。
所有器件都工作在5V单电源下。
驱动器具有短路电流限制,并可以通过“热关断电路”将驱动器输出置为高阻状态。
接收器输入具有失效保护特性,当输入开路时,可以确保逻辑高电平输出,具有较高的抗干扰性能。
MAX485是市面上最为常见的RS422芯片,亦是用量最大的RS422芯片,性价比高,优质,供货稳定是大部分厂家采用它的主要原因。
4、单元电路设计
4.1、MAX232芯片引脚连接电路图
图6MAX232芯片引脚连接电路图
4.2、MAX232与RS-232连接图
图7MAX232与RS-232连接图
4.3、MAX485和单片机的连接
在一般情况下,可以直接把MAX485和单片机连接在一起,连接方法如图8所示。
图8 单片机和MAX485连接
MAX485的控制引脚2和引脚3可以分别控制,也可以共同控制如图8所示,在图8中当P1.0为高电平时,MAX485作为输出驱动器使用,来自单片机TXD的输出信号通过A和B引脚加载到RS485总线上;当P1.0为低电平时,MAX485作为信号接收器使用,来自RS485总线的信号通过RO(1号引脚)被读到单片机的RXD。
MAX485的控制引脚2和3无论是分别控制还是共同控制,接收器和驱动器都不能够同时工作,因此MAX485只能工作在`单工状态下或半双工状态下。
4.4、使用MAX485的多机通讯
可以很方便地由MAX485组成标准的RS485通讯系统,连接方法如图9所示:
图9 由RS485组成的多机系统
这个多机通讯系统由一台主机和多台副机组成,在通过MAX485和总线连接时,主机和副机连接方法相同,因此可以指定系统中的任一台设备作为主机,系统总线的使用权由主机控制。
在系统开始工作时,主机的MAX485处于数据发送状态,也既引脚2和3是高电平;而所有副机的MAX485处于接收状态,也既引脚2和3是低电平。
如果主机想要通过总线读取n号副机的数据,主机可以向这个副机发出呼叫信号,然后出让总线的使用权,也既使主机的MAX485处于接收信号状态,而被呼叫的副机被允许使用总线,它的MAX485处于发送数据状态,向总线加载数据,一旦加载数据完成,总线的使用权重新交给主机。
需要注意的是,在图9中,所有的MAX485的A引脚必须连接在同一条总线上,所有MAX485的B引脚也必须连接载同一条总线上。
4.5、电平转换接口总体电路图
RS232-485转换器主要包括了电源、232电平转换、485电路三部分。
如图10所示,本电路的232电平转换电路采用了NIH232或者也可以直接使用MAX232集成电路,485电路采用了MAX485集成电路。
使用本电路需注意PC程序必须使串口的DTR和RTS输出高电平,经过D3稳压后得到VCC,经过实际测试,VCC电压大约在4.7V左右。
因此,电路中要说D3起的作用是稳压还不如说是限压功能。
MAX485是通过两个引脚RE(2脚)和DE(3脚)来控制数据的输入和输出。
当RE为低电平时,MAX485数据输入有效;当DE为高电平时,MAX485数据输出有效。
在半双工使用中,通常可以将这两个脚直接相连,然后由PC或者单片机输出的高低电平就可以让MAX485在接收和发送状态之间转换了。
由于本电路DTR和RTS都用于了电路供电,因此使用TX线和HIN232的另外一个通道及Q1来控制MAX485的状态切换。
平时NIH232的9脚输出高电平,经Q1倒相后,使MAX485的RE和DE为低电平而处于数据接收状态。
当PC机发送数据时,NIH232的9脚输出低电平,经Q1倒相后,使MAX485的RE和DE为高电平而处于数据发送状态。
图10电平转换总体电路图
5、电路调试
焊接完成电路后,为了能便于观察和检查转换器是否正常工作,特意在转换器上增加了两个发光二极管作为指示器,一个用于指示装换器的工作电源,另一个用于指示数据传输过程中数据的传输情况和连接情况。
在第一次软件调试过程中,由于一心想到只要证明传输了数据,哪怕一位,也可说明设计的转换器成功了,在设计通信的程序的时候,指设计传输了一个数,传输一次。
然后,想通过流水灯直观地将数据显示出来。
可是,两个单片机通信的时候,启动和软件运行时,不能刚好同步,导致数据传输过程中数据丢失。
第二天重新回顾和理清思路,又重新将学过的单片机的教材看了一遍,特别是串口通信的部分。
再第三天,三个人一起讨论后,决定将程序改为传输全0和全1,同时,将程序改为重复发送这一数据。
为了避免通信失败后不知道出错的原因,没有直接进行通信,而是分别观察两个转换器的数据指示灯,并通过改变延时时间和传输的数据,确定两个转换器正常工作后,才将两个转换器用数据线连接,这个时候,虽然接受收方的单片机还没有用程序显示数据,但是,接收方的指示灯已经表明数据同步传输了。
之后,修改接收方单片机的程序,使其实时显示接收的数据,实现双机的实时通信,而通信的过程,是通过可以远距离