51单片机——蜂鸣器按照次数响起1.0

写的不知道好不好,有什么不对的地方还请指出,谢了。

本次使用了do while,听说比单独的while循环速度快,具体也不太清楚,就按照别人说的了。

且蜂鸣器每次响1秒,响的次数可自定义最大1次循环255(因为定义的是unsigned char)

#ifndef __BUZZER_H__
#define __BUZZER_H__
#include 

sbit BU=P2^3;

void buzzer(unsigned char x);	//蜂鸣器响x次,1次循环最多255次

#endif // !__BUZZER_H__
#include "buzzer.h"
#include "delay.h"

void buzzer(unsigned char x)	//蜂鸣器响几次
{
	BU=1;
	do
	{
		BU = 0;
		delay_ms(1000);
		BU = 1;
		delay_ms(1000);
		x--;
	}while (x);
}

你可能感兴趣的:(51单片机,蜂鸣器驱动)