單片機(jī)C語言程序設(shè)計(jì):用定時(shí)器設(shè)計(jì)的門鈴
掃描二維碼
隨時(shí)隨地手機(jī)看文章
/* 名稱:用定時(shí)器設(shè)計(jì)的門鈴
說明:按下按鍵時(shí)蜂鳴器發(fā)出叮咚的門鈴聲。
*/
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit Key=P1^7;
sbit DoorBell=P3^0;
uint p=0;
//主程序
void main()
{
DoorBell=0;
TMOD=0x00; //T0 方式 0
TH0=(8192-700)/32; //700us 定時(shí)
TL0=(8192-700)%32;
IE=0x82;
while(1)
{
if(Key==0) //按下按鍵啟動(dòng)定時(shí)器
{
TR0=1;
while(Key==0);
}
}
}
void Timer0() interrupt 1
{
DoorBell=~DoorBell;
p++;
if(p<400) //若需要拖長聲音,可以調(diào)整 400 和 800
{
TH0=(8192-700)/32; //700us 定時(shí) TL0=(8192-700)%32; } else if(p<800) { TH0=(8192-1000)/32; //1ms 定時(shí) TL0=(8192-1000)%32; } { TR0=0; p=0; } } 單片機(jī)C語言程序設(shè)計(jì):用定時(shí)器設(shè)計(jì)的門鈴" width="550" height="360" />
else
擴(kuò)展閱讀:按鍵控制 8X8LED 點(diǎn)陣屏顯示圖形程序