- 定时器的应用
  - 实验任务
    - 使用定时中断控制实现LED流水灯
    - 巩固定时器基础知识
    - 提高解决实际问题的能力
  - 定时器在生活中的应用
    - 早晨固定时刻响起的铃声
    - 电视机自动开关机
    - 电饭煲预设时间
    - 全自动洗衣机完成洗衣流程
  - 实验要求
    - 利用定时中断延时控制LED流水灯
    - LED8由右向左依次点亮,间隔1秒
    - 晶振频率12MHz
  - 实现步骤
    - 知识储备
      - 定时器结构
        - 8051定时器是16位加一计数器
        - 对机器周期进行计数
      - 寄存器配合
        - TCON和TMOD寄存器
        - TMOD工作方式寄存器
          - 高四位控制T1,低四位控制T0
          - M1和M0选择工作方式
          - 方式0到方式3的功能描述
        - TCON控制寄存器
          - 控制定时器启停
          - 设置溢出标志
      - 中断相关寄存器
        - IE寄存器
          - EA:CPU中断允许位
          - ET0、ET1:T0和T1中断允许位
        - IP寄存器
          - PT0、PT1:T0和T1中断优先控制位
    - 硬件搭建
      - 所需设备
        - 单片机实验箱模块
        - 最小单片机系统和共阳极LED点阵
      - 软件工具
        - QV3和ProGaST
      - 连接说明
        - P1口连接LED
        - EA接VCC
    - 程序设计
      - 核心问题
        - 定时一秒的实现
        - 工作模式选择
        - TMOD初值设定
        - TH0和TL0初值计算
      - 方法讨论
        - 定时器级联或软件计数
        - 采用软件计数,每次50毫秒,计数20次
        - TMOD初值为01H
        - 计算TH0和TL0初值
          - 初值=2^16-N
          - N=50ms/1μs=50000
          - 初值=65536-50000=15536
          - 转换为十六进制:3CB0
      - 程序流程
        - 主程序任务
          - 初始化定时器和中断系统
          - 给P1口赋初值
          - 清零一秒标志位
          - 检查一秒时间是否到
        - 中断服务子程序任务
          - 检测一秒时间是否到
          - 修改P1口内容
          - 重新设置计数值
          - 启动定时器
  - 学习收获
    - 流水灯实现形式多样
    - 定时器优越性
      - 不占用CPU资源
      - 可同时进行其他控制
    - 培养发散性思维

版权所有:全国高校教师网络培训中心

技术支持:北京畅想数字教育科技股份有限公司

联系地址:北京市西城区德外大街4号院A座2层

咨询电话:400-6699-800

京ICP备08008005号 京公网安备110102004467