1. 51单片机声音报警SPEAKER
R3 10K去掉,R2低于1K,硬件就这些问题,
程序上,delay函数太短了,51上,烧进去跑,人根本感觉不出来。里面加一级循坏,for(j=0;j<256;j++);这样就没什么问题了
2. 如何用单片机实现防空警报音
需要找到防空警报的频率变化范围,就可以实现。
下面给一个蜂鸣器模拟消防车报警声;
*****************************************************************************/
#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;
}
/*********************************************************/
3. 51单片机控制语音芯片进行播报怎么做,另外PC机通过无线给单片机传输命令
提问不明确。语音芯片型号很多,大多数都可以处理多段语音信息,所以,原理上都可以被51去控制。因为语音芯片,实际是语音存储芯片,所以每个信息段都必须有一个地址码,如果你想播放哪段语音,就用51去调用这个地址,就能实现语音播放。
第二部分问题:PC通过什么制式的无线信号给单片机传输命令,这个需要说清楚。无线信号类型也很多的。
4. 单片机设定时间报警怎么处理
我冬天漏脚
关注
单片机定时报警C语明族言程序,单片机控制的简易定时报警器电路设计( - 控制/MCU - 电子发烧友网... 转载
2021-05-17 12:29:32
我冬天漏脚
码龄5年
关注
单片机控制的简易定时报警器电路设计(含电路图和程序)
设计一个单片机控制的简易定时报警器。要求根据设定的初始值(1-59秒)进行倒计时,当计时到0时数码管闪烁“00”(以1Hz闪烁),按键功能如下:
(1)设定键:在倒计时模式时,按下此键后停止倒计时,进入设置状态;如果已经处于设置状态则此键无效。
(2)增一键:在设置状态时,每按一次递增键,初始值的数字增1。
(3)递一键:在设置状态时,每按一次递减激歼弊键,初始值的数字减1。
(4)确认键:在设置状态时,按下此键后,单片机按照新的初始值进行倒计时及显示倒计时的数改搭字。如果已经处于计时状态则此键无效。
5. 利用单片机设计实现一个60秒倒计时显示装置,并且计时到后发出报警声音。
#include<reg52.h>
sbitbz=P3^1;
unsignedchara[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xd8,0x80,0x90};
unsignedcharn,time=60;
main()
{
P1=a[0];
P2=a[6];
TMOD=0X01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;
ET0=1;
TR0=1;
while(1);
}
timer0()interrupt1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
if(time!=0)
{
n++;
if(n==100)
{
n=0;
time--;
P1=a[time%10];
P2=a[time/10];
}
}
elsebz=~bz;
}
6. 51单片机送低电平就报警,想问下报警的原理请仔细点,谢谢了
图中利用三极管来驱动蜂鸣器,此处PNP三极管9012工作在饱和产、截止状态,即当其基极为高电平时截止,低电平时饱和。故当51单片机送低电平时Q1饱和导通,LS1得电发声实现报警。