《6单片机的串口.ppt》由会员分享,可在线阅读,更多相关《6单片机的串口.ppt(31页珍藏版)》请在优知文库上搜索。
1、单单 片片 机机 原原 理理单片机原理单片机原理单单 片片 机机 原原 理理第六章第六章 MCS-51的串行口的串行口6.1 串行口的概念串行口的概念 6.2 串行口的结构串行口的结构 6.3 串行口的四种工作方式串行口的四种工作方式6.4 多机通讯多机通讯6.5 波特率的设定波特率的设定6.6 串行口应用举例串行口应用举例单片机原理 6.1 串行口的概念串行口的概念 通信的基本方式分为通信的基本方式分为并行通信并行通信和和串行通信串行通信两种:两种: 并行通信是构成并行通信是构成1组数据的各位组数据的各位同时同时进行传送,例如进行传送,例如8位数位数据或据或16位数据并行传送。其特点是传输速
2、度快位数据并行传送。其特点是传输速度快,但当距离较远、但当距离较远、位数又多时导致了通信线路复杂且成本高。位数又多时导致了通信线路复杂且成本高。 串行通信是数据串行通信是数据一位接一位地顺序一位接一位地顺序传送。其特点是通信线传送。其特点是通信线路简单路简单,只要一对传输线就可以实现通信只要一对传输线就可以实现通信(如电话线如电话线),从而大大,从而大大地降低了成本地降低了成本,特别适用于远距离通信。缺点是传送速度慢。特别适用于远距离通信。缺点是传送速度慢。单片机原理 6.1 串行口的概念串行口的概念 串行通信可分为串行通信可分为同步传送同步传送和和异步传送异步传送两种基本方式两种基本方式 (
3、1) 同步方式是将一大批数据分成几个数据块同步方式是将一大批数据分成几个数据块, 数数据块之间用同步字符予以隔开据块之间用同步字符予以隔开, 而传输的各位二进制而传输的各位二进制码之间都没有间隔。其基本特征是码之间都没有间隔。其基本特征是发送与接收时钟始发送与接收时钟始终保持严格同步终保持严格同步。 (2) 异步通信是按帧传送数据异步通信是按帧传送数据, 它利用每一帧的起、它利用每一帧的起、止信号来建立发送与接收之间的同步止信号来建立发送与接收之间的同步,每帧内部各位均每帧内部各位均采用固定的时间间隔采用固定的时间间隔, 但帧与帧之间的时间间隔是随但帧与帧之间的时间间隔是随机的。其基本特征是每
4、个字符必须用起始位和停止位机的。其基本特征是每个字符必须用起始位和停止位作为字符开始和结束的标志作为字符开始和结束的标志, 它是以字符为单位一个它是以字符为单位一个个地发送和接收的。个地发送和接收的。 单片机原理 6.1 串行口的概念串行口的概念 在串行异步传送中在串行异步传送中,CPU与外设之间事先必须约定:与外设之间事先必须约定: 字符格式。字符格式。 双方要事先约定字符的编码形式、奇偶校验形式及起始位和双方要事先约定字符的编码形式、奇偶校验形式及起始位和停止位的规定。例如用停止位的规定。例如用ASCII码通信,有效数据为码通信,有效数据为7位位,加加1个奇个奇偶校验位、偶校验位、1个起始
5、位和个起始位和1个停止位共个停止位共10位。当然停止位也可大位。当然停止位也可大于于1位。位。 波特率波特率(Baudrate)。 波特率就是数据的传送速率波特率就是数据的传送速率,即每秒钟传送的二进制位数即每秒钟传送的二进制位数,单单位为位位为位/秒。它与字符的传送速率秒。它与字符的传送速率(字符字符/秒秒)之间存在如下关系:之间存在如下关系: 波特率波特率=位位/字符字符字符字符/秒秒=位位/秒秒 要求发送端与接收端的波特率必须一致。要求发送端与接收端的波特率必须一致。单片机原理 6.1 串行口的概念串行口的概念 串行通信的数据传送方向有串行通信的数据传送方向有3种形式。种形式。 (1)单
6、工方式单工方式:如图如图(a)所示所示,A端为发送站端为发送站,B端为接收站端为接收站,数据仅能数据仅能从从A站发至站发至B站。站。 (2)半双工方式半双工方式:如图如图(b)所示所示,数据既可从数据既可从A站发送到站发送到B站站,也可以也可以由由B站发送到站发送到A站。不过在同一时间只能作站。不过在同一时间只能作1个方向的传送。个方向的传送。 (3)全双工方式全双工方式:如图如图 (c)所示所示,每个站每个站(A、B)既可同时发送既可同时发送,也可也可同时接收。同时接收。 单片机原理 6.2 串行口的结构串行口的结构 MCS-51单片机内部有单片机内部有1个功能很强的个功能很强的全双全双工工
7、串行口串行口,可同时发送和接收数据。它有可同时发送和接收数据。它有4种工作种工作方式方式,可供不同场合使用。波特率由软件设置可供不同场合使用。波特率由软件设置,通通过片内的定时过片内的定时/计数器产生。接收、发送均可工计数器产生。接收、发送均可工作在查询方式或中断方式作在查询方式或中断方式,使用十分灵活。使用十分灵活。 MCS-51的串行口除了用于数据通信外的串行口除了用于数据通信外,还可还可以非常方便地构成以非常方便地构成1个或多个并行输入个或多个并行输入/输出口输出口,或作串并转换或作串并转换,用来驱动键盘与显示器。用来驱动键盘与显示器。单片机原理 6.2 串行口的结构串行口的结构单片机原
8、理 6.2 串行口的结构串行口的结构1、 串行口数据缓冲器串行口数据缓冲器SBUF SBUF是两个在物理上独立的接收、发送是两个在物理上独立的接收、发送缓冲器缓冲器,可同时发送、接收数据。可同时发送、接收数据。两个缓冲器只两个缓冲器只用一个字节地址用一个字节地址99H,可通过指令对可通过指令对SBUF的读的读写来区别是对接收缓冲器的操作还是对发送缓写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。冲器的操作。CPU写写SBUF,就是修改发送缓冲就是修改发送缓冲器器;读读SBUF,就是读接收缓冲器。串行口对外也就是读接收缓冲器。串行口对外也有两条独立的收发信号线有两条独立的收发信号线RXD(P
9、3.0)和和TXD(P3.1),因此可以同时发送、接收数据因此可以同时发送、接收数据,实现实现全双工传送。全双工传送。单片机原理 6.2 串行口的结构串行口的结构 2、 串行口控制寄存器串行口控制寄存器SCON SCON寄存器用来控制串行口的工作方式和状寄存器用来控制串行口的工作方式和状态态,它可以是位寻址。在复位时所有位被清它可以是位寻址。在复位时所有位被清0,字地址字地址为为98H。SCON的格式为的格式为 SM0 SM1 SM2 REN TB8RB8 TI RI D7 D6 D5 D4 D3 D2 D1 D0 SM0和和SM1:工作方式选择位工作方式选择位,可选择四种工作方式:,可选择四
10、种工作方式: 单片机原理 6.2 串行口的结构串行口的结构 SM2:多机通信控制位多机通信控制位,主要用于方式,主要用于方式2和方式和方式3。当当接收机的接收机的SM2=1时可以利用收到的时可以利用收到的RB8来控制是否激来控制是否激活活RI(RB80时不激活时不激活RI,收到的信息丢弃;,收到的信息丢弃;RB81时收到的数据进入时收到的数据进入SBUF,并激活,并激活RI,进而在中断服务,进而在中断服务中将数据从中将数据从SBUF读走)。读走)。当当SM2=0时,不论收到的时,不论收到的RB8为为0和和1,均可以使收到的数据进入,均可以使收到的数据进入SBUF,并激活,并激活RI(即此时(即
11、此时RB8不具有控制不具有控制RI激活的功能)。通过控激活的功能)。通过控制制SM2,可以实现多机通信。,可以实现多机通信。 在方式在方式0时,时,SM2必须是必须是0。在方式。在方式1时,若时,若SM2=1,则只有接收到有效停止位时,则只有接收到有效停止位时,RI才置才置1。 REN:允许串行接收位允许串行接收位。由软件置。由软件置REN=1,则启动,则启动串行口接收数据;若软件置串行口接收数据;若软件置REN=0,则禁止接收。,则禁止接收。单片机原理 6.2 串行口的结构串行口的结构 TB8:发送的第发送的第9位数据位数据。在方式。在方式2和方式和方式3时时,TB8为所要发送的第为所要发送
12、的第9位数据。在多机通信中位数据。在多机通信中,以以TB8位的位的状态表示主机发送的是地址还是数据状态表示主机发送的是地址还是数据:TB8=0为数据为数据,TB8=1为地址为地址;也可用作数据的奇偶校验位。该位由也可用作数据的奇偶校验位。该位由软件置位或复位。在方式软件置位或复位。在方式0和方式和方式1中,该位未用。中,该位未用。 RB8:接收的第接收的第9位数据位数据。在方式。在方式2或方式或方式3中,是中,是接收到数据的第九位,作为奇偶校验位或地址帧接收到数据的第九位,作为奇偶校验位或地址帧/数据数据帧的标志位。在方式帧的标志位。在方式1时,若时,若SM2=0,则,则RB8是接收是接收到的
13、停止位。到的停止位。单片机原理 6.2 串行口的结构串行口的结构 TI:发送中断标志位发送中断标志位。在方式。在方式0时,当串行发时,当串行发送第送第8位数据结束时,或在其它方式,串行发送停位数据结束时,或在其它方式,串行发送停止位的开始时,由内部硬件使止位的开始时,由内部硬件使TI置置1,向,向CPU发中发中断申请。在中断服务程序中,必须断申请。在中断服务程序中,必须用软件将其清用软件将其清0,取消此中断申请。,取消此中断申请。 RI:接收中断标志位接收中断标志位。在方式。在方式0时,当串行接时,当串行接收第收第8位数据结束时,或在其它方式,串行接收停位数据结束时,或在其它方式,串行接收停止
14、位的中间时,由内部硬件使止位的中间时,由内部硬件使RI置置1,向,向CPU发中发中断申请。也必须在中断服务程序中,用断申请。也必须在中断服务程序中,用软件将其清软件将其清0,取消此中断申请。,取消此中断申请。单片机原理 6.2 串行口的结构串行口的结构 3、 电源控制寄存器电源控制寄存器PCON 特殊功能寄存器特殊功能寄存器PCON中中, 只有一位(最高位)只有一位(最高位)SMOD与串行口的工作有关。与串行口的工作有关。 PCON的地址为的地址为 87H, 不可位寻址不可位寻址, 因此初始化时需要字节传送。因此初始化时需要字节传送。 SMOD(PCON.7) 波特率倍增位。在串行口方式波特率
15、倍增位。在串行口方式1、方式、方式2、方式、方式3时,波特率与时,波特率与SMOD有关,当有关,当SMOD=1时,波特率提高一倍。复位时,时,波特率提高一倍。复位时,SMOD=0。SMOD D7 D6 D5 D4 D3 D2 D1 D0 PCON 87H 单片机原理6.3 串行口的四种工作方式串行口的四种工作方式 (1)方式方式0:串行接口的工作方式串行接口的工作方式0为为同步移位寄存同步移位寄存器方式器方式,其波特率是固定的其波特率是固定的,为为fosc(振荡频率振荡频率)的的1/12。 方式方式0发送发送:数据从数据从RXD引脚串行输出引脚串行输出,TXD引脚输出同步引脚输出同步脉冲。当脉
16、冲。当1个数据写入串行口发送缓冲器时个数据写入串行口发送缓冲器时,串行口将串行口将8位数据位数据以以fosc/12的固定波特率从的固定波特率从RXD引脚输出引脚输出,从低位到高位。发送从低位到高位。发送完后置中断标志完后置中断标志TI为为1,呈中断请求状态呈中断请求状态,在再次发送数据之前在再次发送数据之前,必须用软件将必须用软件将TI清清0。D0D0 D1 D1 D2 D2 D3 D3 D4 D4 D5 D5 D6 D6 D7 D7写入SBUF写入SBUFRXD(数据)RXD(数据)TXD(移位脉冲)TXD(移位脉冲)TI(中断标志)TI(中断标志)单片机原理6.3 串行口的四种工作方式串行口的四种工作方式 方式方式0接收接收:在满足在满足REN=1和和RI=0的条件下的条件下,串行串行口处于方式口处于方式0输入。此时输入。此时,RXD为数据输入端为数据输入端,TXD为为同步信号输出端同步信号输出端,接收器也以接收器也以fosc/12的波特率采样的波特率采样RXD引脚输入的数据信息。当接收器接收完引脚输入的数据信息。当接收器接收完8位数据位数据后,置中断标志后,置中断标志RI=1为请