• [51单片机] 定时器3-计时示例


    >_<:16位定时器自动重装,60ms定时周期,LED闪烁

    >_<:连接方式:将任意一个LED的引脚和P1.2相连

    >_<:实验现象:LED以60ms为周期闪烁。

     1 /*-----------------------------------------------
     2 名称:定时器2
     3 论坛:www.doflye.net
     4 编写:shifang
     5 内容:通过定时让LED灯闪烁
     6 ------------------------------------------------*/
     7 #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
     8 
     9 sbit LED=P1^2;    //定义LED端口
    10 
    11 /*------------------------------------------------
    12 定时器初始化子程序
    13 ------------------------------------------------*/
    14 void TIM2Inital(void)
    15 {
    16     RCAP2H = (65536-60000)/256;//晶振12M 60ms 16bit 自动重载
    17     RCAP2L = (65536-60000)%256;
    18     ET2=1;                     //打开定时器中断
    19     EA=1;                      //打开总中断
    20     TR2=1;                     //打开定时器开关
    21 }
    22 /*------------------------------------------------
    23 主程序
    24 ------------------------------------------------*/
    25 main()
    26 {
    27     TIM2Inital();
    28     while(1);
    29 }
    30 
    31 /*------------------------------------------------
    32 定时器中断子程序
    33 ------------------------------------------------*/
    34 void TIM2(void) interrupt 5 using 1//定时器2中断
    35 {    
    36     TF2=0;
    37     LED=~LED;               //指示灯反相    
    38 }
  • 相关阅读:
    桌面右击新建没有记事本以解决?
    mysql int(3)与int(11)的区别
    PHPCMS 权限
    PHP 全局函数
    SESSION 丢失
    成功配置gVim的ZenCoding插件
    phpcms 模版源码分析
    更新首页
    隐藏apache访问错误显示系统和版本信息
    nginx 编译安装
  • 原文地址:https://www.cnblogs.com/zjutlitao/p/3642002.html
Copyright © 2020-2023  润新知