PC机与多台单片机串行通信 - 图文(2)

2019-02-15 23:36

武汉工程大学邮电与信息工程学院 毕业设计(论文)

第二章 课题实施方案

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-485 标准转换芯片 RS-485 Rxd Txd RS-485 RS-485 Rxd Txd Rxd Txd 8051 8051 图2-1 系统结构图

8051 在多媒体网络广播系统中,利用PC机与单片机够成的多机通信系统,采用主从式结构:主从控制多个从机,作为从机的单片机不主动发送命令或数据,一切都由主PC机控制;并且在一个多级系统中,只有一台主机,各台从机之间不

2

武汉工程大学邮电与信息工程学院 毕业设计(论文)

能相互通信,即使有信息交换也必须通过主从转发。采用RS-485构成的多机通信系统原理框图、在总线末端接一个匹配电阻,吸收总线上的反射信号,使得正常传输信号无毛刺。匹配电阻的取值应该与总线的特性阻抗相当。在总线上没有信号传输时,总线处于悬浮状态,容易受干扰信号的影响。将总线上的差分信号的正端A+和负端B-之间接一网络。当总线上没有传输时,正端A+的电平大约为3.2V,负端B-的电平大约为1.6V,即使有干扰信号,也很难产生串行通信的起始信号0,从而增加了总线抗干扰的能力。

在该系统中,由于采用MAX487差分平衡收发器芯片,半双工传输方式,因此驱动器可接的下位机根据需要最多可扩展至128个。

2.2 系统软件设计

(一)通信协议设计

为保证通信进行,首先做到单片机的串行口与主控机串行口的设置保持一致,即数据格式一致、通信波特率相同。如果是多点通信,每个从机要分配一个地址码。系统中协议有三种帧格式:呼叫帧、应答帧和数据帧。呼叫帧由主机发出。应答帧只能由从机发出。当从机收到呼叫帧后,把本机地址和当前状态回发给主机。设置开机自检、自诊断程序,机器不能带病工作;如果需要,还可以设置在工作空闲时或定时自检程序。

PC机与单片机构成的多机通信系统采用主从结构。数据通信总是有主机发起。主机处于发送状态“说”时从机总是处于“听”状态。若主机发送的地址信息与本地从机相符,则接受该数据,否则,继续“听”总线上的数据。若从机需要发送数据,则必须等到主机轮询本地从机时,才可以提出请求。这种网络模式下从机不会“侦听”其他从机对主机的响应,这样就不会对其他从机产生错误的响应。主从式多机通信协议中,通信速率设为19.2kbps。系统上电或复位后,使所有从机的SM2位置1处于只接收地址帧监听状态。主机向从机发送一帧地址信息,从机接收到地址帧后,将其与本地地址比较,判断是否一致。若与本地地址相符,则清除SM2,同时发送应答帧,进入通信状态;其他与本地地址不相符的从机则保持SM2位不变,继续监听。主从机均以中断方式进行通信,程序流程如图2-2所示:

3

武汉工程大学邮电与信息工程学院 毕业设计(论文)

开始 系统初始化 发从机地址 接收从机的应答帧 响应正确? 否

允许串行中断 返回

图2-2 通信流程图

(二)多机发送是的分时说、听

多机传送时,通信协议要合理地协调总线的分时公用,通信波特率的计算要有冗余。采用RS-485总线连接的多个站点,由于485总线是异步半双工的通信总线,在某一个时刻,总线只可能呈现一种状态,即任一时刻只有一个站点在“说”,则数据将在通信总线里碰撞,结果是处于接受状态的站点不能收到正确的数据。在RS-485总线通信网络中,必须控制好每个站点的“听”、“说”状态,即收、发状态,对总线的使用权必须进行分配,以使各个从机的发送控制信号在时间上完全隔离,保证能及时、正确地传输数据。要做到总线上设备在时序上的严格配合,必须要遵从一下几点: 1.复位时,主从机都应该处于接受状态。

2.控制端RE、DE的信号有效脉冲宽应该大于发送或接收一帧信号的宽度。 3.总线上所连接的各从机的发送控制信号在时序上完全隔开。通信方式一般是主节点循环轮询各个从节点。各个从节点都有自己的网络通信识别号,即本机地址。当朱节点的轮询信息中包含自己的网络通信识别号,此从节点对此帧进行应答,其他节点则忽略此帧,不做处理。

4

武汉工程大学邮电与信息工程学院 毕业设计(论文)

第三章 硬件电路设计

3.1 80C51单片机结构

3.1.1 MCS-51单片机内部结构

在MCS-51系列[1]里,所有产品都是以8051为核心电路发展起来的,它们都具有8051的基本结构和软件特征[2]。从制造工艺来看,MCS-51系列中的器件基本上可分为HMOS和CMOS两类。CMOS器件的特点是电流小和功耗低(掉电方式下消耗10uA电流),但对电平要求高(高电平大于4.5V,低电平小于0.45V),HMOS对电平要求低(高电平大于2.0V,低电平小于0.8V),但是功耗大。 8051单片机内部包含了作为微型计算机所必须的基本功能部件,各功能部件相互独立而融为一体,集成在同一块芯片上。8051内部结构如图3-1所示:

图3-1 单片机内部结构图

一 CPU结构

(一)算术逻辑部件ALU

8051的ALU是一个性能极强的运算器[3][4],能进行加、减、乘、除四则运算,也可进行与、或、非等逻辑运算,还可以实现数据传送、移位、判断和程序转移等功能。

(二)定时控制部件OSC

OSC是控制器的核心,能为控制器提供时钟脉冲。

5

武汉工程大学邮电与信息工程学院 毕业设计(论文)

(三)专用寄存器组 1.程序计数器PC

程序计数器PC是一个二进制16位程序地址寄存器(编码范围为0000H—FFFFH,共64KB),专门用来存放下一条需要执行的指令的内存地址,能自动加1。 2.累加器ACC

累加器ACC是一个专门用来存放操作数或运算结果的8位寄存器。 3.通用寄存器B

通用寄存器B是专门为乘法和除法设置的8位寄存器,通常用来存放积的高8位或除法的余数。 4.程序状态字PSW

程序状态字PSW是用来存放指令执行后有关状态的8位标志寄存器,其各位的定义如图3-2所示: PSW0 PSW1 PSW2 PSW3 PSW4 PSW5 PSW6 PSW7 Cy AC F0 RS1 RS0 OV -- P 图3-2 程序状态字各位定义

5.堆栈指针SP

SP是一个8位寄存器,能自动加、减1,专门用来存放堆栈的栈顶地址。遵循“先进后出,后进先出”的规律。 6.数据指针DPTR

DPTR是一个16位的寄存器,由两个八位寄存器DPH和DPL拼装而成。主要用来存放存储器的地址,DPH用来存放高8位,DPL用来存放低8位。

二 ROM存储器

8051内部仅有4KB ROM存储器,地址范围为0000H—0FFFH。8051可外接ROM,但一定保证片内和片外之和不能超过64KB(即8051有64KB的寻址区0000H—FFFFH),在4KB地址范围为0000H—0FFFH里还可供片外使用,其取决于控制线EA,如图3-3所示

6


PC机与多台单片机串行通信 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:执业药师考试 - 中药化学知识点总结(生物碱以及苷类)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: