基于51单片机空气质量检测超限报警Proteus仿真

资料编号:161   下面是相关功能视频演示:

161-基于51单片机空气质量检测超限报警Proteus仿真(源码+仿真+全套资料)

功能介绍:

采用51单片机作为CPU,ADC0832作为AD转换模块,LCD1602显示当前采集的空气质量数值,通过按键可以调节上限阈值,并且阈值显示在LCD1602上面,如果测量空气质量浓度大于当前设置的上限阈值,蜂鸣器进行报警提醒,采用电位器可以调节当前空气质量气体浓度,改变LCD1602浓度显示值,全套仿真资料齐全:

下面是该程序的展示:

void main()
{
     uchar B;
    uint d,v;
    int buf=100;
    Initialize_LCD();
    InitTimer();
    Delayms(10);
    v = 0x0100;
    StartTimer(0);
    B = 0;
    beep=0;
    while(1)
    {
        d = Get_AD_Result(vout);//读取传感器的AD值
        d &=0x00FF;    
        d = d*1000.0/255;
        #ifdef vmode
        if(d/1000)
        Display_Buffer[1]=d/1000+'0';        //显示测量值 
        else
        Display_Buffer[1]=' ';
        Display_Buffer[2]=d/100%10+'0';
        Display_Buffer[3]=d/10%10+'0';
        Display_Buffer[4]=d%10+'0';     

        if(KEY1==0)                         //按键报警值加
        {
            buf++;
            if(buf>995) buf=995;
        }
        if(KEY2==0)                        //按键报警值减
        {
            buf--;
            if(buf<5) buf=5;
        }

    
        Display_Buffer[12]=buf/100%10+'0'; //显示报警值
        Display_Buffer[13]=buf/10%10+'0';
        Display_Buffer[14]=buf%10+'0';    
        
        
        ShowString(0,0,Line1);
        ShowString(0,1,Display_Buffer);     
 
        
        
        if(d>buf)
        {
            beep=0;
        Delayms(20);        
                    beep=1;
        Delayms(20);
        }            
        else beep=1;
    }
}

下面是该资料的分享下载链接:

https://pan.baidu.com/s/1tiWLdLVxYQPc0wu_HqwwAw?pwd=huf6 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值