基于485总线的PC机与多片单片机的通信毕业设计.doc

上传人:仙人指路1688 文档编号:4141443 上传时间:2023-04-07 格式:DOC 页数:46 大小:1.76MB
返回 下载 相关 举报
基于485总线的PC机与多片单片机的通信毕业设计.doc_第1页
第1页 / 共46页
基于485总线的PC机与多片单片机的通信毕业设计.doc_第2页
第2页 / 共46页
基于485总线的PC机与多片单片机的通信毕业设计.doc_第3页
第3页 / 共46页
基于485总线的PC机与多片单片机的通信毕业设计.doc_第4页
第4页 / 共46页
基于485总线的PC机与多片单片机的通信毕业设计.doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《基于485总线的PC机与多片单片机的通信毕业设计.doc》由会员分享,可在线阅读,更多相关《基于485总线的PC机与多片单片机的通信毕业设计.doc(46页珍藏版)》请在三一办公上搜索。

1、武汉工程大学邮电与信息工程学院毕业设计( 论 文 )说明书论文题目 PC机与多台单片机之间的串行通信 学 号 6402010113 学生姓名 李鹏 专业班级 06电子科技1班 指导教师 陈裕国_(副教授)_ 总评成绩 2010 年 5 月 29 日目 录摘 要Abstract 第一章 绪论 1第二章 课题实施方案 2第三章 硬件电路设计 53.1 80C51单片机结构及其串行通信原理 53.2 串行接口及其差分转换电路173.3 Protel DXP 2004原理图设计20第四章 软件电路设计 294.1 系统的通信协议 294.2 C51编程实现PC机与单片机之间的串行通信 294.3 Wi

2、ndows集成开发环境uVision2 33总结 39致谢 41参考文献 42摘要本文详细介绍了基于RS-485总线的PC机与多台单片机间的串行通信原理、实现方法和相应的通信硬件、软件设计。该设计是由PC机与单片机组成的主从控制系统,其中PC机做为上位机对下位单片机是实现控制和监视功能。它包括通信和控制两个功能模块。单片机作为下位机在整个系统中属于从属地位,主要用来接收上位机的命令。由于此通信的PC接口是RS232的9针接口,且下位机数目有限(32台)。所以本设计采用了RS485总线以及RS232转RS485的协议芯片以满足长距离多机通信,本文讨论了总线接口转换、主从式通信协议设计方法,给出了

3、采用中断式处理的通信过程流程图,并叙述了设计过程中必备的绘图软件Protel DXP的应用,以及编辑源代码软件keil uVision2的应用,实现了PC机对多个单片机组成采集终端的通信与管理。关键词: PC机 单片机 RS-485 通信AbstractThe communication 、realized method and corresponding design of hardware and software between PC and multiple MCUs based on RS-485 is described in detai in the article. This

4、design instroduces a pincipal and subordinate control system which is composed of PC and single chip. Divided from its function, it includes two parts: communication and control, in which PC is used as master, and MCUs is used as slave so as to receive the single order from the master.The bus interf

5、ace conversion and the design of master-slave communication protocol is introduced and The program flowchart of communication with interrupt process is also given. In the process of design, the use of unnecessary painter software and code editor software is depicted so that realize the communication

6、 and administration between PC and multiple MCUs which composed collection terminal.Keywords: PC MCUs RS-485 communication第一章 绪论单片机由于其具有控制功能强、设计灵活和性能价格比高的特点。因此在工业控制领域得到了广泛的应用,在工业控制领域,计算机的数量有一台变为多台,多台计算机组成了多机系统,计算机分布关系可以分为紧密耦合和松散耦合,主从控制系统是一种松散式的多机系统,计算机之间由通信协议来联系。此时往往需要组成上位机对下位机的通讯系统,由一台上位机去控制多台下位机。主

