资料编号:157 下面是相关功能视频演示:
157-基于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/1jv-GzJlWLapvVUYyOJuOMQ?pwd=tymf