试编程在at89c51的p1.0引脚输出的方波,驱动蜂鸣器发出6000hz的声音。定时应该使用定

器实现。(主频为12MHZ)

6000hz那么定时器初值为:1000000/6000/2=83,可以用模式2.
#include<reg51.h>
sbit fmq=P1^0;
void t0isr() interrupt 1
{
fmq=~fmp;
}
main()
{
TMOD=0x02;
TH0=256-83;
TL0=256-83;
TR0=1;
ET0=1;
EA=1;
while(1);
}
温馨提示:答案为网友推荐,仅供参考
相似回答