7、从控制就是一台功能较强的主机和32台左右的从机组成的多机系统。上位机一般是PC机,下位机一般是单片机系统,执行单片机与PC机串行通信的问题。本课题计算机的通信由上位机(主机)控制。主机向各个从机发送命令或者接受从机反馈的信息,主机有权修改从机的参数,接受从机的数据,还可以查看从机的状态,可以说主机是主从控制的大脑。在本设计中主机用来监视或查看从机的状态,并向从机发送命令,在系统中起着主导地位。我们通过查看主机界面的状态即可响应的控制发送与接收。从机在系统中处于从属地位,是命令的执行者。从机之间不能直接联系,它们之间必须有主机这个桥梁联系。在设计中我们选用了PC机作为我们的主机,从机为单片机(我

8、们本着可得,性价比采用此选择)。但在选择中出现了通讯接口的问题,我们是串型通讯,在PC机和单片机之间,我们需要电平转换,而且考虑到工业运用问题我们需要考虑总的选用,在常用的RS232和RS485中,不能使用双端信号,因此要求使用较高的输出电压,而且其传输距离仅为15米。RS485通信接口的信号传输是用两根线之间的电压表示逻辑1和0的因为发送端两根传送线,而且接受接收端也是两根传送线.这样RS485接受和发送仅需要2根线就完成了传输.由于传输线采用了差动信道,所以它的干扰抑制性好,又由于它的阻抗低无接地问题.传输距离可高达1200m,传输速度可达1Mbps比较上面的数据,考虑工业要求,我们采用了

9、RS485方式。第二章 课题实施方案2.1 系统硬件设计PC机的串行接口为RS-232或USB总线,现阶段应用更多的是将RS-232接口转换成RS-485接口,然后采用RS-485进行长距离、高速的串行异步通信。单片机采用RS-485进行串行通信,只需要将TTL电平的串行接口通过芯片转换为RS-485串行接口,这种转换比较简单,本系统采用的是MAX485芯片。利用PC现有的RS-232接口,系统中采用专用的RS-232/485标准转换芯片MAX3162E来实现。此转换芯片一边与RS-232标准9针接口相连,另一边与RS-485总线相连,原理图如图2-1所示。P C机(db9)RS-232/RS

10、-485 标准转换芯片RS-485RS-485RS-485Rxd Txd8051Rxd Txd8051Rxd Txd8051图2-1 系统结构图在多媒体网络广播系统中,利用PC机与单片机够成的多机通信系统,采用主从式结构:主从控制多个从机,作为从机的单片机不主动发送命令或数据,一切都由主PC机控制;并且在一个多级系统中,只有一台主机,各台从机之间不能相互通信,即使有信息交换也必须通过主从转发。采用RS-485构成的多机通信系统原理框图、在总线末端接一个匹配电阻,吸收总线上的反射信号,使得正常传输信号无毛刺。匹配电阻的取值应该与总线的特性阻抗相当。在总线上没有信号传输时,总线处于悬浮状态,容易受

11、干扰信号的影响。将总线上的差分信号的正端A+和负端B-之间接一网络。当总线上没有传输时,正端A+的电平大约为3.2V,负端B-的电平大约为1.6V,即使有干扰信号,也很难产生串行通信的起始信号0,从而增加了总线抗干扰的能力。在该系统中,由于采用MAX487差分平衡收发器芯片,半双工传输方式,因此驱动器可接的下位机根据需要最多可扩展至128个。2.2 系统软件设计(一)通信协议设计为保证通信进行,首先做到单片机的串行口与主控机串行口的设置保持一致,即数据格式一致、通信波特率相同。如果是多点通信,每个从机要分配一个地址码。系统中协议有三种帧格式:呼叫帧、应答帧和数据帧。呼叫帧由主机发出。应答帧只能

12、由从机发出。当从机收到呼叫帧后,把本机地址和当前状态回发给主机。设置开机自检、自诊断程序,机器不能带病工作;如果需要,还可以设置在工作空闲时或定时自检程序。 PC机与单片机构成的多机通信系统采用主从结构。数据通信总是有主机发起。主机处于发送状态“说”时从机总是处于“听”状态。若主机发送的地址信息与本地从机相符,则接受该数据,否则,继续“听”总线上的数据。若从机需要发送数据,则必须等到主机轮询本地从机时,才可以提出请求。这种网络模式下从机不会“侦听”其他从机对主机的响应,这样就不会对其他从机产生错误的响应。主从式多机通信协议中,通信速率设为19.2kbps。系统上电或复位后,使所有从机的SM2位

