单片微型计算机原理与接口技术(第二版):第七章 80C51单片微机的串行口原理及应用
本章节主要讨论单片微型计算机的串行口原理及应用,着重介绍串行数据通信的基本概念、异步传输和同步传输、波特率、串行口结构、80C51串行口控制寄存器和串行口内部结构等内容。
7.1 串行数据通信概述
串行数据通信是指计算机与外界的数据传送,多个智能仪器仪表或控制器在单片微机应用系统中构成一个分布式采集、控制系统,上层由PC进行集中管理等。串行数据通信有两种传送方式:并行传送方式和串行传送方式。并行传送方式要求物理信道为并行内总线或者并行外总线,而串行传送方式的物理信道为串行总线。
7.1.1 传送方式
串行数据通信有三种传送方式:单工方式、半双工方式和全双工方式。单工方式信号在信道中只能沿一个方向传送,半双工方式通信的双方均具有发送和接收信息的能力,信道也具有双向传输性能,而全双工方式若信号在通信双方之间沿两个方向同时传送,任何一方在同一时刻既能发送又能接收信息。
7.1.2 异步传输和同步传输
在数据通信中,要保证发送的信号在接收端能被正确地接收,必须采用同步技术。常用的同步技术有两种方式:异步传输和同步传输。异步传输以字符为单位进行数据传输,每个字符都用起始位、停止位包装起来,在字符间允许有长短不一的间隙。同步传输对数据块进行传输,一个数据块中包含着许多连续的字符,在字符之间没有空闲。
7.2 波特率
波特率是串行通信的传送速率,用于说明数据传送的快慢。波特率表示每秒种传输离散信号事件的个数,或每秒信号电平的变化次数,单位为band(波特)。比特率是指每秒传送二进制数据的位数,单位为比特/秒,记作bits/s或b/s或bps。在二进制的情况下,波特率与比特率数值相等。
7.3 80C51串行口及控制
80C51串行口是一个全双工的异步串行通信接口,它可作UART(通用异步接收和发送器)用,也可作同步移位寄存器用。口内的接收缓冲器和发送缓冲器在物理上是隔离的。可以通过访问特殊功能寄存器SBUF,来访问接收缓冲器和发送缓冲器。
7.3.1 80C51串行口结构
80C51串行口基本结构如图7–1所示。波特率发生器由T1、T2及内部的一些控制开关和分频器所组成。它提供串行口的时钟信号为TXCLOCK和RXCLOCK。控制波特率发生器的特殊功能寄存器:TMOD、TCON、T2CON、PCON、TL1、TH1、TL2、TH2等。
7.3.2 串行口内部
串行口内部包括串行数据缓冲寄存器SBUF、串行口控制寄存器SCON、串行数据输入/输出等。SBUF有接收缓冲器SBUF和发送缓冲器SBUF,占用同一个地址(99H)。SCON控制串行口的工作方式和状态。
本章节对单片微型计算机的串行口原理及应用进行了详细的介绍,对串行数据通信的基本概念、异步传输和同步传输、波特率、串行口结构、80C51串行口控制寄存器和串行口内部结构等内容进行了深入的分析和讨论。