当前位置: 首页 > news >正文

STC 51单片机61——呼吸灯

 

 

#include "reg52.h"

sbit LedHuxi1=P1^0;

#define time (65536-1000) // 单次定时1ms
unsigned char T_High, T, ti, dir;


void InitTimer0(void)
{
  TMOD=0x01;
    TL0 = time;                     //initial timer1 low byte
    TH0 = time >> 8;                //initial timer1 high byte
    TR0 = 1;                        //timer1 start running
    ET0 = 1;                        //enable timer1 interrupt
    EA = 1;                         //open global interrupt switch
}
void Delay(void)
{
  unsigned char i,j;
    for(i=0;i<20;i++)
      for(j=0;j<255;j++)
            ;
}


void main(void)
{
  T_High=0; //高电平
    T=30;      //周期
    ti=0;
    dir=0;
  InitTimer0();
  while(1){
      Delay();
        if((T_High<T)&&(dir==0))
            T_High++;
        else if(T_High==T) {
          dir=1;
          T_High--;
        }
        else if((T_High>0)&&(dir==1))
        T_High--;
        else
            dir=0;
    }

}

/* Timer0 interrupt routine */
void tm0_isr() interrupt 1
{
    TL0 = time;                    
    TH0 = time >> 8;               
    if(ti<T_High){
          LedHuxi1=1;
            ti++;
        }else if(ti<T){
          LedHuxi1=0;
            ti++;
        }else{
          ti=0;
        }
    
}

相关文章:

  • 还有13天圣诞节,用python整个简易版的圣诞树玩一下.......
  • 西湖大学张岳老师NLP课程笔记1 Introduction
  • Vue 使用socket.io实现聊天室
  • 笔试题之编写SQL按要求查询用户阅读行为数据
  • 用python给女朋友写个圣诞树玩玩~
  • JAVA毕业设计汇美食电子商城计算机源码+lw文档+系统+调试部署+数据库
  • Qt之天气预报——功能实现篇(含源码+注释)
  • STL常用生成算法和集合算法(20221207)
  • 基于遗传算法解决TSP问题(Matlab代码实现)
  • Python操作Excel表格
  • 2022年Python面试题汇总【面试官爱问】
  • 【Linux学习】进程概念(下)
  • 认知电子战 | 认知电子战简介
  • 5G无线技术基础自学系列 | NSA组网场景下移动性管理
  • 深度解读 | 如何构建以指标为核心的ABI平台?
  • 二本蒟蒻的带牌退役感言(感谢两年来的acm经历)
  • 深度学习Week9-YOLOv5-C3模块实现(Pytorch)
  • 【学生网页设计作品 】关于HTML公益主题网页设计——谨防电信诈骗网
  • 刷爆力扣之最短无序连续子数组
  • c++还原简单的vector
  • 屠呦呦当选美国科学院外籍院士
  • 江西德安回应“义门陈遗址建筑被没收”:将交由规范的义门陈相关社会组织管理
  • 中国建设银行浙江省分行原党委书记、行长高强接受审查调查
  • 西藏阿里地区日土县连发两次地震,分别为4.8级和3.8级
  • 俄宣布停火三天,外交部:希望各方继续通过对话谈判解决危机
  • 美航母一战机坠海,美媒:为躲避胡塞武装攻击,损失超六千万美元