13、置1处于只接收地址帧监听状态。主机向从机发送一帧地址信息,从机接收到地址帧后,将其与本地地址比较,判断是否一致。若与本地地址相符,则清除SM2,同时发送应答帧,进入通信状态;其他与本地地址不相符的从机则保持SM2位不变,继续监听。主从机均以中断方式进行通信,程序流程如图2-2所示:开始系统初始化发从机地址接收从机的应答帧响应正确? 否允许串行中断返回图2-2 通信流程图 (二)多机发送是的分时说、听 多机传送时,通信协议要合理地协调总线的分时公用,通信波特率的计算要有冗余。采用RS-485总线连接的多个站点,由于485总线是异步半双工的通信总线,在某一个时刻,总线只可能呈现一种状态,即任一时刻

14、只有一个站点在“说”,则数据将在通信总线里碰撞,结果是处于接受状态的站点不能收到正确的数据。在RS-485总线通信网络中,必须控制好每个站点的“听”、“说”状态,即收、发状态,对总线的使用权必须进行分配,以使各个从机的发送控制信号在时间上完全隔离,保证能及时、正确地传输数据。要做到总线上设备在时序上的严格配合,必须要遵从一下几点:1.复位时,主从机都应该处于接受状态。2.控制端RE、DE的信号有效脉冲宽应该大于发送或接收一帧信号的宽度。 3.总线上所连接的各从机的发送控制信号在时序上完全隔开。通信方式一般是主节点循环轮询各个从节点。各个从节点都有自己的网络通信识别号,即本机地址。当朱节点的轮询

15、信息中包含自己的网络通信识别号,此从节点对此帧进行应答,其他节点则忽略此帧,不做处理。第三章 硬件电路设计3.1 80C51单片机结构3.1.1 MCS-51单片机内部结构在MCS-51系列里,所有产品都是以8051为核心电路发展起来的,它们都具有8051的基本结构和软件特征。从制造工艺来看,MCS-51系列中的器件基本上可分为HMOS和CMOS两类。CMOS器件的特点是电流小和功耗低(掉电方式下消耗10uA电流),但对电平要求高(高电平大于4.5V,低电平小于0.45V),HMOS对电平要求低(高电平大于2.0V,低电平小于0.8V),但是功耗大。 8051单片机内部包含了作为微型计算机所必

16、须的基本功能部件,各功能部件相互独立而融为一体,集成在同一块芯片上。8051内部结构如图3-1所示: 图3-1 单片机内部结构图一 CPU结构(一)算术逻辑部件ALU8051的ALU是一个性能极强的运算器,能进行加、减、乘、除四则运算,也可进行与、或、非等逻辑运算,还可以实现数据传送、移位、判断和程序转移等功能。(二)定时控制部件OSC OSC是控制器的核心,能为控制器提供时钟脉冲。(三)专用寄存器组1.程序计数器PC程序计数器PC是一个二进制16位程序地址寄存器(编码范围为0000HFFFFH,共64KB),专门用来存放下一条需要执行的指令的内存地址,能自动加1。2.累加器ACC 累加器AC

17、C是一个专门用来存放操作数或运算结果的8位寄存器。3.通用寄存器B 通用寄存器B是专门为乘法和除法设置的8位寄存器,通常用来存放积的高8位或除法的余数。4.程序状态字PSW 程序状态字PSW是用来存放指令执行后有关状态的8位标志寄存器,其各位的定义如图3-2所示:PSW0PSW1PSW2PSW3PSW4PSW5PSW6PSW7CyACF0RS1RS0OV-P图3-2 程序状态字各位定义5.堆栈指针SPSP是一个8位寄存器,能自动加、减1,专门用来存放堆栈的栈顶地址。遵循“先进后出,后进先出”的规律。6.数据指针DPTRDPTR是一个16位的寄存器,由两个八位寄存器DPH和DPL拼装而成。主要用

18、来存放存储器的地址,DPH用来存放高8位,DPL用来存放低8位。二 ROM存储器8051内部仅有4KB ROM存储器,地址范围为0000H0FFFH。8051可外接ROM,但一定保证片内和片外之和不能超过64KB(即8051有64KB的寻址区0000HFFFFH),在4KB地址范围为0000H0FFFH里还可供片外使用,其取决于控制线EA,如图3-3所示 外部ROM1000H-FFFFH片内ROMEA=1片外ROMEA=00000H-0FFFH 图3-3 程序存储器地址分配三 I/O端口I/O段口是MCS-51单片机对外部实现控制和信息交换的必经之路,是一个过渡的集成电路,用于信息传送过程中的

