📄 buzz.c
字号:
//================================================================|
// |
// 程序名称: | 蜂鸣器“嘀、嘀、……”报警声 |
// -----------------|---------------------------------------------|
// 端口说明:| 单片机的P1_0与蜂鸣器相连 |
// -----------------|---------------------------------------------|
// 版权申明:| 本例程只供学习使用,严禁用于商业用途 |
// |
//===============================蓝极风电子技术(www.bluepw.com)==|
#include <at89x52.h>
unsigned int t;
sbit buzz=P3^7; //单片机的P1_0与蜂鸣器相连
//*********主函数***************//
void main(void)
{
TMOD=0x01; //设置定时计数器T0为定时器,工作方式为1
TH0=(65536-10)/256; //给定时器赋予初值
TL0=(65536-10)%256; //
TR0=1; //打开定时器T0
ET0=1; //打开定时器中断
EA=1; //打开总中断
while(1);
}
//**********中断子函数**********//
void t0(void) interrupt 1 using 0
{
//重新设置定时器的初始值
TH0=(65536-10)/256;
TL0=(65536-10)%256;
t++;
//中断300次蜂鸣器鸣叫一声,即频率为1/(300*0.5ms)=6.7Hz
if(t==300)
{
t=0;
buzz=~buzz; //Buzzer开始工作
}
}
//===========================程序结束=============================|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -