173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

单片机l蜂鸣器报警代码

htxw 2023-03-15 资讯中心 44 ℃

51单片机蜂鸣器 献给爱丽丝代码

#includereg52.h sbit SPK=P1^2; //定义音乐输出端口unsigned char t; // 休止符标志unsigned char w; // 节拍选择 unsigned char Timer0_H,Timer0_L,Time; //致爱丽丝unsigned char code MUSIC[]={ 3,2,1, 2,2,1, 3,2,1, 2,2,1, 3,2,1, 7,1,1, 2,2,1, 1,2,1, 6,1,2, 6,0,1, 1,1,1, 3,1,1, 6,1,1, 7,1,2, 5,0,1, 3,1,1, 5,1,1, 7,1,1, 1,2,2, 6,1,1, 3,1,1, 3,2,1, 2,2,1, 3,2,1, 2,2,1, 3,2,1, 7,1,1, 2,2,1, 1,2,1, 6,1,2, 6,0,1, 1,1,1, 3,1,1, 6,1,1, 7,1,2, 5,0,1, 3,1,1, 5,1,1, 7,1,1, 6,1,2, 6,0,1, 7,1,1, 1,2,1, 2,1,1, 3,1,2, 1,1,1, 5,1,1, 4,2,1, 3,2,1, 2,2,2, 7,0,1, 4,1,1, 3,2,1, 2,2,1, 1,2,2, 6,0,1, 3,1,1, 2,2,1, 1,2,1, 7,0,1, 3,1,1, 3,1,1, 3,2,1, 3,1,1, /* 3,2,1, 3,2,1, 3,3,1, 2,2,1, 3,2,1, 2,3,1, //高音 3,3,1, 2,2,1, 3,2,1, 2,3,1, 3,3,1, 2,3,1, 3,3,1, 2,3,1, 3,3,1, 7,2,1, 2,3,1, 1,3,1, */ 3,2,1, 3,2,1, 3,2,1, 2,2,1, 3,2,1, 2,2,1, //低音 3,2,1, 2,2,1, 3,2,1, 2,2,1, 3,2,1, 2,2,1, 3,2,1, 2,2,1, 3,2,1, 7,1,1, 2,2,1, 1,2,1, 6,2,2, 6,1,1, 1,2,1, 3,2,1, 6,2,1, 7,2,2, 5,1,1, 3,2,1, 5,2,1, 7,2,1, 1,3,2, 6,1,1, 3,2,1, 3,3,1, 2,3,1, 3,3,1, 2,3,1, 3,3,1, 7,2,1, 2,3,1, 1,3,1, 6,2,2, 6,1,1, 1,2,1, 3,2,1, 6,2,1, 7,2,2, 5,2,1, 3,2,1, 1,3,1, 7,2,1, 6,2,4, 6,2,4, 11 }; // 音阶频率表 高八位code unsigned char FREQH[]={ 0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8, 0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC, 0xFC,0xFC,0xFD,0xFD,0xFD,0xFD,0xFE, //1,2,3,4,5,6,7,8,i 0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF, } ; // 音阶频率表 低八位code unsigned char FREQL[]={ 0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6, 0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B, 0x8F,0xEE,0x44, 0x6B,0xB4,0xF4,0x2D, //1,2,3,4,5,6,7,8,i 0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16, }; /*------------------------------------------------ 节拍延时函数 各调1/4节拍时间: 调4/4 125ms 调2/4 250ms ------------------------------------------------*/void delay_ms(){ unsigned char i; for(i=0;i230;i++);}void delay(unsigned char t){ unsigned char i; for(i=0;it;i++) { unsigned int k,j; j=500; for(k=0;kj;k++) { delay_ms(); } } }/*------------------------------------------------ 定时器0中断------------------------------------------------*/void TIM0_ISR() interrupt 1{ TR0=0; if(t!=0) { SPK=!SPK; } else { SPK=0; } TH0=Timer0_H; TL0=Timer0_L; TR0=1; }/*------------------------------------------------ 歌曲处理函数------------------------------------------------*/void Song(){ TH0=Timer0_H;//赋值定时器时间,决定频率 TL0=Timer0_L; TR0=1; //打开定时器 delay(Time); //延时所需要的节拍 }/*------------------------------------------------ 主函数------------------------------------------------*/ void main(void) { unsigned int k,i; TMOD|=0x01; //置定时器0工作方式1 EA=1; //打开全局中断 ET0=1; //打开定时0中断 while(1) { i=0;// w=0; while(MUSIC[i]!=11) { //音乐数组长度 ,唱完从头再来 k=MUSIC[i]+7*MUSIC[i+1]-1;//去音符振荡频率所需数据 t=MUSIC[i]; Timer0_H=FREQH[k]; Timer0_L=FREQL[k]; Time=MUSIC[i+2]; //节拍时长 i=i+3;// w++; Song(); } } }

求51单片机蜂鸣器程序