19、速度匹配和增强他的负载能力。(1) 并行I/O端口8051有四个并行I/O端口,分别命名为P0、P1、P2和P3,在这四个并行I/O端口中,每个端口都有双向I/O功能。每个端口内部都有一个八位数据输出锁存器和一个八位数据输入缓冲器。四个并行I/O端口作为通用I/O使用是,共有写端口、读端口和读引脚三种操作方式。写端口就是输出数据,是把累加器A或其他寄存器中数据传送到端口锁存器中,然后由端口自动从端口引脚线上输出,读端口是把端口锁存器中输出数据读到CPU的累加器。读引脚是输入外部数据的操作,是从端口引脚线上读入外部的输入数据。(2) 串行I/O端口8051有一个全双工的可编程串行I/O端口。这个

20、串行I/O端口既可以在程序控制下把CPU的八位并行数据变成串行数据一位一位地从发送数据线Txd发送出去,也可以把串行接收到数据变成八位并行数据送给CPU,而且这种串行发送和串行接受可以单独进行,也可以同步进行。8051串行发送和串行接收利用了P3口的第二功能,即P3.1引脚作为串行数据的发送线Txd和P3.0引脚作为串行数据的接收线Rxd。串行I/O口的电路结构还包括串行口控制寄存器SCON、电源及波特率选择寄存器PCON和串行数据缓冲器SBUF等。四 定时器/计数器 8051内部有两个16位可编程的定时器/计数器,命名为T0和T1,都由两个8位寄存器TH和TL拼装而成。定时器/计数器T0和T

21、1有定时器和计数器两种工作模式。 在定时模式下,T0、T1的计数脉冲可以有单片机时钟脉经12分频后提供,故定时时间和单片机时钟频率有关。在计数模式下,T0、T1的计数脉冲可以从P3.4和P3.5引脚上输入。五 中断系统中断是指CPU暂停原程序执行转而为外部设备服务(执行中断服务程序),并在服务完后回到原程序执行的过程。中断系统是指能够处理上述中断过程所需要的那部分电路。8051有三个内部中断源和两个外部中断源内部中断源是指两个定时器/计数器中断源和一个串行口中断源,串行口中断源是在串行口每发送完一个八位二进制数据或接受到一组输入数据八位后自动向中断系统提出的。外部中断源通常指外部设备其产生的中

22、断请求信号可以从P3.2和P3.3(即INT0和INT1)引脚上输入。3.1.2 MCS-51单片机引脚功能及其连接一 MCS-51单片机引脚功能引脚如图3-4所示 图3-4 单片机引脚图(一)端口线(4*8=32条)1. P0口(P0.7P0.0):功能a:不带片外存储器,P0可以作为通用I/O口使用,P0.7P0.0用于传送CPU的输入/输出数据,此时,输入缓冲、输出锁存,不须外接专用锁存器。功能b:带片外存储器,P0.7P0.0在CPU访问片外存储器时显示用于传送片外存储器的低8位,然后传送CPU对片外存储器的读写数据。2.P1口(P1.7P1.0):通用I/O口,用于传送CPU的输入/

23、输出数据。3.P2口(P2.7P2.0):功能a:通用I/O口,用于传送CPU的输入/输出数据。功能b:与P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但并不能像P0口那样还可以传送存储器的读写数据。4. P3口(P3.7P3.0):功能a:通用I/O口,用于传送CPU的输入/输出数据。功能b:控制功能端如下表:P3.0 RXD (串行口输入)P3.1 TXD (串行口输出)P3.2 INT0 (外部中断0输入)P3.3 INT1 (外部中断1输入)P3.4 T0 (定时计数器0的外部输入)P3.5 T1 (定时计数器1的外部输入)P3.6 WR (片外数

24、据存储器写选通)P3.7 RD (片外数据存储器读选通)(二)电源线(2条)Vcc为+5V电源线,Vss为接地线。(三)控制线(6条)1. ALE/PROG:地址锁存允许/编程线,配合P0口引脚的第二功能使用。在访问片外存储器是,8051CPU在P0.7P0.0引脚线上输出片外存储器低8位地址的同时还在ALE/PROG线上输出一个高电位脉冲,用于把这个片外存储器第8位地址锁存到外部专用地址锁存器,一边空出P0.7P0.0引脚线去传送随后而来的片外存储器读写数据。在不访问片外存储器时,8051自动在ALE/PROG线上输出频率为fosc/6的脉冲序列。2. EA/VPP:允许访问片外存储器/编程

