单片机第五章课件

上传人:小爷****坑 文档编号:121886530 上传时间:2020-02-27 格式:PPTX 页数:68 大小:1,016.74KB
返回 下载 相关 举报
单片机第五章课件_第1页
第1页 / 共68页
单片机第五章课件_第2页
第2页 / 共68页
单片机第五章课件_第3页
第3页 / 共68页
单片机第五章课件_第4页
第4页 / 共68页
单片机第五章课件_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《单片机第五章课件》由会员分享,可在线阅读,更多相关《单片机第五章课件(68页珍藏版)》请在金锄头文库上搜索。

1、第五章MCS 51单片机内部资源及编程 并口 P1 P2 P3 P4 并行输入输出数据 并口 8段数码管的输出 并口 写一个显示子函数show led m n m所需要显示的数字 n需要显示的位voidshow led unsignedcharm unsignedcharn 预定义 defineled portP1 defineucharunsignedcharsbitled1 P3 0sbitled2 P3 1unsignedcharcodeled 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 0 x77 0 x7c

2、0 x39 0 x5e 0 x79 0 x71 并口 写一个显示子函数show led m n m所需要显示的数字 n需要显示的位voidshow led unsignedcharm unsignedcharn unsignedchar p p led p p m led port p 将段码送到端口send n 预定义 defineled portP1sbitled1 P3 0 sbitled2 P3 1 sbitled2 P3 2 sbitled3 P3 3 sbitled4 P3 4 sbitled5 P3 5 unsignedcharcodeled 0 x3f 0 x06 0 x5b

3、0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 0 x77 0 x7c 0 x39 0 x5e 0 x79 0 x71 并口 写一个显示子函数show led m n voidsend unsignedcharn switch n case1 led1 1 break case2 led2 1 break case3 led3 1 break case4 led4 1 break case5 led5 1 break case6 led6 1 break 主函数main ucharI while 1 for i 1 i 6 i show led I i 定时

4、器 定时器 T0 16 T1 16 定时 计数 T2 16 C52 工作方式0 工作方式1 工作方式2 工作方式3 工作方式0 工作方式1 工作方式2 中断 中断函数 中断 中断函数 定时器 构成 定时器 计数器 TH0 TL0 中断 外部脉冲 P3 4 内部脉冲 P3 4 定时器 TMOD TCON TH0 TL0 TH1 TL1 工作方式寄存器 控制寄存器 T0计数器 T1计数器 定时器 定时模式 设定一个初始值 每个机器周期计数器增加1 定时器 定时模式 设定一个初始值 产生中断 定时器 定时模式 设定一个初始值 产生中断 初值X 最大计数值 满值 M 计数值N 定时器 计数模式 设定一

5、个初始值 产生中断 高电平 低电平 定时器 计数模式 在每一个机器周期的S5P2时刻对T0 P3 4 或T1 P3 5 上信号采样一次 如果上一个机器周期采样到高电平 下一个机器周期采样到低电平 则计数器在下一个机器周期的S3P2时刻加1计数一次 因而需要两个机器周期才能识别一个计数脉冲 所以外部计数脉冲的频率应小于振荡频率的1 24 定时器 TMOD 一 定时 计数器的方式寄存器TMOD 其中 M1 M0为工作方式选择位 用于对T0的四种工作方式 T1的三种工作方式进行选择 选择情况如下 定时器 TMOD 一 定时 计数器的方式寄存器TMOD 其中 M1 M0为工作方式选择位 用于对T0的四

6、种工作方式 T1的三种工作方式进行选择 选择情况如下 C T 定时或计数方式选择位 当C T 1时工作于计数方式 当C T 0时工作于定时方式 GATE 门控位 用于控制定时 计数器的启动是否受外部中断请求信号的影响 定时器 TMOD 一 定时 计数器的方式寄存器TMOD GATE 外部脉冲计数才有用 定时器 TCON 二 定时 计数器的控制寄存器TCON 其中 TF1 定时 计数器T1的溢出标志位 当定时 计数器T1计满时 由硬件使它置位 如中断允许则触发T1中断 进入中断处理后由内部硬件电路自动清除 TR1 定时 计数器T1的启动位 可由软件置位或清零 当TR1 1时启动 TR1 0时停止