#includereg51.h

sbit buzzer = P1^0   ;声明区

void delay(int)   ;

void pulse_BZ(int,int,int);声明函数void main(void)

{

while(1)

{

pulse_BZ(500,1,1);  调用发声

delay(1000);        延时1000 X 0.5ms

pulse_BZ(500,1,1);

delay(1000);

pulse_BZ(500,1,1);

delay(1000);

pulse_BZ(200,1,1);

delay(1000);

pulse_BZ(200,1,1);

delay(1000);

}

}void delay(int x)

{

int i,j;

for(i=0;ix;i++)

for(j=0;j60;j++);

}void pulse_BZ(int count;int TH;int TL)

{

int i;

for(i=o;icount;i++)    //循环count次,时间count x 1ms

{

buzzer=1;               //此程序段产生1HZ 信号

delay(TH);

buzzer=0;

delay(TL);

}

}

51单片机蜂鸣器

开关C语言程序:

sbit P2^0=KEY;

sbit P2^1=BEEP;

unsigned char KEYNUM=0;

void main()

{

while(1)

{

if(KEY==0)//开关按下;

{

KEYNUM++;

}

if(KEYNUM==1)//第一次按下;

{

BEEP=1; //蜂鸣器响

}

if(KEYNUM==2)/第二次按下;

{

BEEP=0; //蜂鸣器不响

KEYNUM=0;

}

}

}

51单片机,编写延时程序,控制蜂鸣器发声:

很简单的

#includereg52.h

#define uchar unsigned char

#define uint unsigned int

sbit fengmingqi=P0^0; //声明IO口

void delay(uint x)//延时子函数

{

uint i,j;

for(i=x;i0;i--)

for(j=50;j0;j--);

}

void main(void)

{

while(1) //循环

{

fengmingqi=1; //p0.0口高电平,蜂鸣器发声

delay(500); //延时

fengmingqi=0; //p0.0口低电平,蜂鸣器不发声

delay(500); //延时

}

}

关于单片机驱动蜂鸣器发出滴滴的声音的程序怎么写

#includereg51.h

#define uchar unsigned char

#define uint unsigned int

sbit SPK=P1^0;

sbit K1=P1^7;

//发声函数,注意这里是用扬声器,不能用普通的蜂鸣器

void Alarm(uchar t)

{

uchari,j;

for(i=0;i200;i++)

{

SPK=~SPK;

for(j=0;jt;j++); //由参数t行成不同的频率产生不同的声音

}

}

voidmain()

{

SPK=0;

while(1)

{

if(K1==1)

{

Alarm(90);

Alarm(120);

}

}

}

C语言单片机“嘀、嘀、……”报警声设计 每一行C语言代码都要详细解释

#inclde "reg52.h" /*头文件*/

#define P1^1 p1.1 /*将蜂蜜器连到这个引脚,你也可以连到其他脚,改这行代码就是*/

int i,j;

void delay() /*延时程序*/

{

for(i=0;i1000;i++)

{

for(j=0;j1000;j++)

{

;/*nothing*/

}

}

}

void main()

{

while(1) /*让蜂鸣器反复响停响停。。。*/

{

p1.1 = 1;/*响*/

delay();

p1.1 = 0;/*停*/

}

}

你丫的要看书,好好学习,,看你问话的口气,一点都不谦虚,像别人欠你的一样。

51单片机用三个按键控制报警,任意按两个按键蜂鸣器就报警的程序

设按键为k1,k2,k3

void main()

{

char beepflag=0;

while(1)

{

if((k1==0)

beepflag|=0x01;

else

beepflag=0xFE;

if(k2==0) //按键按下

beepflag|=0x02;

else

beepflag=0xFD;

if(k3==0) //按键按下

beepflag|=0x04;

else

beepflag=0xFB;

//------------这里判断字符低三位,如果有其中两位置一,则开启蜂鸣器

}

}

思路大概就是这样,如对您有帮助,请采纳,谢谢!

单片机设计倒计时蜂鸣器报警的编程代码

int sec=60;

int cnt=0;

char Buzzer=1;//关闭蜂鸣器

void Timer0Init(void) //5毫秒@11.0592MHz

{

AUXR = 0x7F; //定时器时钟12T模式

TMOD = 0xF0; //设置定时器模式

TL0 = 0x00; //设置定时初值

TH0 = 0xEE; //设置定时初值

TF0 = 0; //清除TF0标志

ET0 = 1;//开T0中断

EA = 1;//开总中断

TR0 = 1; //定时器0开始计时

}

void Timer0Interrupt(void) interrupt 1

{

cnt++;

if(cnt=200)

{

cnt=0;sec--;

if(sec==0)EA=0;

}

}

其它就自己写了。

if(sec==0)Buzzer=0;

单片机l蜂鸣器报警代码的介绍就聊到这里吧,感谢您花时间阅读,谢谢。

本文标签:单片机l蜂鸣器报警代码

<