25、电源线。3. PSEN:片外ROM选通线,在执行访问片外ROM的指令MOVC时,8051自动在PSEN线上产生一个负脉冲,用于为片外ROM芯片的选通。4. RST/VPD:复位/备用电源线,可以使8051处于复位工作状态。5. XTAL1和XTAL2:片内振荡电路输入线。如图3-5所示二 单片机地址输入的连接方式 由于单片机的P2口和P0口具有第二功能(即分别输入高低地址),故运用此功能来确定从机的地址,在地址开关与单片机之间还需要添加74LS244进行缓冲具体连接如图3-6所示:图3-5 单片机3个控制端的常用连接方法和参数 P2.7-P2.0 P0.7-P0.0 8051 PSENEA R

26、D WR74LS244多路选择开关图3-6 单片机地址控制图3.1.3 MCS-51 中断系统 中断是指计算机暂时停止原程序执行转而为外部设备服务,并在服务完后自动返回原程序执行的过程。中断由中断源产生,中断源在需要时可以向CPU提出“中断请求。”“中断请求”通常是一种电信号,CPU一旦对这个电信号进行检测和响应便可自动转入该中断源的中断服务程序执行,并在执行完后自动返回原程序继续执行,并且中断源不同中断服务程序的功能也不同。中断系统是指能够实现中断功能的那部分硬件电路和软件程序,对于MCS-51单片机,大部分中断电路都是集成在芯片内部的(即内部中断,包括定时器溢出中断源2个和串行口中断源),

27、只有INT0和INT1中断输入线上的中断请求信号产生电路才分散在各中断源电路或接口芯片电路里(即外部中断)。而本项目中使用的是串行口中断源。3.1.4 MCS-51的串行通信 串行通信是一种能把二进制数据按位传送的通信,故它所需传输线条数极少,特别适用于远程通信之中。一 串行通信基础(一)异步通信中的字符帧字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位等四部分组成。在串行通信中,发送端一帧一帧发送信息,接收端一帧一帧接收信息。两相邻字符帧之间可以无空闲位,也可以由若干空闲位,自行定义。图3-7表示每一帧的结构: 8位数据起始位奇偶校验 停止位0D0D1D2D3D4D5D6D70/11

28、第n字符帧(共11位)图3-7 帧结构(二)波特率 定义是每秒传送二进制数码的位数,单位是bps(位/秒),用于表征数据传输的速度,波特率越高,数据传输速度越快。而实际的字符传输速率是以帧/秒来衡量。(三)通信制式1.半双工制式:A、B只能是一个发送,一个接收,即一条信号线和一条接地线。 2.全双工制式:A、B两站间有两个独立的通信回路,两站都可以同时发送和接收数据,其两站间至少需要三条传输线:一条用于发送,一条用于接收和一条用于信号地。二 MCS-51的串行接口(一) 串行口控制寄存器SCON和PCONMCS-51对串行口的控制是通过SCON实现的,也和电源控制寄存器PCON有串行口控制寄存

29、器SCON决定串行口通信工作方式,控制数据的接收和发送,并标示串行口的工作状态等。其位格式为图3-8所示:SM0 SM1相应工作方式说 明所用波特率0 0方式0同步移位寄存器fosc/120 1方式110位异步收发由定时器控制1 0方式211位异步收发fosc/32或 fosc/641 1方式311位异步收发由定时器控制图3-8 特殊功能寄存器SCON其中fosc为晶振频率SM2:多机通讯控制位。在方式0时,SM2一定要等于0。在方式1中,当(SM2)=1则只有接收到有效停止位时,RI才置1。在方式2或方式3当(SM2)=1且接收到的第九位数据RB8=0时,RI才置1。REN:接收允许控制位。

