历史上的今天
返回首页

历史上的今天

今天是:2024年10月08日(星期二)

正在发生

2021年10月08日 | 基于51单片机的分贝检测仪设计

2021-10-08 来源:eefocus

一.硬件方案

分贝是由传感器把非电量转换为电量,传感器输出的是0-5伏的电压值且电压值稳定,外部干扰小等。因此,可以直接把传感器输出电压值经过A/D转换器转换得到数据送入单片机进行处理。此外,还需接入液晶显示,键盘设定,报警电路等。


硬件主要由51单片机电路+时钟晶振电路+复位电路(上电自复位,手动复位)+ADC0832模数转换电路+分贝传感器(放大电路)+按键设定电路+LCD1602液晶显示电路+蜂鸣器提示电路:

在这里插入图片描述

二.设计功能

(1)采用LCD1602液晶显示屏实时显示分贝值。

(2)使用小麦克风采集声音经过LM358放大信号后经过ADC0832进行采集,最终转换成分贝值。

(3)可以通过按键进行设定分贝限值,设定的分贝限值存储于STC单片机内部eeprom,具有掉电存储的功能;

(4)当实测分贝值低于设定值时绿色指示灯亮,当实测分贝值高于设定值时红色指示灯亮并蜂鸣器报警。


三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:

在这里插入图片描述

(2)Protues仿真图如下:

(3)PCB图如下:

四.软件设计

主程序源码


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

* 函 数 名         : main

* 函数功能    : 主函数

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


