导航:首页 > 操作系统 > 怎么把报警声写入单片机里

怎么把报警声写入单片机里

发布时间:2023-11-18 03:45:23

① 如何用单片机实现防空警报音

需要找到防空警报的频率变化范围,就可以实现。
下面给一个蜂鸣器模拟消防车报警声;
*****************************************************************************/
#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

uchar Count;

sbit Key1 = P3^2 ;
sbit Key3 = P3^3 ;
sbit BEEP = P3^1 ; //蜂鸣器
sbit p34 = P3^4 ;

/********************************************************
延时函数
*********************************************************/
void delay(void)
{
uint k;
for(k=1700;k>0;k--);
}

/********************************************************
键控制函数
*********************************************************/
void key_control()
{

if(Key1==0)
{
while(Key1==0);
TR0=1;
}
if(Key3==0)
{
while(Key3==0);
TR0=0;
}
}
/********************************************************
主函数
*********************************************************/
main()
{
p34=0;
P0=0x0;
P1=0xff;
P2=0xff;
Count=0x00;
BEEP=1;

TMOD=0x01;
TH0=0x00;
TL0=0xff;
EA=1; ET0=1;

while(1)
{
do
{
Count++;
key_control();
delay();
}while(Count!=0xff);

do
{
Count--;
key_control();
delay();
}while(Count!=0x00);
}
}

/*********************************************************
Time0中断函数
**********************************************************/
void Time0(void) interrupt 1 using 0
{
TH0=0xfe;
TL0=Count;
BEEP=~BEEP;
}

/*********************************************************/

② 51单片机,怎么用汇编语言编程一个程序。实现4个按键控制4种报警声音(110、119、120、防空警报声)。

没有四种声音的频率库,其他的给你做个示范吧:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#11H
SETB EA
SETB ET0
SETB ET1
LOOP:
LCALL KEYSCAN
MOV A,R2
JNZ LP1
MOV DPTR,#TAB110
SJMP LPRUN
LP1:
DEC A
JNZ LP2
MOV DPTR,#TAB119
SJMP LPRUN
LP2:
DEC A
JNZ LP3
MOV DPTR,#TAB120
SJMP LPRUN
LP3:
DEC A
JNZ LP4
MOV DPTR,#TABBOMB
SJMP LPRUN
LP4:
LJMP LOOP
LPRUN:
MOVX A,@DPTR
MOV TL0,A
INC DPTR
MOVX A,@DPTR
MOV TH0,A
............;时长控制也可以做到表里,计算后赋值给T1
LJMP LOOP
END

③ 开关控制报警器如何用单片机实现

开关控制报警器如何用单片机实现

单片机C语言程序设计:开关控制报警器

/*名称:开关控制报警器

说明:用K1开关控制报警器,程序控制P1.0输出两种不同频率的声音,模拟很逼真的报警效果

*/

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitSPK=P1^0;

sbitK1=P1^7;

//发声函数

voidAlarm(uchart)

{

uchari,j;

for(i=0;i<200;i++)

{

SPK=~SPK;

for(j=0;j//由参数t行成不同的频率

}

voidmain()

{

SPK=0;

while(1)

{

if(K1==1)

{

Alarm(90);

Alarm(120);

}

}

}

④ C51单片机有警报声又可以闪灯的程序怎么写

给你做个示范吧:
#include<reg51.h>
sbit ALARMSND=P1^0;
sbit ALARMLED=P1^1;
sbit KEY=P1^2;
void t0_isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ALARMLED=!ALARMLED;
}
main()
{
TMOD=0x01;
ET0=1;
EA=1;
while(1)
{
if(KEY==0)
{
delay(10);
if(KEY==0)
{
ALARMSND=!ALARMSND; //按键切换报警
if(ALARMSND==1)TR0=1; //如果报警声响,则启动定时器,开始闪烁
else TR0=0; //不响则关闪烁
}
}
}
}

阅读全文

与怎么把报警声写入单片机里相关的资料

热点内容
二次编译错误 浏览:961
单路可编程触摸芯片 浏览:180
我的世界172服务器小游戏地址大全 浏览:294
在人寿app上怎么报销 浏览:924
linux启动sh脚本 浏览:975
江苏云手机服务器托管云空间 浏览:24
大众app下单怎么退款 浏览:642
通报文件为什么要加密 浏览:293
抗干扰单片机 浏览:840
编译完pac后怎么编译ota 浏览:624
java入门教程pdf 浏览:73
我的世界java版怎么找服务器 浏览:691
dna可以用模拟编译吗 浏览:110
文件夹怎么按后两位数排序 浏览:55
冻结app了怎么办 浏览:711
css取消编译后自动下载 浏览:472
做Ug编程需要有加工中心基础吗 浏览:684
android英语词典 浏览:9
耳机有一边连不上怎么办安卓 浏览:158
安卓怎么玩正版孤胆车神 浏览:890