30、由软件置位以允许接收,又由软件清0来禁止接收。TB8: 是要发送数据的第9位。在方式2或方式3中,要发送的第9位数据,根据需要由软件置1或清0。例如,可约定作为奇偶校验位,或在多机通讯中作为区别地址帧或数据帧的标志位。RB8:接收到的数据的第9位。在方式0中不使用RB8。在方式1中,若(SM2)=0,RB8为接收到的停止位。在方式2或方式3中,RB8为接收到的第9位数据。TI:发送中断标志。在方式0中,第8位发送结束时,由硬件置位。在其它方式的发送停止位前,由硬件置位。TI置位既表示一帧信息发送结束,同时也是申请中断,可根据需要,用软件查询的方法获得数据已发送完毕的信息,或用中断的方式来发送下

31、一个数据。TI必须用软件清0。RI:接收中断标志位。在方式0,当接收完第8位数据后,由硬件置位。在其它方式中,在接收到停止位的中间时刻由硬件置位(例外情况见于SM2的说明)。RI置位表示一帧数据接收完毕,可用查询的方法获知或者用中断的方法获知。RI也必须用软件清0。1. 方式0 在方式0下,串行口的SBUF是作为同步的移位寄存器用的。在串行口发送时,“SBUF(发送)”相当于一个并入串出的移位寄存器,由MCS-51的内部总线并行接收8位数据,并从TxD线串行输出,此时是在TI=0下进行的CPU通过指令给“SBUF(发送)”送出发送字符后,RxD线上即可发出8位数据,8位数据发送完后TI由硬件置

32、位,并可向CPU请求中断,CPU响应中断后先用软件使TI清零,然后再给“SBUF(发送)”送下一帧的数据。在接收操作时,“SBUF(接收)”相当于一个串入并出的移位寄存器,从RxD线接收一帧串行数据并把它并行的送入内部总线,此时RI=0且REN=1,接收电路接收到8位数据后,RI自动置1并发出串行口中断请求,CPU响应后RI由软件复位。2. 方式1 在方式1下,串行口设定为10位异步通信方式,字符帧中除8位数据外,还可有一位起始位和一位停止位。发送操作时,TI=0,执行指令后,发送电路就自动在8位发送字符前后分别添加一位起始位和一位停止位,并在移动脉冲作用下在TxD线上依次发送一帧信息,发送完

33、后自动维持TxD线高电平。TI也由硬件在发送停止位时置位,并由软件将它复位。接收操作时,RI=0且REN=1,接收电路对高电平的RxD线采样,当接收电路连续8次采样到RxD线为低电平时,相应的检测器便可确认RxD线上有了起始位,在接收数据第9位时,当RI=0和SM2=0或接收到的停止位为1,才能把接收到的8位字符存入“SBUF(接收)”中,把停止位送入RB8,并使RI=1和发出串行口中断请求,若上述条件不满足,则数据被舍去。3. 方式2和方式3方式2和方式3都是11位异步收发。两者的差异仅在于通信波特率有所不同方式2的波特率由MCS-51主频fosc经32或64分频后提供;方式3的波特率有定时

34、器T1或T2的溢出率经32分频后提供,故它的波特率是可调的。方式2和方式3的发送过程和接收过程类似于方式1,只是在发送数据第9位时,将之预先装入SCON的TB8中,而第9位可由用户自定义。一帧数据发送完后,TI=1,CPU便可通过查询TI来以同样方法发送下一个字符帧。 方式2和方式3的接收过程也和方式1类似。所不同的是:方式1时RB8中存放的是停止位,方式2和方式3时RB8中存放的是数据第9位。因此,方式2和方式3时必须满足接收有效字符的条件变为:RI=0和SM2=0或者收到的第9位为1,只有上述条件同时满足时接收到的字符才能送入SBUF,第9位数据位才能装入RB8中,并使RI=1。电源控制寄

