这一课,我们做一个更复杂的声音输出,不断交替输出2个频率的声音,类似救护车的声音。同时闪烁2个灯。
――――――――――――――――――――― 程序很简单,不用解释了。
#define uchar unsigned char //定义一下方便使用
#define uint unsigned int
#define ulong unsigned long
#include
char code dx516[3] _at_ 0x003b;//这是为了仿真设置的
sbit P10=P1^0; //LED1
sbit P11=P1^1; //LED1
sbit K1=P3^2; //K1
sbit BEEP=P1^7; //喇叭输出脚
//变频声救护车报警信号输出试验
void main(void) // 主程序
{
ulong ul;
uint n;
P10=0; //先点一个灯,以便2个灯轮流闪烁
while(1)
{
//输出约1秒种一个频率的声音
for(ul=0;ul<3000;ul++)
{
for(n=0;n<80;n++); //延时
BEEP=~BEEP; //取反输出到喇叭的信号
}
P10=~P10; //闪灯
P11=~P11; //闪灯
//输出约1秒种另一个频率的声音
for(ul=0;ul<2500;ul++)
{
for(n=0;n<100;n++); //延时
BEEP=~BEEP; //取反输出到喇叭的信号
}
P10=~P10; //闪灯
P11=~P11; //闪灯
}
}
―――――――――――――――――