[信息与通信]第7章 串行接口.pptVIP

  • 2
  • 0
  • 约1.03万字
  • 约 72页
  • 2018-03-01 发布于浙江
  • 举报
[信息与通信]第7章 串行接口

第7章 MCS-51单片机串行口应用设计 7.1通信方式与串行接口概述 7.2串行口的编程操作 7.3常用标准串行通信接口 7.4MCS-51串口编程实例 7.1通信方式与串行接口概述 一、数据通信方式 数据通信方式有两种:并行通信与串行通信 ★并行通信(Paralled) :一条信息的各位数据被同时传送的通信方式,数据有多少位就需要多少根数据线。 并行传输时,一次传输一个字符,这种方式速度快,效率高,但所需的数据线数目较多(等于所传送数据的字长),而且在传送过程中容易因线路的因素(如信号衰减问题、信号间相互串音干扰问题)导致信息传送发生错误。因此并行通信的控制比较复杂,传送成本较高,仅适用于传送距离较短的场合,如系统内的信息传送等。 特点: 速度快,成本高,适合近距离传输 如计算机并口,打印机,8255 。 ★串行通信(Serial Communication) :一条信息的各位数据被逐位按顺序传送的通信方式 。只需一根数据,一根地线,共2根 (如双向通信发送和接收各需1根数据线。)加上驱动后其传输距离可以从几米到几千公里。串行通信又可分为同步和异步两种方式。 特点:成本低,硬件方便,适合远距离通信。 串行传送速率--波特率 所谓的波特率,是指每秒钟内所传送二进制数据的位数,单位为波特(Bd),实际上它是传送每一位信息所用时间内的倒数。 如果一个串行字符由1个起始位,7个数据位,1个奇偶校验位和1个停止位等10个数位构成,每秒钟传送120个字符,则实际传送的波特率为: 10位/字符×120字符/秒=1200位/秒=1200波特 传送每位信息所占用的时间: 1秒/1200=0.833毫秒 常用的标准波特率: 110、300、600、1000、1200、2400、4800、9600和19200波特。它也是国际上规定的标准波特率。同步传送的波特率高于异步方式,可达到64000波特。 二、单工、半双工、全双工通信方式 按通信方向分类:单工、半双工、全双工通信方式 1.? 单工方式: 一端是发送端,另外一端是接收端: 串行接口是实现CPU与外围设备串行通信的桥梁。由于CPU与接口之间按并行方式传输,接口与外设之间按串行方式传输,因此,在串行接口中,必须要有“接收移位寄存器”(串→并)和“发送移位寄存器”(并→串)。典型的串行接口的结构如所示。 串行通信接口电路: 能够完成串行通信的接口电路:通用异步收发器UART(Universal Asynchronous Receiver Transmitter,简称UART),可用来完成异步串行通信;通用同步收发器USRT(Universal Synchronous Receiver Transmitter,简称USRT),它能完成同步串行通信; 51单片机串行口: 全双工的异步通讯串行口 4种工作方式 ,波特率由片内定时器/计数器控制。 每发送或接收一帧数据,均可发出中断请求。 除用于串行通讯,还可用来扩展并行I/O口。 7.2 串行口的编程操作 一、串行口内部结构 1、发送和接收电路 串行口内部结构如下图,两个物理上独立地接收和发送缓冲器,可同时收、发数据(全双工)。 两个缓冲器共用一个特殊功能寄存器字节地址:SBUF(99H) 串行口的结构由串行口控制寄存器SCON、发送和接收电路等部分组成。 1、发送和接收缓冲器 “SBUF(发送)寄存器”和“SBUF(接收)寄存器”皆为8位缓冲寄存器。“SBUF(发送)寄存器”用于存放将要发送的字符数据;“SBUF(接收)寄存器”用于存放串行口接收到的字符。 SBUF(发送)寄存器和SBUF(接收)寄存器共用一个选口地址(99H),CPU可以通过执行不同指令对它们进行存取。 CPU执行MOV SBUF,A指令产生“写SBUF”脉冲,以便把累加器A中准备发送的字符送入SBUF(发送)寄存器; 执行MOV A,SBUF指令可以产生“读SBUF”脉冲,把“SBUF(接收)寄存器”中接收到的字符传送到累加器A中。 在异步通信中,发送和接收都是在发送时钟和接收时钟控制下进行的,发送时钟和接收时钟都必须同字符位数的波特率保持一致。MCS-51串行口的发送和接收时钟既可由主机频率fosc经过分频后提供,也可由内部定时器T1或T2的溢出率经过16分频后提供。定时器T1的溢出率还受SMOD触发器状态的控制。SMOD位于电源控制寄存器PCON的最高位。PCON也是一个特殊功能寄存器,选口地址为87H。 (1)SM0、SM1——串行口4种工作方式的选择位 表7-1 串行口的4种工作方式 SM0 SM1 方

文档评论(0)

1亿VIP精品文档

相关文档