7、 TF0 定时 计数器T0的溢出标志位 当定时 计数器T0计满时 由硬件使它置位 如中断允许则触发T0中断 进入中断处理后由内部硬件电路自动清除 TR0 定时 计数器T0的启动位 可由软件置位或清零 当TR0 1时启动 TR0 0时停止 定时器 工作方式0 方式1是13位的定时 计数方式 因而最大计数值 满值 为2的13次幂 等于8192 如计数值为N 则置入的初值X为 X 8192 N 定时器 工作方式1 方式2是16位的定时 计数方式 因而最大计数值 满值 为2的16次幂 等于65536 如计数值为N 则置入的初值X为 X 65536 N 定时器 工作方式2 TL TH 中断 由于是8位的

8、定时 计数方式 因而最大计数值 满值 为2的8次幂 等于256 如计数值为N 则置入的初值X为 X 256 N 自动重装初始值模式 定时器 工作方式3T0 TL0 中断 定时或计数 TH0 中断 计数 T0工作在8位方式下 定时器 应用实例 设系统时钟频率为12MHZ 用定时 计数器T0编程实现从P1 0输出周期为500 s的方波 分析 利用定时器每250 s翻转一次某个引脚的状态 12M时钟频率 机器周期为1 s 如果采用8位定时器 最大时间是256 s 则定时器初始值为X 256 定时时间机器周期 256 250 1 6定时器 T0定时器工作方式 方式2初始值 6 定时器 应用实例 设系统

9、时钟频率为12MHZ 用定时 计数器T0编程实现从P1 0输出周期为500 s的方波 定时器初始化 voidTime0 initial TMOD 0 x02 TH0 0 x06 自动重装值TL0 0 x06 初始值EA 1 打开全局中断允许位ET0 1 打开定时器0中断允许位TR0 1 C T 0GATE 不起作用M1M0 10工作方式2 二 中断允许控制 MCS 51单片机中没有专门的开中断和关中断指令 对各个中断源的允许和屏蔽是由内部的中断允许寄存器IE的各位来控制的 中断允许寄存器IE的字节地址为A8H 可以进行位寻址 EA 中断允许总控位 EA 0 屏蔽所有的中断请求 EA 1 开放中

10、断 ET2 定时器 计数器T2的溢出中断允许位 ES 串行口中断允许位 ET1 定时器 计数器T1的溢出中断允许位 EX1 外部中断INT1的中断允许位 ET0 定时器 计数器T0的溢出中断允许位 EX0 外部中断INT0的中断允许位 定时器 应用实例 设系统时钟频率为12MHZ 用定时 计数器T0编程实现从P1 0输出周期为500 s的方波 中断函数voidtime0 void interrupt1 puls puls 主函数sbitpuls P1 0 main Time0 initial while 1 定时器 最大定时 工作方式0 13位Tmax 213 s 8192 s 8 192ms

11、 计数器初始值 2计时器位数 定时时间机器周期时间 计数器最小值为0 所以最大定时时间为 最大定时时间 2计时器位数 机器周期时间 若使用12M晶振 机器周期为1 s 工作方式1 16位Tmax 216 s 65536 s 65 536ms 工作方式2 3 8位Tmax 28 s 256 s 定时器 最大定时 设系统时钟频率为12MHZ 从P1 0输出周期为1s的方波 串口 P1 P2 P3 P4 并行输入输出数据 外围芯片 数据 控制 一次并行传送完整的一个字节信息 串口 并可优点 缺点 优点 速度快缺点 数据线多 抗干扰能力差 通信距离短 串口通讯 分时通信 数据 t 串口 串口通讯基础知

