单片机第七章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 而当RCLK和TCLK都为零时,采用T1作为串行口接 收和发送的波特率发生器
TxD发送数据 RxD接收数据 一帧信息
– 10位 – 低位在前
方式1—发送
方式1—接收
方式1——时序
方式2、3—9位UART
TXD(P3.l)引脚发送数据 RXD(P3.0)引脚接收数据 一帧信息为11位
– 1位起始位(0)、8位数据位(低位在前) 、1位可编 程位和1位停止位(l)
– 发送时可编程位TB8可设置为1或0,接收时可编程 位进入SCON寄存器的RB8位
波特率
– 方式2的波特率是固定的,为振荡器频率的1/32或 1/64
– 方式3的波特率则由T1和T2的溢出决定,可用程序 设定
方式2
PCON、SBUF
电源控制寄存器PCON
– 仅有几位有定义 – 其中最高位SMOD与串行口控制有关
• 当SMOD=1时,使波特率加倍 • 复位后,SMOD=0
– 其它位与掉电方式有关 – 地址为87H,只能字节寻址
串行数据寄存器SBUF
– 在物理上是隔离的两个8位寄存器
• 发送数据寄存器 • 接收数据寄存器
– 但是它们共用一个地址99H
方式0—同步移位寄存器
特点
– 波特率固定
• fosc/12
– RxD输入或输出 – TxD输出同步移位脉冲 – 8位数据
• 低位在前
方式0
方式0——时序
方式1—8位UART
波特率
– 数据传输波特率由定时器/计数器 T1和T2的溢出率 决定,可用程序设定
– 当T2CON寄存器中的RCLK和TCLK置位时,采用 T2作为串行口接收和发送的波特率发生器
• UART • 同步移位寄存器
结构
串行口的内部包含
SBUF
– 接收缓冲器SBUF和发送缓冲器SBUF – 两个寄存器,一个地址
SCON 引脚
– 双缓冲
控制逻辑
– 接受来自波特率发生器的时钟信号 – 控制串/并变换(入) – 控制并/串变换(出) – 控制串行中断(RI和TI)
串行口控制
– 若从机的地址与主机点名的地址相同,该从机将本机的SM2清 0,继续接收主机发来的命令或数据,响应中断
波特率发生器
UART方式时使用 结构
波特率计算
方式0
– 固定:fosc / 12
方式2
– 由 fosc 与 SMOD 确定
波特率计算
方式1、3
– 由 T1或T2的溢出率 与 SMOD 确定 – 用T1
– 单工(simplex) – 半双工( half-duplex) – 全双工(full-duplex)
异步、同步
– 异步(起止同步) – 同步
波特率
– 每秒传送??的数目 – 位周期
RS-232C
80C51串行口结构
技术问题
– 数据传送 – 数据转换
UART 80C51中的串行口
– 全双工 – 异步串行通信 – 它可作
例
– 一般通信 – 多机通信
实际要考虑的问题
比如
– 通信规约(规程、协议)
• 命令、数据格式 • 顺序 • 差错 • 超时
– 接口(物理层) – 如果与微机通信
• 通信软件开发等
实验——串行口实验
还是0,都能将数据装入SBUF,并且发中断
多处理机通信方式——过程
系统初始化时,将所有从机中的SM2位均设置为1,并 处于允许串行口中断接收状态
主机欲与某从机通信,先向所有从机发出所选从机的 地址,从机地址符合后,接着才发送命令或数据
– 在主机发地址时,置第9位数据(RB8)为1,表示主机发送的 是地址帧
方式2和3的编程和应用
方式2接收/发送的一帧信息是11位:第0位起始 位(0);第1~8位数据位;第9位是程控位, 可由用户置TB8决定;第10位是停止位
一般说来,用定时器方式2来制定波特率是比 较理想的,它不需要用中断服务程序来置数, 并且算出的波特率也比较准确。在使用的波特 率不太低的情况下,宜于用定时器1的方式2来 制定波特率
例
– 试编写双机通信程序。甲、乙双机均为串行 口方式1,并以定时器T1的方式2为波特率发 生器,波特率为2400。
– 通过串行口发送带奇偶校验位的数据块。 ASCII码由7位组成,因此其最高位可作为奇 偶校验位用。数据块通过串行口发送和接收, 采用8位异步通信,波特率为1200,已知fosc =11.0592MHz
状态控制寄存器SCON
SM0、SM1——工作方式选择
SCON
SM0、SM1 SM2
– 允许方式2、3中的多机处理通信位
REN—允许接收 TB8—transmitted bit 8 RB8—received bit 8 RI—transmit interrupt flag TI—receive interrupt flag
• T1方式0 • T1方式1 • T1方式2
– 用T2
方式0的编程和应用
同步移位寄存器 用于
– 扩展并行I/O口 –如
Байду номын сангаас• 接 74LS164 • 接 74LS165
–例
• 使用74LS164的并行输出瑞接8只发光二极管, 利用它的串入并出功能,把发光二极管从左向右 依次点亮,并不断循环
方式1的编程和应用
– 当主机呼叫某从机联络正确后,主机发送命令或数据帧时, 将第9位数据(RB8)清0。
各从机由于SM2置1,将响应主机发来的第9位数据 (RB8)为1的地址信息。从机响应中断后
– 若从机的地址与主机点名的地址不相同,则该从机将继续维 持SM2为l,从而拒绝接收主机后面发来的命令或数据信息, 等待主机的下一次点名
方式2——时序
方式3——时序
多处理机通信方式——原理
SCON中:SM2位 当串行口以方式2或方式3接收时
– 若SM2=1,只有当接收到的第9位数据 (RB8)为1时,才将数据送入接收缓冲器 SBUF,并使RI置1,申请中断
– 否则数据将丢失 – 若SM2=0,则无论第9位数据(RB8)是1
单片微型计算机原理与接口技术
之
80C51单片微机的串行接口 原理及应用
王贤勇
通信
通信vs.通讯 为什么用 怎么用 构成一个分布式采集、控制系统 上层由PC机进行集中管理
概述
并行传送vs.串行传送
– 并行
• 概念 • 特点 • 缺点
– 串行
• 特点 • 优点 • 应用
术语与指标
方向与同时性
TxD发送数据 RxD接收数据 一帧信息
– 10位 – 低位在前
方式1—发送
方式1—接收
方式1——时序
方式2、3—9位UART
TXD(P3.l)引脚发送数据 RXD(P3.0)引脚接收数据 一帧信息为11位
– 1位起始位(0)、8位数据位(低位在前) 、1位可编 程位和1位停止位(l)
– 发送时可编程位TB8可设置为1或0,接收时可编程 位进入SCON寄存器的RB8位
波特率
– 方式2的波特率是固定的,为振荡器频率的1/32或 1/64
– 方式3的波特率则由T1和T2的溢出决定,可用程序 设定
方式2
PCON、SBUF
电源控制寄存器PCON
– 仅有几位有定义 – 其中最高位SMOD与串行口控制有关
• 当SMOD=1时,使波特率加倍 • 复位后,SMOD=0
– 其它位与掉电方式有关 – 地址为87H,只能字节寻址
串行数据寄存器SBUF
– 在物理上是隔离的两个8位寄存器
• 发送数据寄存器 • 接收数据寄存器
– 但是它们共用一个地址99H
方式0—同步移位寄存器
特点
– 波特率固定
• fosc/12
– RxD输入或输出 – TxD输出同步移位脉冲 – 8位数据
• 低位在前
方式0
方式0——时序
方式1—8位UART
波特率
– 数据传输波特率由定时器/计数器 T1和T2的溢出率 决定,可用程序设定
– 当T2CON寄存器中的RCLK和TCLK置位时,采用 T2作为串行口接收和发送的波特率发生器
• UART • 同步移位寄存器
结构
串行口的内部包含
SBUF
– 接收缓冲器SBUF和发送缓冲器SBUF – 两个寄存器,一个地址
SCON 引脚
– 双缓冲
控制逻辑
– 接受来自波特率发生器的时钟信号 – 控制串/并变换(入) – 控制并/串变换(出) – 控制串行中断(RI和TI)
串行口控制
– 若从机的地址与主机点名的地址相同,该从机将本机的SM2清 0,继续接收主机发来的命令或数据,响应中断
波特率发生器
UART方式时使用 结构
波特率计算
方式0
– 固定:fosc / 12
方式2
– 由 fosc 与 SMOD 确定
波特率计算
方式1、3
– 由 T1或T2的溢出率 与 SMOD 确定 – 用T1
– 单工(simplex) – 半双工( half-duplex) – 全双工(full-duplex)
异步、同步
– 异步(起止同步) – 同步
波特率
– 每秒传送??的数目 – 位周期
RS-232C
80C51串行口结构
技术问题
– 数据传送 – 数据转换
UART 80C51中的串行口
– 全双工 – 异步串行通信 – 它可作
例
– 一般通信 – 多机通信
实际要考虑的问题
比如
– 通信规约(规程、协议)
• 命令、数据格式 • 顺序 • 差错 • 超时
– 接口(物理层) – 如果与微机通信
• 通信软件开发等
实验——串行口实验
还是0,都能将数据装入SBUF,并且发中断
多处理机通信方式——过程
系统初始化时,将所有从机中的SM2位均设置为1,并 处于允许串行口中断接收状态
主机欲与某从机通信,先向所有从机发出所选从机的 地址,从机地址符合后,接着才发送命令或数据
– 在主机发地址时,置第9位数据(RB8)为1,表示主机发送的 是地址帧
方式2和3的编程和应用
方式2接收/发送的一帧信息是11位:第0位起始 位(0);第1~8位数据位;第9位是程控位, 可由用户置TB8决定;第10位是停止位
一般说来,用定时器方式2来制定波特率是比 较理想的,它不需要用中断服务程序来置数, 并且算出的波特率也比较准确。在使用的波特 率不太低的情况下,宜于用定时器1的方式2来 制定波特率
例
– 试编写双机通信程序。甲、乙双机均为串行 口方式1,并以定时器T1的方式2为波特率发 生器,波特率为2400。
– 通过串行口发送带奇偶校验位的数据块。 ASCII码由7位组成,因此其最高位可作为奇 偶校验位用。数据块通过串行口发送和接收, 采用8位异步通信,波特率为1200,已知fosc =11.0592MHz
状态控制寄存器SCON
SM0、SM1——工作方式选择
SCON
SM0、SM1 SM2
– 允许方式2、3中的多机处理通信位
REN—允许接收 TB8—transmitted bit 8 RB8—received bit 8 RI—transmit interrupt flag TI—receive interrupt flag
• T1方式0 • T1方式1 • T1方式2
– 用T2
方式0的编程和应用
同步移位寄存器 用于
– 扩展并行I/O口 –如
Байду номын сангаас• 接 74LS164 • 接 74LS165
–例
• 使用74LS164的并行输出瑞接8只发光二极管, 利用它的串入并出功能,把发光二极管从左向右 依次点亮,并不断循环
方式1的编程和应用
– 当主机呼叫某从机联络正确后,主机发送命令或数据帧时, 将第9位数据(RB8)清0。
各从机由于SM2置1,将响应主机发来的第9位数据 (RB8)为1的地址信息。从机响应中断后
– 若从机的地址与主机点名的地址不相同,则该从机将继续维 持SM2为l,从而拒绝接收主机后面发来的命令或数据信息, 等待主机的下一次点名
方式2——时序
方式3——时序
多处理机通信方式——原理
SCON中:SM2位 当串行口以方式2或方式3接收时
– 若SM2=1,只有当接收到的第9位数据 (RB8)为1时,才将数据送入接收缓冲器 SBUF,并使RI置1,申请中断
– 否则数据将丢失 – 若SM2=0,则无论第9位数据(RB8)是1
单片微型计算机原理与接口技术
之
80C51单片微机的串行接口 原理及应用
王贤勇
通信
通信vs.通讯 为什么用 怎么用 构成一个分布式采集、控制系统 上层由PC机进行集中管理
概述
并行传送vs.串行传送
– 并行
• 概念 • 特点 • 缺点
– 串行
• 特点 • 优点 • 应用
术语与指标
方向与同时性