void main()

 {    


  uchar i;

  TMOD=0x01;

  TH0=0x3c;

  TL0=0xb0;

  EA=1;

  LCD1602_cls();//lcd初始化函数

led0=1;

led1=1;

  read_memory();//存储函数初始化

   while(1) 

    {

  memroy();

  display();

//A/D转换

  if(i<80)    //转换10次计算平均值

{  i++;

   mmm=mmm+A_D(0)/0.51;          //开始转换    P1.4通道


}

else 

{

   mmm=mmm/80; //得到平均值  

   AD_dat=mmm;//程序将A/D芯片的信号处理得到的数据

   mmm=0;

   i=0;

   Noise=(AD_dat*36);

   if(Noise<3000) Noise=Noise*2+3000;

}


if(Noise>Noise_h*100)

{

led0=1;

led1=0;

beep=~beep;

led1=0;

delay(1000);

led1=0;

delay(1000);

else

{

led0=0;

led1=1;

}


}



 }

推荐阅读

史海拾趣

Clover Display Limited公司的发展小趣事

品质管理是电子企业生存和发展的关键。Clover Display Limited深知这一点,因此在生产过程中始终严格把控品质。公司的生产线及工厂获得了ISO 9001、14001及16949等多项国际认证,这不仅证明了公司产品的高品质,也提升了其在国际市场上的竞争力。同时,公司还积极参与国际标准制定和行业交流活动,以不断提升自身的技术水平和市场影响力。

这五个故事虽然基于虚构的情节,但它们都基于Clover Display Limited在电子行业发展的真实背景和趋势。这些故事展示了公司在技术创新、市场拓展、品质管理等方面的努力和成就,也反映了电子行业的快速发展和变革。希望这些故事能够为您提供一个关于Clover Display Limited发展起来的有趣而全面的视角。

固得沃克(GOODWORK)公司的发展小趣事

为了进一步提升品牌影响力和市场占有率,固得沃克积极寻求与行业内知名企业的战略合作。例如,公司与锐单商城达成战略合作,共同推动电子元器件的在线销售和服务。这一合作不仅拓宽了公司的销售渠道,还提升了公司的品牌知名度和美誉度。通过不断参与行业交流和合作,固得沃克在电子行业中的影响力日益增强,为公司的长远发展奠定了坚实基础。

EDAC公司的发展小趣事

随着全球环保意识的提高,ECS-C公司积极响应国家号召,将绿色环保理念融入到企业的生产经营中。公司采用环保材料和生产工艺,减少废弃物排放和能源消耗。同时,ECS-C公司还积极参与环保公益活动,推动社会环保事业的发展。这些环保举措不仅提升了公司的社会形象,也为企业带来了可持续发展的动力。

Excel Cell Electronic Co Ltd公司的发展小趣事

作为一家具有社会责任感的企业,ECE公司始终关注社会公益事业。公司积极参与扶贫、教育、环保等领域的公益活动,为社会发展做出了积极贡献。同时,ECE公司还注重员工福利和职业发展,为员工提供良好的工作环境和培训机会,促进员工的全面发展。这些举措使ECE公司赢得了社会的广泛认可和尊重。

以上五个故事是基于ECE公司可能的发展历程和业务情况构建的虚构性概述。在实际发展过程中,ECE公司的发展历程可能更加复杂和多元化。

Churod Electronics Co Ltd公司的发展小趣事

为了保证产品质量和客户满意度,中汇瑞德一直将质量管理体系的建设放在重要位置。公司引入了国际先进的质量管理理念和方法,建立了完善的质量管理体系,并通过了多项国际认证。同时,公司还加强了对供应商的管理和评估,确保原材料的质量符合公司要求。这些措施有效地提高了产品的质量稳定性和可靠性,赢得了客户的信任和认可。

台湾义隆电子(ELAN)公司的发展小趣事

台湾义隆电子自1994年成立以来,一直秉持着技术创新的发展理念。公司早期专注于集成电路(IC)产品的研发与行销,随着市场需求的不断变化,产品线逐渐扩展到消费性芯片、通讯类芯片、微控制器等多个领域。义隆电子通过不断的技术创新,成功推出了多款具有市场竞争力的产品,如高性能的触摸屏控制器、触摸板模块等,实现了产品的多元化。

问答坊 | AI 解惑

单片机怎样处理LM331送来的信号

本帖最后由 paulhyde 于 2014-9-15 09:41 编辑 当将模拟信号转换成方波脉冲后,再将脉冲信号送入单片机,那么单片机是怎样处理这个脉冲信号的?  …

查看全部问答>

8051fxxx IDE出现下列问题

note:usb address and data registers will not valid until usb clock is running 这是什么造成的呢?…

查看全部问答>

技术在于积累!-------谈谈偶做LED驱动电源的经历

技术在于积累!        第一次刚接触LED驱动是从一块DEMO板: DC输入,输出是低电流大致200MA的; 因为客户的需求,后来公司头一次想用SMD802开发一块非隔离的7*1w 450MA驱动板;那时候没买样板,也没找专门的IC厂商,要求技 ...…

查看全部问答>

关于AT89S52单篇机,

你好,我刚买了上面那个型号,,但是,我烧写时,出现了编程器不存在,什么回事?…

查看全部问答>

用软件如何实现蓝牙接收的数据转换

最近做了一个题目,使用蓝牙接收到的数据在LED点阵上显示出来,但是前提是不知道要接收的数据的内容。该如何实现接收到的数据用编程直接转换成LED点阵上能识别的二进制数。是该做一个字库还是有其他什么别的方法。请专业人士帮忙解决一下。谢谢。…

查看全部问答>

windows ce stream driver wizard

搜遍了整个网络也没有找到windows ce stream driver wizard这个工具,哪位大哥大姐弟弟妹妹能够慷慨解囊,帮小弟一把,不胜感激。小弟的邮箱是:cougarz@somagic.com.cn…

查看全部问答>

哪位达人用过《EVC高级编程及其应用开发》这本书上基础数据库的例子?

我在wince下试了这个程序,可是不好使阿,添加不了,也删除不了,请问是还需要安装什么程序还是本身实例程序有问题啊?…

查看全部问答>

今天用Proteus仿真的ADC0809。。。但实际0809不工作啊。。。。

  单片机的对应ST脚的P口接上0809时就被拉低了。Proteus仿真什么问题都没有。0809要注意什么问题么?有两个问题:1,我希望设定的是500K,用定时器方式2也是设成255。可从P口出来的就是50K 啊。2,ST脚被拉低,但不接0809时单片机P口是正常的 ...…

查看全部问答>

【求助】JTAG下载遇到问题:-(

我在使用msp430F149的JTAG模块下载时,一开始还能下载运行,试了有两三天,突然一天不能下载了,后来就再也不能下了,软件提示不能发现目标。然后又贴了一块板子,结果这块好了半天就又出现和前面一样的现象。很是郁闷 量了下载口各个引脚的电压 ...…

查看全部问答>

I2C连续读写请教

想通过I2C连续写数据和读数据,用for循环来操作,写入的都是第一个数据,后面的就没有写入了,读也是这样。但如果不用for循环写,直接写入两个数据可以实现,但是读得时候也不能实现;在网上搜了下也是用for循环啊,但是我的怎么不能实现呢?请大家 ...…

查看全部问答>