当前位置:首页 > 单片机 > 单片机
[导读] /* 名称:报警与旋转灯说明:定时器控制报警灯旋转显示,并发出仿真警报声。*/#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intsbit SPK=P3^7;uchar FRQ=0x00; //延时

 /*  名称:报警与旋转灯

说明:定时器控制报警灯

旋转显示,并发出仿真警报声。

*/

#include<reg51.h>

#include<intrins.h>

#define uchar unsigned char

#define uint unsigned int

sbit SPK=P3^7;

uchar FRQ=0x00; 

//延时

void DelayMS(uint ms)

{

                 uchar i;

                  while(ms--) for(i=0;i<120;i++);

              }

 

//INT0 中断函数

void EX0_INT() interrupt 0

{

TR0=~TR0; //开启或停止两定时器,分别控制报警器的声音和 LED 旋转

TR1=~TR1;

if(P2==0x00)

             else    P2=0xe0; //开 个旋转灯

               }

                  P2=0x00;//关闭所有 LED

 

//定时器 中断

void T0_INT() interrupt 1

{

TH0=0xfe;

TL0=FRQ;

SPK=~SPK;

}

//定时器 中断

void T1_INT() interrupt 3

{

TH1=-45000/256;

TL1=-45000%256;

P2=_crol_(P2,1);

}

//主程序

void main()

{

P2=0x00;

SPK=0x00;

TMOD=0x11;  //T0T1 方式 1

TH0=0x00;

TL0=0xff;

IT0=1;   

IE=0x8b;  //开启 01号中断

IP=0x01; //INT0 设为最高优先

TR0=0;

TR1=0;    //定时器启停由 INT0 控制,初始关闭

while(1)

  {

FRQ++;

DelayMS(1); 

  }

 

}

单片机C语言程序设计:报警与旋转灯" width="550" height="313" />

 

拓展阅读:定时器控制交通指示灯程序

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