12、识 A B 单向 A B 分时单向 单工 半双工 A B 同时双向 全双工 串口 同步通信异步通信 异步通信 每次传输一个字节 未传送时线路处于空闲状态 空闲线路约定为高电平 1 传送一个字符又称为一帧信息 传送时每一个字符前加一个低电平的起始位 然后是数据位 数据位可以是5 8位 低位在前 高位在后 数据位后可以带一个奇偶校验位 最后是停止位 停止位用高电平表示 它可以是1位 1位半或2位 串口 同步通信异步通信 同步通信 串行同步通信方式的特点是数据在线路上传送时以字符块为单位 一次传送多个字符 传送时须在前面加上一个或两个同步字符 后面加上校验字符 格式如图 串口 同步通信异步通信 同步

13、通信 异步通信 由于一次只传送一个字符 因而一次传送的位数比较少 对发送时钟和接收时钟的要求相对不高 线路简单 但传送速度较慢 同步方式时一次连续传送多个字符 传送的位数多 对发送时钟和接收时钟要求较高 往往用同一个时钟源控制 控制线路复杂 传送速度快 串口 波特率 波特率是指串行通信中 单位时间传送的二进制位数 单位为bps 在异步通信中 传输速度往往又可用每秒传送多少个字节来表示 Bps 它与波特率的关系为 波特率 bps 一个字符的二进制位数 字符 秒 Bps 例如 每秒传送200个字符 每个字符1位起始位 8个数据位 1个校验位和1个停止位 则波特率为2200bps 一般的波特率有48

14、00 7200 9600 14400 19200 串口 51串口 全双工 异步通信 工作方式0 工作方式1 工作方式2 工作方式3 TXD P3 1 RXD P3 0 串口 51串口 发送SBUF 接收SBUF 发送控制器 接收控制器 输入移位寄存器 串行口控制寄存器 波特率发生器 串行口中断 内部总线 门 RXD P3 0 TXD P3 1 RI TI 串口 51串口 SBUF 99H SCON PCON 发送数据SBUF 接受数据SBUF TI RI 串口控制寄存器 电源控制寄存器 SMOD位控制波特率倍率 串口 51串口 SCON 其中 SM0 SM1 串行口工作方式选择位 用于选择四种

15、工作方式 SM2 多机通信控制位 REN 允许接收控制位 当REN 1 则允许接收 当REN 0 则禁止接收 TB8 发送数据的第9位 RB8 接收数据的第9位 TI 发送中断标志位 发送完成后 硬件自动置位 中断响应后 需软件清位 RI 接收中断标志位 接收完成后 硬件自动置位 中断响应后 需软件清位 当SMOD位为1 则串行口方式1 方式2 方式3的波特率加倍 串口 PCON 串口 工作方式0 SM0SM1 00 波特率 fosc 12 发送 接收 RXD data TXD 同步时钟 发送和接收数据时低位在前 高位在后 长度为8位 TI 0 SBUF 写入完成 启动发送 RI 0 REN

16、1 启动接收 中断 TI 1 RI 1 不能用于多机通信 串口 工作方式0 SM0SM1 00 不能用于多机通信 串口 工作方式0 SM0SM1 00 不能用于多机通信 串口 工作方式1 SM0SM1 01 帧构成 TXD 发送端 RXD 接收端 T1 波特率发生器 波特率 2SMOD T1的溢出率 32 中断 TI 1 RI 1 初始化T1 SBUF写入 启动串口 REN 1 启动接收 等待 中断函数清除TI RI位 串口 工作方式1 SM0SM1 01 帧构成 如果RI 0 SM2 0 接收控制器发出 装载SBUF 信号 将输入移位寄存器中的8位数据装入接收数据寄存器SBUF 停止位装入RB8 并置RI 1 向CPU申请中断 如果RI 0 SM2 1 那么只有停止位为 1 才发生上述操作 RI 0 SM2 1且停止位为 0 所接收的数据不装入SBUF 数据将会丢失 如果RI 1 则所接收的数据在任何情况下都不装入SBUF 即数据丢失 注意 串口 工作方式2 SM0SM1 10 11 9位异步通信 起始位 停止位 D5 D6 D7 D4 D3 D2 D1 D0 数据位 0 1 0 1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号