单片机C语言程序设计:用定时器设计的门铃
时间:09-04 14:04 阅读:1419次
*温馨提示:点击图片可以放大观看高清大图
简介:名称:用定时器设计的门铃
说明:按下按键时蜂鸣器发出叮咚的门铃声。
/*名称:用定时器设计的门铃
说明:按下按键时蜂鸣器发出叮咚的门铃声。
*/
#include<reg51.h>
#defineucharunsignedchar
#defineuintunsignedint
sbitKey=P1^7;
sbitDoorBell=P3^0;
uintp=0;
//主程序
voidmain()
{
DoorBell=0;
TMOD=0x00;//T0方式0
TH0=(8192-700)/32;//700us定时
TL0=(8192-700)%32;
IE=0x82;
while(1)
{
if(Key==0)//按下按键启动定时器
{
TR0=1;
while(Key==0);
}
}
}
//T0中断控制点阵屏显示
voidTimer0()interrupt1
{
DoorBell=~DoorBell;
p++;
if(p<400)//若需要拖长声音,可以调整400和800
{
TH0=(8192-700)/32;//700us定时
TL0=(8192-700)%32;
}
elseif(p<800)
{
TH0=(8192-1000)/32;//1ms定时
TL0=(8192-1000)%32;
}
else
{
TR0=0;
p=0;
}
}