35、存器PCON中只有一位SMOD与串行口工作有关,它的位格式为图3-9所示:图3-9电源控制寄存器PCONSMOD:波特率倍增位。串行口工作在方式1、方式2、方式3时,若SMOD=1,则波特率提高一倍;若SMOD=0,则波特率不提高一倍。(二) 串行口的通信波特率串行口的通信波特率恰好反映串行口传输数据的速率。通信波特率的选用,不仅和所选通信设备、传输距离有关,还受传输线状况所制约。波特率设计 1、方式0的波特率 工作方式0时,移位脉冲由机器周期的第6个状态周期S6给出,每个机器周期产生一个移位脉冲,发送或接收一位数据。因此,波特率是固定的,为振荡频率的1/12,不受PCON寄存器中SMOD的影

36、响。用公式表示为: 工作方式0的波特率=fosc/12 (式3.1.1) 2、方式2的波特率 工作方式2时,移位脉冲由振荡频率fosc的第二节拍P2时钟(即fosc/2)给出,所以,方式2波特率取决于PCON中的SMOD位的值,当SMOD=0时,波特率为fosc的1/64;当SMOD=1时,波特率为fosc的1/32,用公式表示为; 工作方式2波特率=(2SMOD/64)fosc (式3.1.2) 3、工作方式1和方式3的波特率 在这两种方式下,串行口波特率是由定时器的溢出率决定的,因而波特率也是可变的。相应公式为: 波特率=(2SMOD/32)*定时器T1溢出率 (式3.1.3) 定时器T1

37、溢出率=(fosc/12)* 1/(2k 初值) (式3.1.1)实际上定时器T1通常采用方式2,因为定时器T1在方式2下工作,TH1和TL1分别设定为两个8位重装计数器。表3-1 固定波特率与寄存器状态波特率foscSMOD定时器T1C/T所选方式相应初值串行口方式0 0.5M6Mhz* *串行口方式2 187.5K6Mhz 1* * *方式1或3 19.2K6Mhz 10 2FEH9.6K6Mhz 102FDH4.8K6Mhz002FDH2.4K6Mhz002FAH1.2K6Mhz002F4H0.6K6Mhz002E8H1106Mhz00272H556Mhz002FEEBH(三) 串口工作

38、方式2、3的发送接收时序串口工作方式2、3的发送、接收时序如图3-11所示。图3-11发送接收时序图3.2 串行接口及其电平转换电路3.2.1串行接口RS232结构与引脚功能RS232是个人计算机上的通信接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现如图3-12所示。(这里我们运用DB-9,其针孔意义如图3-13所示 )在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地

39、线。 RS-232标准规定的数据传输速率为每秒150、300、600、1200、2400、4800、9600、19200波特。RS-232 标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于15m以内的通信。同时RS232是点对点(即只用一对收、发设备)的通信,因此PC机无法直接对多个下位机进行远距离通信。图3-12 9针、25针接口 图3-13 9针管脚意义RS232的电器

40、特性、逻辑电平和各种信号线功能的规定。 在TxD和RxD上:逻辑1:-3V -15V 逻辑0:+3V+15V 发送数据(TxD)通过TxD终端将串行数据发送到MODEM,(DTEDCE)。 接收数据(RxD)通过RxD线终端接收从MODEM发来的串行数据,(DCEDTE)。 以上规定说明了RS232标准对逻辑电平的定义。对于数据(信息码):逻辑“1”的电平低于-3V,逻辑“0”的电平高于+3V。也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在(315)V之间。 RS232与T

41、TL转换: RS232是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA RS-232C 与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。今使用MAX3162芯片以实现电平间的转换。 3.2.2 RS485接口的通信原理图3-14 MAX485引脚图 在图3-14中显示出了RS-485的引脚图。RS485采用差分信号负逻辑,2V6V表示“0”,- 6V- 2V表示“1”。RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线

42、制接线方式,这种接线方式为总线式拓朴结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。 RS485RS485RS485从单片 机 1从单片 机 2从单片 机 32主单片机机图3-15 两线制总线拓扑式结构与RS232相比较RS485有以下几个特点:1. RS-485的电气特性:逻辑“1”以两线间的电压差为+(26) V表示;逻辑“0”以两线间的电压差为-(26)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该

43、电平与TTL电平兼容,可方便与TTL 电路连接。 2. RS-485的数据最高传输速率为10Mbps 3. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。 4. RS-485最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。因RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点就使其成为首选的串行接口。 由于RS485接口组成

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号