⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 buzz.c

📁 单片机PWM控制产生不同频率的波形来控制蜂鸣器
💻 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 + -