2-51单片机功能模块与应用.pdf_第1页
2-51单片机功能模块与应用.pdf_第2页
2-51单片机功能模块与应用.pdf_第3页
2-51单片机功能模块与应用.pdf_第4页
2-51单片机功能模块与应用.pdf_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章 第二章 单片机功能模块与应用 单片机功能模块与应用 浙江大学光电系 浙江大学光电系 王晓萍王晓萍 内容提要 内容提要 2 1 中断系统中断系统 2 1 1 中断系统概述中断系统概述 2 1 2 MCS 51中断系统 中断系统 2 2 定时器定时器 计数器计数器 2 2 1 定时定时 计数器概述计数器概述 2 2 2 MCS 51定时定时 计数器 计数器 2 3 串行接口串行接口 2 3 1 串行通讯方式串行通讯方式 2 3 2 MCS 51串行口 串行口 中断系统 中断系统 计数器计数器 2 1 1 中断系统概述中断系统概述 1 中断的概念 中断的概念 中断是指中断是指CPU暂停当前工作暂停当前工作 而转去处理紧急事件 而转去处理紧急事件 再回到原来被中断的地方再回到原来被中断的地方 继续原来的工作 继续原来的工作 先进的中断系统能提高实时处理外界异步事件的能力 先进的中断系统能提高实时处理外界异步事件的能力 中断是通过硬件来中断是通过硬件来改变改变CPU程序运行方向 程序运行方向 关关 也和软件有关也和软件有关 计算机计算机 或单片机或单片机 在执行程序的过程中 在执行程序的过程中 原因原因 需要尽快中止当前程序的执行 需要尽快中止当前程序的执行 待处理结束后待处理结束后 再回来继续执行被中止了的原程序 再回来继续执行被中止了的原程序 行过程中由于外界的原因而被中间打断的情况 行过程中由于外界的原因而被中间打断的情况 而转去处理紧急事件而转去处理紧急事件 处理完毕后处理完毕后 继续原来的工作继续原来的工作 先进的中断系统能提高实时处理外界异步事件的能力先进的中断系统能提高实时处理外界异步事件的能力 程序运行方向程序运行方向的一种技术的一种技术 既和硬件有 既和硬件有 在执行程序的过程中在执行程序的过程中 由于内部或外部的某种 由于内部或外部的某种 需要尽快中止当前程序的执行需要尽快中止当前程序的执行 转去执行另外的处理程序转去执行另外的处理程序 再回来继续执行被中止了的原程序再回来继续执行被中止了的原程序 这种这种程序在执 程序在执 行过程中由于外界的原因而被中间打断的情况行过程中由于外界的原因而被中间打断的情况称为称为 中断 中断 中断服务程序中断服务程序 或或 中断处理程序 中断处理程序 主程序主程序 原来运行的程序原来运行的程序 断点断点 主程序被断开的位置主程序被断开的位置 中断源中断源 引起中断的原因或能发出中断申请的来源 引起中断的原因或能发出中断申请的来源 中断请求中断请求 要求服务的请求要求服务的请求 中断服务与调用子程序的异同中断服务与调用子程序的异同 子程序子程序调用在程序中是事先安排好的 调用在程序中是事先安排好的 却无法确知却无法确知 中断中断的发生是由外部因素决定的 的发生是由外部因素决定的 而调用中断服务程序的过程是由硬件自动完成的 而调用中断服务程序的过程是由硬件自动完成的 都是暂停正在执行的程序都是暂停正在执行的程序 转去执行其他处理程序 转去执行其他处理程序 址址 自动保护自动保护 和现场和现场 用软件保护用软件保护 2 1 1 中断系统概述 中断系统概述 中断处理程序中断处理程序 中断之后所执行的处理程序 中断之后所执行的处理程序 地址地址 引起中断的原因或能发出中断申请的来源引起中断的原因或能发出中断申请的来源 调用在程序中是事先安排好的调用在程序中是事先安排好的 而何时调用中断服务程序事先 而何时调用中断服务程序事先 的发生是由外部因素决定的的发生是由外部因素决定的 程序中无法事先安排调用指令 程序中无法事先安排调用指令 因 因 而调用中断服务程序的过程是由硬件自动完成的而调用中断服务程序的过程是由硬件自动完成的 转去执行其他处理程序转去执行其他处理程序 需要保护断点地 需要保护断点地 用软件保护用软件保护 等等 2 中断源中断源 能引起中断的外部或内部事件 能引起中断的外部或内部事件 外部设备外部设备中断源 中断源 单片机的输入 单片机的输入 按键等按键等 可通过接口电路向可通过接口电路向CPU 故障故障源源 如掉电故障 如掉电故障 硬件故障 硬件故障 请求中断请求中断 使得 使得CPU能够以中断方式及时处理发生的故障 能够以中断方式及时处理发生的故障 控制对象控制对象 单片机的控制对象 单片机的控制对象 下限时下限时 继电器 继电器 开关动作时 开关动作时 定时器定时器 计数器计数器 定时时间到或计数个数到请求中断定时时间到或计数个数到请求中断 2 1 1 中断系统概述 中断系统概述 能引起中断的外部或内部事件能引起中断的外部或内部事件 单片机的输入单片机的输入 输出设备 如输出设备 如A D 打印机打印机 CPU申请中断 申请中断 硬件故障硬件故障 运算错误 运算错误 程序运行故障等 程序运行故障等 能够以中断方式及时处理发生的故障能够以中断方式及时处理发生的故障 单片机的控制对象单片机的控制对象 如电压 温度等检测量超过上 如电压 温度等检测量超过上 开关动作时开关动作时 向向CPU请求中断 请求中断 定时时间到或计数个数到请求中断定时时间到或计数个数到请求中断 3 中断系统的功能 中断系统的功能 中断的允许和禁止中断的允许和禁止 即关中断和 即关中断和 开中断开中断 根据需要能够用指令控 根据需要能够用指令控 制中断的开放和关闭制中断的开放和关闭 只有在开 只有在开 中断情况下中断情况下 CPU才能响应中 才能响应中 断源的请求断源的请求 中断响应和返回中断响应和返回 当有中断请求 当有中断请求 时时 CPU能根据当时情况作出 能根据当时情况作出 响应或不响应响应或不响应 如果响应如果响应 则则 CPU就中止当前的程序就中止当前的程序 去执 去执 行中断服务程序行中断服务程序 处理完毕后 处理完毕后 自动返回执行原程序自动返回执行原程序 2 1 1 中断系统概述 中断系统概述 中断响应和返回过程中断响应和返回过程 中断优先级中断优先级 当有多个中断源 当有多个中断源 同时请求中断时同时请求中断时 CPU会根据 会根据 各中断源的优先级别各中断源的优先级别 首先响 首先响 应优先级高的中断请求应优先级高的中断请求 实现 实现 中断优先级的控制中断优先级的控制 中断嵌套中断嵌套 当当CPU正在执行低 正在执行低 级的中断服务程序时级的中断服务程序时 有高级 有高级 中断源申请中断中断源申请中断 则能够停下 则能够停下 低级中断源的服务程序转去执 低级中断源的服务程序转去执 行高级中断源的服务程序行高级中断源的服务程序 实 实 现中断嵌套现中断嵌套 并能逐级正确返 并能逐级正确返 回回 断点 2 1 1 中断系统概述中断系统概述 主 程 序 断点 断点 低 级 中 断 服 务 子 程 序 高 级 中 断 服 务 子 程 序 继 续 执 行 主 程 序 RETI RETI 中断嵌套过程中断嵌套过程 1 MCS 51中断系统配置 中断系统配置 中断中断源源 5个 个 外部中断外部中断 INT0 P3 2 INT1 P3 内部中断内部中断 定时计数器定时计数器T0 T1溢出中断 溢出中断 串行中断串行中断 串行口发送或接收中断请求 串行口发送或接收中断请求 优先级优先级 2个 个 中断服务程序允许中断服务程序允许2级级嵌套嵌套 中断入口中断入口 5个中断源对应的中断入口地址为个中断源对应的中断入口地址为 中断源 中断源 外部中断外部中断INT0 T0溢出中断 溢出中断 外部中断外部中断INT1 T1溢出中断 溢出中断 串行口中断串行口中断 2 1 2 MCS 51中断系统中断系统 3 3 溢出中断溢出中断 串行口发送或接收中断请求串行口发送或接收中断请求 入口地址入口地址 0003 000B 0013 001B 0023 中断系统中断系统 2 1 2 MCS 51中断系统中断系统 2 MCS 51中断系统结构 中断系统结构 中断系统中断系统 3 MCS 51的中断控制的中断控制 MCS 51中断相关的中断相关的SFR共有共有4 A 中断允许寄存器中断允许寄存器 IE 地址地址 A EA为中断总控位为中断总控位 EA 0 禁止一切中断 禁止一切中断 断源的允许或禁止断源的允许或禁止 由各自的允许位确定由各自的允许位确定 EA ET2 ES ET1 B 中断优先级寄存器中断优先级寄存器 IP 地址 地址 1 为高优先级别为高优先级别 PT2 PS PT1 2 1 2 MCS 51中断系统中断系统 4个 均可位寻址 个 均可位寻址 A8H 禁止一切中断禁止一切中断 EA 1 则则每个中 每个中 由各自的允许位确定由各自的允许位确定 ET1 EX1 ET0 EX0 地址地址 B8H 0 为低优先级别 为低优先级别 PT1 PX1 PT0 PX0 中断系统中断系统 C 定时控制定时控制寄存器寄存器TCON IT0 1 外部中断触发方式控制位外部中断触发方式控制位 IE0 1 外部中断请求标志位外部中断请求标志位 TF0 1 定时器溢出标志位定时器溢出标志位 D 串口控制寄存器串口控制寄存器SCON TI为发送中断标志为发送中断标志 RI 为接收中断标志为接收中断标志 TF1 TF0 IE1 2 1 2 MCS 51中断系统 中断系统 地址地址 88H 外部中断触发方式控制位外部中断触发方式控制位 外部中断请求标志位外部中断请求标志位 地址地址 98H 为接收中断标志为接收中断标志 IE1 IT1 IE0 IT0 TI RI 中断系统中断系统 4 单片机单片机响应中断的响应中断的条件条件 1 中断源有请求中断源有请求 相应的中断标志相应的中断标志 2 CPU允许所有中断允许所有中断 中断允许总控位中断允许总控位 3 中断允许寄存器中断允许寄存器IE中中 相应中断源的中断允许位置 相应中断源的中断允许位置 则则CPU对所有的中断请求对所有的中断请求 进行优先级排队进行优先级排队 4 无同级或高级中断正在服务无同级或高级中断正在服务 5 现行指令已执行完毕现行指令已执行完毕 6 若正在运行的指令为若正在运行的指令为 RETI 一条指令也执行完毕一条指令也执行完毕 这样这样 单片机便在下一个机器周期响应中断 单片机便在下一个机器周期响应中断 否则将丢弃中断查询结果否则将丢弃中断查询结果 2 1 2 MCS 51中断系统 中断系统 相应的中断标志相应的中断标志 IE0 1 TF0 1 RI TI 置置1 中断允许总控位中断允许总控位EA 1 相应中断源的中断允许位置相应中断源的中断允许位置1 进行优先级排队进行优先级排队 如果满足如果满足 修改修改IP IE的指令的指令 则该则该指令的下 指令的下 单片机便在下一个机器周期响应中断单片机便在下一个机器周期响应中断 否则将丢弃中断查询结果否则将丢弃中断查询结果 中断系统中断系统 5 中断中断响应过程响应过程 1 设置相应的中断优先级触发器设置相应的中断优先级触发器 2 自动保护断点自动保护断点 即将现行即将现行PC内容 内容 根据中断源把相应的中断程序入口根据中断源把相应的中断程序入口 3 执行中断服务程序执行中断服务程序 直至遇到直至遇到 4 RETI指令清除指令清除 优先级状态优先级状态 TI和和RI除外除外 5 从堆栈中弹出断点地址给从堆栈中弹出断点地址给PC 主程序主程序 2 1 2 MCS 51中断系统 中断系统 设置相应的中断优先级触发器 设置相应的中断优先级触发器 内容内容 即断点地址即断点地址 压 压 入入堆栈堆栈 并 并 根据中断源把相应的中断程序入口根据中断源把相应的中断程序入口地址地址 装入装入PC中中 直至遇到直至遇到RETI指令为止指令为止 触发器触发器 自动清除自动清除中断 中断 标志标志 使使CPU回到中断处回到中断处 继续执行 继续执行 中断系统中断系统 6 中断处理 中断处理 中断处理程序也叫中断服务程序 中断处理程序也叫中断服务程序 保护保护现场现场 通常保护中断程序中用到的寄存器等 通常保护中断程序中用到的寄存器等 与与子程序的现场保护相同子程序的现场保护相同 中断中断程序中对堆栈的进栈和出栈操作要平衡 程序中对堆栈的进栈和出栈操作要平衡 恢复恢复现场 现场 中断中断返回 返回 中断处理完成后 必须由中断处理完成后 必须由RETI 恢复恢复断点 断点 将栈顶保存的 将栈顶保存的 恢复恢复优先级触发器 优先级触发器 允许同级或低级中断允许同级或低级中断 2 1 2 MCS 51中断系统 中断系统 中断处理程序也叫中断服务程序中断处理程序也叫中断服务程序 编写时需注意 编写时需注意 通常保护中断程序中用到的寄存器等通常保护中断程序中用到的寄存器等 有三种保护方法 有三种保护方法 程序中对堆栈的进栈和出栈操作要平衡程序中对堆栈的进栈和出栈操作要平衡 RETI指令返回 指令返回 将栈顶保存的将栈顶保存的2字节地址弹出到字节地址弹出到PC 允许同级或低级中断允许同级或低级中断发生 发生 中断系统中断系统 源程序源程序 ORG 0000H LJMP MAIN ORG 0003H LJMP INT0SUB ORG 0030H MAIN CLR P1 0 初始点亮 初始点亮 SETB IT0 设置 设置 SETB EA CPU SETB EX0 INT0 SJMP ORG 1000H INT0SUB PUSH PSW 保护现场 保护现场 CPL P1 0 改变改变LED POP PSW 恢复现场 恢复现场 RETI 2 1 2 MCS 51中断系统 中断系统 初始点亮初始点亮LED 设置设置INT0下降沿触发下降沿触发 CPU中断中断允许允许 INT0中断允许 中断允许 保护现场保护现场 LED显示状态 显示状态 恢复现场 恢复现场 中断系统 中断系统 中断响应过程中断响应过程 2 2 1 定时器定时器 计数器概述 计数器概述 定时定时 计数器的作用计数器的作用 定时定时 硬件定时硬件定时 不占用不占用CPU 如定时测量温度信号如定时测量温度信号 定时输出电机控制信号等 定时输出电机控制信号等 耗耗CPU资源即占用资源即占用CPU时间时间 计数计数 有些测控系统需要根据外部事件的计数来触发或改变控制 有些测控系统需要根据外部事件的计数来触发或改变控制 策略策略 如生产流水线产品的计数 如生产流水线产品的计数 打包信号打包信号 由机器进行自动打包 由机器进行自动打包 定时定时 计数器的典型应用计数器的典型应用 定时器定时器 时钟秒表时钟秒表 红绿灯控制 红绿灯控制 计数器计数器 选票统计选票统计 工件计数 工件计数 计数器概述计数器概述 CPU资源资源 实现周期性的测量与控制实现周期性的测量与控制 定时输出电机控制信号等定时输出电机控制信号等 软件延时要消 软件延时要消 有些测控系统需要根据外部事件的计数来触发或改变控制 有些测控系统需要根据外部事件的计数来触发或改变控制 如生产流水线产品的计数如生产流水线产品的计数 当计数到设定值时当计数到设定值时 要求发出 要求发出 由机器进行自动打包由机器进行自动打包 红绿灯控制红绿灯控制 定时检测等 定时检测等 工件计数工件计数 脉冲测量等脉冲测量等 可编程定时可编程定时 计数器计数器 Programmable 单片机内部的定时单片机内部的定时 计数器均是可编程 计数器均是可编程 工作方式和延时时间 包括 工作方式和延时时间 包括 1 确定工作模式是定时还是计数确定工作模式是定时还是计数 2 预置定时或计数初值 预置定时或计数初值 3 当定时时间到或计数溢出时当定时时间到或计数溢出时 4 启动定时启动定时 计数器工作 计数器工作 2 2 1 定时器定时器 计数器概述计数器概述 Programmable Timer Counter 计数器均是可编程计数器均是可编程 即可通过指令来改变其 即可通过指令来改变其 确定工作模式是定时还是计数确定工作模式是定时还是计数 当定时时间到或计数溢出时当定时时间到或计数溢出时 可发中断请求 可发中断请求 计数器概述计数器概述 1 定时器定时器 计数器结构计数器结构 2 2 2 MCS 51定时定时 计数器 计数器 计数器计数器 1 定时器定时器 计数器结构计数器结构 MCS 51有有2个个16位的定时位的定时 计数器 计数器 1 工作方式寄存器工作方式寄存器 TMOD GATE C T M1 M0 GATE 定时定时 计数器计数器T1 高高4位用于设置位用于设置T1模式模式 2 2 2 MCS 51定时定时 计数器 计数器 计数器计数器T0和和T1 相关 相关SFR有有6个个 TMOD 地址 地址 89H GATE C T M1 M0 定时定时 计数器计数器T0 低低4位用于设置位用于设置T0模式模式 计数器计数器 2 定时控制寄存器 定时控制寄存器 TCON TF1 TF0 T1 T0溢出标志位溢出标志位 TR1 TR0 T1 T0启启 停控制位停控制位 TF1 TR1 TF0 TR0 IE1 3 T0的的16位计数值寄存器 位计数值寄存器 4 T1的的16位计数值寄存器位计数值寄存器 2 2 2 MCS 51定时定时 计数器计数器 TCON 地址地址 88H 溢出标志位溢出标志位 反映状态反映状态 停控制位停控制位 可编程可编程 IE1 IT1 IE0 IT0 位计数值寄存器位计数值寄存器 TH0 8CH TL0 8AH 位计数值寄存器位计数值寄存器 TH1 8DH TL1 8BH 计数器计数器 2 定时器定时器 计数器工作模式 计数器工作模式 定时模式和计数模式定时模式和计数模式 1 定时器方式 定时器方式 当设置为定时器工作方式时 当设置为定时器工作方式时 计数信号来自内部 计数信号来自内部 定时计数寄存器做一次 定时计数寄存器做一次 1 运算 运算 振荡脉冲振荡脉冲 故定时器计数脉冲的频率为振荡脉冲的 故定时器计数脉冲的频率为振荡脉冲的 片机的晶振主频为片机的晶振主频为12MHz 周期周期 2 2 2 MCS 51定时定时 计数器 计数器 通过通过C T选择 选择 计数信号来自内部计数信号来自内部 每个机器周期 每个机器周期 运算运算 因每个机器周期相当于 因每个机器周期相当于12个 个 故定时器计数脉冲的频率为振荡脉冲的故定时器计数脉冲的频率为振荡脉冲的12分频分频 若单 若单 周期周期1 12 s 则计数周期为则计数周期为1 s 计数器计数器 2 计数器方式 计数器方式 当设置为计数器工作方式时当设置为计数器工作方式时 计数信号来自外部 计数信号来自外部 计数器每检测到一个下降沿计数器每检测到一个下降沿 就使其内部的定时计数寄存器产生一次 就使其内部的定时计数寄存器产生一次 1 动作动作 检测以机器周期为基准 检测以机器周期为基准 应保持一个机器周期以上应保持一个机器周期以上 因此因此 荡频率的荡频率的1 24 2 2 2 MCS 51定时定时 计数器 计数器 计数信号来自外部计数信号来自外部T0 T1引脚的输入引脚的输入 就使其内部的定时计数寄存器产生一次 就使其内部的定时计数寄存器产生一次 检测以机器周期为基准检测以机器周期为基准 要求跳变的高电平及低电平均 要求跳变的高电平及低电平均 可测量的最高脉冲频率可测量的最高脉冲频率f为单片机振 为单片机振 计数器计数器 3 定时器定时器 计数器工作方式计数器工作方式 T0 T1有有4种工作方式种工作方式 方式 方式0 M1 M0 工作工作方式方式 0 0 方式方式0 0 1 方式方式1 1 0 方式方式2 可自动重装载的可自动重装载的 1 1 方式方式3 T0分为两个独立的分为两个独立的 T1失去控制作通讯速率发生器失去控制作通讯速率发生器 2 2 2 MCS 51定时定时 计数器 计数器 方式方式1工作方式工作方式 0 方式方式1 方式方式2 方式 方式3 功 功 能能 13位计数器位计数器 16位计数器 位计数器 可自动重装载的可自动重装载的8位计数器 位计数器 分为两个独立的分为两个独立的8位计数器 位计数器 失去控制作通讯速率发生器 失去控制作通讯速率发生器 计数器 计数器 方式方式2工作方式工作方式 计算机之间计算机之间 计算机与仪器或两台设备之间的信息交换称 计算机与仪器或两台设备之间的信息交换称 为通讯为通讯 通讯类型通讯类型 并行通讯并行通讯 数据字节的各位同时传送的通讯方式 数据字节的各位同时传送的通讯方式 串行通讯串行通讯 数据字节的各位按顺序逐位传送的通讯方式 数据字节的各位按顺序逐位传送的通讯方式 与并行通讯相比与并行通讯相比 串行通讯的传送效率比较低 串行通讯的传送效率比较低 需需2 2根到根到3 3根传输线根传输线 在远距离通讯时 在远距离通讯时 本低本低 得到了广泛应用 得到了广泛应用 计算机与仪器或两台设备之间的信息交换称 计算机与仪器或两台设备之间的信息交换称 数据字节的各位同时传送的通讯方式数据字节的各位同时传送的通讯方式 数据字节的各位按顺序逐位传送的通讯方式数据字节的各位按顺序逐位传送的通讯方式 串行通讯的传送效率比较低串行通讯的传送效率比较低 但由于只 但由于只 在远距离通讯时在远距离通讯时 可靠性高 可靠性高 硬件成硬件成 2 3 1 串行通讯方式 串行通讯方式 串行通讯方式串行通讯方式 同步通讯同步通讯与与异步通讯异步通讯 1 同步通讯方式同步通讯方式 同步通讯时数据的传送随同步信号的节拍 同步通讯时数据的传送随同步信号的节拍 因此必须有两根线因此必须有两根线 一根是同步时钟 一根是同步时钟 如如 I 2 C SPI等等 2 异步通讯方式异步通讯方式 异步通讯的数据格式以字节为单位 异步通讯的数据格式以字节为单位 自有自己的内部时钟控制传输速率 自有自己的内部时钟控制传输速率 据就可以了据就可以了 无须传送同步信息 无须传送同步信息 如如 UART RS232 RS485 异步通讯异步通讯 同步通讯时数据的传送随同步信号的节拍同步通讯时数据的传送随同步信号的节拍 CLK 进行进行 一根是同步时钟一根是同步时钟 一根是数据一根是数据 异步通讯的数据格式以字节为单位异步通讯的数据格式以字节为单位 发送方与接收方各 发送方与接收方各 自有自己的内部时钟控制传输速率自有自己的内部时钟控制传输速率 通讯时只要传送数 通讯时只要传送数 无须传送同步信息无须传送同步信息 485等等 异步通讯数据传送格式 异步通讯数据传送格式 1 0 1 0 1 同步字符同步字符1 若干字节 若干字节 数据内容 数据内容 同步通讯数据传送格式 同步通讯数据传送格式 起始位 起始位 数据位 数据位 校验位 校验位 1位位 5 8位位 空闲时空闲时 通信线的状态应是高电平通信线的状态应是高电平 2 3 1 串行通讯方式串行通讯方式 1 0 1 1 1 数据内容 数据内容 校验字符校验字符1 若干 若干 字节 字节 校验位 校验位 停止位 停止位 1位位 1 2位位 通信线的状态应是高电平通信线的状态应是高电平 1 数据格式数据格式 一个字符在异步传送中称为一帧数据 一个字符在异步传送中称为一帧数据 分组成分组成 起始位起始位 数据位数据位 奇偶校验位 奇偶校验位 起始位起始位 1位位 0 信号信号 表示一帧数据通讯开始 表示一帧数据通讯开始 数据位数据位 5 8位数据位数据 异步传送规定低位在前 异步传送规定低位在前 奇偶位奇偶位 数据位之后数据位之后 是是1位奇偶校验位 位奇偶校验位 停止位停止位 1或或2位的位的 1 接收端收到停止位时 接收端收到停止位时 同时为接收下一帧数据作好准备同时为接收下一帧数据作好准备 2 通讯协议通讯协议 异步通讯必须遵循以下协议 异步通讯必须遵循以下协议 发送发送 接收双方的通讯速率必须一致 接收双方的通讯速率必须一致 通信双方的数据帧格式必须一致通信双方的数据帧格式必须一致 3 通讯特点通讯特点 异步串行通信异步串行通信 由于在数据帧中插入了用于实现同步的 由于在数据帧中插入了用于实现同步的 起始位和停止位等附加位起始位和停止位等附加位 降低了有效数据位的传送速率降低了有效数据位的传送速率 1 异步通讯格式异步通讯格式 2 3 1 串行通讯方式 串行通讯方式 一个字符在异步传送中称为一帧数据一个字符在异步传送中称为一帧数据 一帧数据由四部 一帧数据由四部 奇偶校验位奇偶校验位 停止位停止位 表示一帧数据通讯开始表示一帧数据通讯开始 异步传送规定低位在前异步传送规定低位在前 高位在后高位在后 位奇偶校验位位奇偶校验位 也可以不采用也可以不采用 接收端收到停止位时接收端收到停止位时 表示一帧数据结束 表示一帧数据结束 异步通讯必须遵循以下协议异步通讯必须遵循以下协议 接收双方的通讯速率必须一致接收双方的通讯速率必须一致 由于在数据帧中插入了用于实现同步的 由于在数据帧中插入了用于实现同步的 降低了有效数据位的传送速率降低了有效数据位的传送速率 2 同步通讯格式 同步通讯格式 数据格式数据格式 数据以数据以 块块 为单位发送 为单位发送 A 同步字符同步字符 最先发送标志数据传送开始的同步字符 最先发送标志数据传送开始的同步字符 节节 B 数据本身数据本身 接着发送数据块接着发送数据块 每个字节一位一位地串行传送 每个字节一位一位地串行传送 C 校验字符校验字符 最后发送的是为了提高数据传送可靠性的校验字符 最后发送的是为了提高数据传送可靠性的校验字符 为为1至若干字节至若干字节 通讯连线通讯连线 所谓同步通讯指的是位传送的同步 所谓同步通讯指的是位传送的同步 同步时钟同步时钟 通常是通常是2线通信线线通信线 A SDA 数据信号线数据信号线 B SCL 同步时钟线同步时钟线 通讯特点通讯特点 由于同步通讯的数据格式以数据块为单位 由于同步通讯的数据格式以数据块为单位 速度要比以字节为单位的异步通讯高 速度要比以字节为单位的异步通讯高 应的检测手段应的检测手段 这种方式对硬件要求较高这种方式对硬件要求较高 2 3 1 串行通讯方式 串行通讯方式 为单位发送为单位发送 一个数据块包括以下内容一个数据块包括以下内容 最先发送标志数据传送开始的同步字符最先发送标志数据传送开始的同步字符 按约定为按约定为1至若干字 至若干字 每个字节一位一位地串行传送每个字节一位一位地串行传送 最后发送的是为了提高数据传送可靠性的校验字符最后发送的是为了提高数据传送可靠性的校验字符 按约定 按约定 所谓同步通讯指的是位传送的同步所谓同步通讯指的是位传送的同步 每传送一位数据都需要一个 每传送一位数据都需要一个 由于同步通讯的数据格式以数据块为单位由于同步通讯的数据格式以数据块为单位 因此在相同速率下其传输 因此在相同速率下其传输 速度要比以字节为单位的异步通讯高速度要比以字节为单位的异步通讯高 但硬件上要插入同步字符或相 但硬件上要插入同步字符或相 这种方式对硬件要求较高这种方式对硬件要求较高 3 波特率波特率 单位时间内单位时间内 串行通讯过程中传输的二进制数据的位数称之为波特 串行通讯过程中传输的二进制数据的位数称之为波特 率率 通常为每秒传输的位数通常为每秒传输的位数 bps 波特率规定为波特率规定为 1200 2400 38 4K 115 2bps等等 异步通讯中异步通讯中 双方的通讯速率以波特率来约定双方的通讯速率以波特率来约定 4 通信的校验 通信的校验 采用串行通讯时一般要检测传输过程中是否有错误出现 采用串行通讯时一般要检测传输过程中是否有错误出现 的过程称之为校验的过程称之为校验 2 3 1 串行通讯方式 串行通讯方式 串行通讯过程中传输的二进制数据的位数称之为波特串行通讯过程中传输的二进制数据的位数称之为波特 bps 4800 9600 9 6K 19 2K 双方的通讯速率以波特率来约定双方的通讯速率以波特率来约定 采用串行通讯时一般要检测传输过程中是否有错误出现采用串行通讯时一般要检测传输过程中是否有错误出现 检测错误检测错误 字节校验字节校验 异步串行通讯中最常用的奇偶校验 异步串行通讯中最常用的奇偶校验 位进行位进行 在每个字符的传送过程中加入 在每个字符的传送过程中加入 1 以保证被传送的字符中的以保证被传送的字符中的1 数个数个 称偶校验称偶校验 字节校验也成为横向校验 字节校验也成为横向校验 例例 用偶校验传送十六进制数用偶校验传送十六进制数9EH和 和 解解 9EH 10011110 35H 00110101 为了保证传送过程中每个字符的为了保证传送过程中每个字符的 帧帧 每帧每帧11位位 如下如下 1 1 10011110 0 1 0 00110101 0 停 停 校校 8位数据位 位数据位 起 起 止 止 验 验 始 始 位 位 位 位 位位 2 3 1 串行通讯方式 串行通讯方式 异步串行通讯中最常用的奇偶校验异步串行通讯中最常用的奇偶校验 奇偶校验以字符为单 奇偶校验以字符为单 在每个字符的传送过程中加入在每个字符的传送过程中加入1个校验位个校验位 该位为该位为 0 或者或者 1的个数是奇数个的个数是奇数个 称奇校验称奇校验 或偶 或偶 字节校验也成为横向校验字节校验也成为横向校验 和和35H 1 的个数为偶数个的个数为偶数个 则发送的数据则发送的数据 1 1 10011110 0 传送方向传送方向 1 0 00110101 0 起起 始始 位 位 奇偶校验只能检出奇数个错误奇偶校验只能检出奇数个错误 数据通信中数据通信中 除采用字节的奇偶校验外 除采用字节的奇偶校验外 纵向常用方法纵向常用方法 累加和校验累加和校验 异或和校验 异或和校验 设传送的数据块数据为设传送的数据块数据为 A1 A2 A20 校验码校验码 如把如把A1 A20累加起来累加起来 取和的最低字节作为校验码在数据块后 取和的最低字节作为校验码在数据块后 发送发送 接收方做同样的校验运算接收方做同样的校验运算 根据结果判断接收数据的准确性根据结果判断接收数据的准确性 2 3 1 串行通讯方式 串行通讯方式 数据数据1 A1 数据数据2 A2 数据数据3 A3 数据数据19 A19 数据数据20 A20 校验码 校验码 除采用字节的奇偶校验外除采用字节的奇偶校验外 同时采用数据块的纵向校验同时采用数据块的纵向校验 异或和校验异或和校验 CRC循环冗余校验循环冗余校验 A2 A20 在数据块后加在数据块后加1 几个字节的 几个字节的 取和的最低字节作为校验码在数据块后 取和的最低字节作为校验码在数据块后 根据结果判断接收数据的准确性根据结果判断接收数据的准确性 2 3 2 MCS 51串行口串行口 1 组成结构 组成结构 由发送缓冲器由发送缓冲器 并转串移位寄存器 并转串移位寄存器 移位寄存器移位寄存器 串口控制寄存器和波特率发生器等组成 串口控制寄存器和波特率发生器等组成 并转串移位寄存器并转串移位寄存器 接收缓冲器接收缓冲器 串转并 串转并 串口控制寄存器和波特率发生器等组成串口控制寄存器和波特率发生器等组成 2 控制寄存器控制寄存器SCON 地址为地址为98 SM0 SM1 SM2 REN TB8 D7 D6 D5 D4 D3 D2 D1 D0 SM1 SM0 串行口串行口4种工作方式选择位种工作方式选择位 2 3 2 MCS 51串行口串行口 SM1 SM0 工作方式 工作方式 方式说明方式说明 0 0 方式方式0 同步移位寄存器方式同步移位寄存器方式 0 1 方式方式1 10位异步收发方式位异步收发方式 1 0 方式方式2 11位异步收发方式位异步收发方式 1 1 方式方式3 11位异步收发方式 位异步收发方式 波特率波特率 2 SMOD 32 SMOD 波特率选择位波特率选择位 SMOD 1 波特率加倍波特率加倍 98H TB8 RB8 TI RI D7 D6 D5 D4 D3 D2 D1 D0 种工作方式选择位种工作方式选择位 方式说明 方式说明 波特率 波特率 同步移位寄存器方式同步移位寄存器方式 Fosc 12 位异步收发方式 位异步收发方式 波特率可设置 波特率可设置 位异步收发方式位异步收发方式 Fosc 32 或或 Fosc 64 位异步收发方式 位异步收发方式 波特率可设置 波特率可设置 T1的溢出率的溢出率 PCON寄存器中的一位寄存器中的一位

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论