怎样控制51单片机的蜂鸣器发出不同频率的声音?

如题所述

第1个回答  2022-11-16
用定时器来产生频率,如产生100Hz的声音。\x0d\x0a思路:\x0d\x0a100Hz即每秒变换200次,每次的时间就是1/200秒=0.005秒=5毫秒。\x0d\x0a计算定时器的初值:TH0 = 0x0EE; TL0 = 0x00;\x0d\x0a \x0d\x0a#include \x0d\x0asbit BEEP=P0^0;//蜂鸣器引脚\x0d\x0avoid main(void)\x0d\x0a{\x0d\x0a//初始化定时器(晶振:11.0592MHz,12T)\x0d\x0a TMOD = 0x01;\x0d\x0a TH0 = 0x0EE;//5毫秒中断一次\x0d\x0a TL0 = 0x00;\x0d\x0a EA = 1;//开总中断\x0d\x0a ET0 = 1;;//开中断\x0d\x0a TR0 = 1;//启动定时器\x0d\x0a while(1);//死循环等蜂鸣器响。\x0d\x0a}\x0d\x0avoid Timer0Interrupt(void) interrupt 1\x0d\x0a{\x0d\x0a TH0 = 0x0EE;\x0d\x0a TL0 = 0x00;\x0d\x0a BEEP=!BEEP;//变换一次蜂鸣器\x0d\x0a}
相似回答
大家正在搜