Www jpk tgc edu cn dpjyl com
This presentation is the property of its rightful owner.
Sponsored Links
1 / 15

jpk.tgc/ dpjyl PowerPoint PPT Presentation


  • 91 Views
  • Uploaded on
  • Presentation posted in: General

www. jpk.tgc.edu.cn/ dpjyl .com. 第六章. 80C51 的串行接口. 第六章 80C51 的串行接口. 第二十四讲 单片机的串行接口. 一、串行通信概述 1 、什么叫串行通信? 并行、串行举生活中的例子(排横队行走,排纵队行走)说明; 引出并行通信,串行通信的概念。. P00 P01 P02 P03 单片机 RXD. 外设 1. 外设 2. TXD. 2 、同步通信、异步通信

Download Presentation

jpk.tgc/ dpjyl

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Www jpk tgc edu cn dpjyl com

www.jpk.tgc.edu.cn/dpjyl.com

第六章

80C51的串行接口


Jpk tgc dpjyl

第六章 80C51的串行接口

第二十四讲 单片机的串行接口

一、串行通信概述

1、什么叫串行通信?

并行、串行举生活中的例子(排横队行走,排纵队行走)说明;

引出并行通信,串行通信的概念。

P00

P01

P02

P03

单片机

RXD

外设1

外设2

TXD


Jpk tgc dpjyl

2、同步通信、异步通信

提问:数字电路中移位寄存器是怎样进行移位的?

同步——发送设备时钟等于接收设备时钟。

同步字符1 同步字符2 数据1 数据2 ···数据n 校验字符 校验字符

异步——发送时钟不一定等于接收时钟。

空闲位 起始位 5 ~ 8位数据 奇偶校验位 停止位 空闲位


Jpk tgc dpjyl

3、串行通信方向

A B

发 单工 收

A B

发 半双工 发

收 收

A 全双工 B

发 收

收 发


Jpk tgc dpjyl

  • 4、波特率

  • 即串行通信速率。 b/s 、 bps

  • 举例、设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为

  • 240个字符。求波特率。

  • 解:

  • (1+8+1)×240 = 2400 b/s = 2400波特。

  • 5、串行通信接口

  • 发送: 展示投影胶片 CPU

  • D7 D6 D5 D4 D3 D2 D1 D0 发送数据寄存器

  • SBUF(99H)

  • 1 D7 D6 D5 D4 D3 D2 D1 D0 0 发送数据

  • 发送时钟


Jpk tgc dpjyl

接收时钟

0 D0 D1 D2 D3 D4 D5 D6 D7 1 接收数据

D0 D1 D2 D3 D4 D5 D6 D7 接收数据寄存器

SBUF(99H)

CPU


Jpk tgc dpjyl

  • 二、80C51单片机机串行接口

  • 单片机内有:通用异步接收/发送器 UART

  • 全双工,4种工作方式,波特率可编程设置,可中断。

  • 1、串口的组成

  • 从编程角度讲来看主要由以下寄存器组成。

  • PCON SMOD

  • SCON SM0 SM1 SM2 REN TB8 RB8 TI RI

  • SBUF D7 D6 D5 D4 D3 D2 D1 D0

SBUF发

SBUF收


Jpk tgc dpjyl

  • SM0、SM1:工作方式选择位(后面再讲)

  • SM2:多机通信控制位,常与RB8配合,决定是否激活RI

  • REN:允许接收

  • TB8:发送的第九位数

  • RB8:接收的第九位数

  • TI :中断标志

  • RI

  • SMOD:波特系数选择位,0 —— 20 = 1

  • 1 —— 21 = 2


Jpk tgc dpjyl

  • 2、串行口的工作方式

  • (1)方式0:同步移位寄存器方式,波特率固定为fosc / 12

  • RXD —— 接收发送数据

  • TXD —— 产生同步移位脉冲

  • 接收/发送完,置位RI / TI ,(要求SM2 = 0)

  • 方式0 D7 D6 D5 D4 D3 D2 D1 D0 发送

  • D0 D1 D2 D3 D4 D5 D6 D7 接收

  • 无起始位,无停止位


Jpk tgc dpjyl

  • (2)方式1:8位UART,波特率为(2SMOD×T1的溢出率)/ 32

  • 停止位 D7 D6 D5 D4 D3 D2 D1 D0 起始位 发送位

  • 起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位 接收位

  • 送RB8位

  • 1帧信息,10位。

  • 波特率可变: 2SMOD / 32 ×(T1的溢出率)

  • 发送完置位TI。

  • 接收完数据置位RI。

  • 置位RI是有条件的。即:

  • REN = 1,RI = 0 且SM2 = 0或SM2 = 1但是接收到的停止位为1。

  • 此时,数据装载SBUF,停止位进入RB8,RI置1。


Jpk tgc dpjyl

  • (3)方式2、方式3 :9位UART,多机通信。

  • 停止位 TB8 D7 D6 D5 D4 D3 D2 D1 D0 起始位 发送

  • 起始位 D0 D1 D2 D3 D4 D5 D6 D7 TB8 停止位 接收

  • 送RB8

  • 方式2波特率:(固定)2SMOD / 64 × fosc

  • 方式3波特率: 2SMOD / 32 ×(T1溢出率)

  • 发送完数据置位TI。

  • 接收到有效数据完毕,置位RI。

  • 有效数据条件:REN = 1,RI = 0 且SM2 = 0或接收到第9位数据为1。

  • 此时,数据装载SBUF,第9位数据(TB8) RB8,RI置1。


Jpk tgc dpjyl

  • 3、波特率的设置

  • 方式0、方式2固定。

  • 方式1,方式3可变。波特率 = 2SMOD / 32 ×(T1的溢出率)

  • T1溢出率 = 单位时间内溢出次数 = 1 /(T1的定时时间)

  • 而T1的定时时间t就是T1溢出一次所用的时间。此情况下,一般设T1工作在模式2(8位自动重装初值)。

  • N = 28- t / T, t = (28-N)T =(28-N)×12 / fosc

  • 所以,T1溢出率 = 1/t = fosc / 12(28-N),

  • 故, 波特率 = 2SMOD / 32 × fosc / 12(256-N)。

  • 若已知波特率,则可求出T1的计数初值:

  • y = 256-2SMOD×fosc / (波特率×32×12)


Jpk tgc dpjyl

  • 巩固练习:

  • 例、若fosc = 6MHz,波特率为2400波特,设SMOD = 1,则定时/计数器T1的计数初值为多少?并进行初始化编程。

  • 解:y = 256-2SMOD×fosc / (2400×32×12)= 242.98≈243 = F3H

  • 同理,fosc = 11.0592MHz,波特率为2400,设SMOD = 0,则

  • y = F4H

  • 初始化编程:

  • MOV TMOD,#20H

  • MOV PCON,#80H

  • MOV TH1,#0F3H

  • MOV TL1,#0F3H

  • SETB TR1

  • MOV SCON,#50H


Jpk tgc dpjyl

  • 小结:

  • 1、什么叫串行通信?

  • 2、UART叫什么?(通用异步接收/发送器)

  • 3、单工、半双工、全双工?

  • 4、串口工作用到哪些寄存器?(PCON、SCON、SBUF)

  • 5、串口有几种工作方式?

  • 6、波特率如何设置?(T1的计数初值如何确定)


Jpk tgc dpjyl

Thank You !


  • Login