基于51單片機(jī)空氣質(zhì)量監(jiān)測(cè)報(bào)警仿真LCD顯示( proteus仿真+程序+設(shè)計(jì)報(bào)告+原理圖+講解視頻)
仿真圖proteus7.8及以上
程序編譯器:keil 4/keil 5
編程語(yǔ)言:C語(yǔ)言
1. 主要功能:
基于51單片機(jī)的空氣質(zhì)量報(bào)警器proteus仿真設(shè)計(jì)
1.LCD1602液晶顯示空氣質(zhì)量報(bào)警值和檢測(cè)到的空氣質(zhì)量;
2.可以通過(guò)按鍵調(diào)整空氣質(zhì)量報(bào)警值;
3.空氣質(zhì)量低于報(bào)警值工作指示燈綠燈亮。
空氣質(zhì)量高于閾值蜂鳴器報(bào)警,工作指示燈紅燈亮;
4.通過(guò)ADC0832采集滑動(dòng)變阻器模擬空氣質(zhì)量傳感器MQ-135電壓變化。
需注意仿真中51單片機(jī)芯片是兼容的,AT89C51,AT89C52是51單片機(jī)的具體型號(hào),內(nèi)核是一樣的。相同的原理圖里,無(wú)論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機(jī)芯片。
以下為本設(shè)計(jì)資料展示圖:
2. 講解視頻:
講解視頻包含仿真運(yùn)行講解和代碼講解
基于51單片機(jī)空氣質(zhì)量檢測(cè)報(bào)警LCD液晶顯示proteus仿真程序設(shè)計(jì)報(bào)告講解
3. 仿真設(shè)計(jì):
打開(kāi)仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開(kāi)始仿真。開(kāi)始仿真后LCD1602液晶顯示當(dāng)前有害氣體濃度,有害氣體濃度測(cè)量值590ppm,報(bào)警值600ppm,工作指示燈綠燈亮。
通過(guò)點(diǎn)擊滑動(dòng)變阻器的阻值調(diào)整,阻值高于上限值600ppm后,蜂鳴器報(bào)警,工作指示燈紅燈亮。
4. 程序代碼
使用keil4或者keil5編譯,代碼有注釋,可以結(jié)合視頻理解代碼含義。
#include "reg51.h"
#include "ADC0832.h"
#include "lcd1602.h"
sbit k1=P1^4;//按鍵
sbit k2=P1^5;
sbit k3=P1^6;
sbit k4=P1^7;
sbit beep=P2^7;//蜂鳴器
sbit led1=P3^5;//工作指示燈
sbit led2=P3^4;
uint det_h2=0;//空氣質(zhì)量
uint low=10,high=60;//閥值
uchar disp1[]="value:0000ppm";//第一行顯示
uchar disp2[]="alarn:0000ppm";//第二行顯示
void main()
{
完整程序見(jiàn)文章最后壓縮包
init_1602(); //LCD1602初始化
TMOD|=0X01;
TH0=0X3C;
TL0=0XB0;
ET0=1;//打開(kāi)定時(shí)器0中斷允許
EA=1;//打開(kāi)總中斷
TR0=1;//打開(kāi)定時(shí)器
while(1)
{
if(!k3) //高閥值加
{
if(high<999)
high++;
while(!k3);
}
if(!k4) //高閥值減
{
if(high>low)
high--;
while(!k4);
}
if(det_h2>high) //上限報(bào)警
{
led1=0; //LED1紅燈點(diǎn)亮
led2=1; //LED2綠燈熄滅
}
else
{
led1=1; //LED1紅燈熄滅
led2=0; //LED2綠燈點(diǎn)亮
}
beep=led1;
}
}
void Timer0() interrupt 1
{
TH0=0X3C;
TL0=0XB0;
det_h2=ADC(1);//測(cè)量空氣質(zhì)量
disp1[6]=det_h2/100+0x30; //空氣質(zhì)量百位
disp1[7]=det_h2%100/10+0x30; //空氣質(zhì)量十位
disp1[8]=det_h2%10+0x30; //空氣質(zhì)量個(gè)位
// disp2[2]=low/100+0x30;
// disp2[3]=low%100/10+0x30;
// disp2[4]=low%10+0x30;
disp2[6]=high/100+0x30;
disp2[7]=high%100/10+0x30;
disp2[8]=high%10+0x30;
write_string(1,0,disp1);
write_string(2,0,disp2);
}
ADC0832驅(qū)動(dòng)代碼
#include "ADC0832.h"
#include "intrins.h"
/*********************************************
讀取ADC
**********************************************/
uchar ADC(uchar ch)//通道ch 1,2
{
uchar temp0,temp1,i;
CS=0;
temp0=0;
temp1=0;
_nop_();
_nop_();
DI=1;//開(kāi)始位
_nop_();
_nop_();
CLK=1;
_nop_();
_nop_();
CLK=0;
_nop_();
_nop_();
DI=0;
_nop_();
_nop_();
//選擇通道0
DI=1;
_nop_();
CLK=1;//上升沿DI=1
_nop_();
CLK=0;//1個(gè)下降沿DI=1
_nop_();
if(ch==1)
DI=0;
if(ch==2)
DI=1;
_nop_();
CLK=1;
_nop_();
CLK=0;//第3個(gè)上升沿DI=0
_nop_();
DI=1;
//********通道選擇結(jié)束開(kāi)始讀取轉(zhuǎn)換后的二進(jìn)制數(shù)****
//下降沿讀數(shù),一下進(jìn)行判斷和處理,共8次
for(i=0;i<8;i++)
{
temp0=temp0<<1;
CLK=1;
if(DO)
temp0++;
_nop_();
CLK=0;
}
for(i=0;i<8;i++)
{
temp1=temp1>>1;
CLK=1;
if(DO)
temp1=temp1 +0x80;
_nop_();
CLK=0;
}
CS=1;
return temp0;
}
5. 設(shè)計(jì)報(bào)告
8018字設(shè)計(jì)報(bào)告,內(nèi)容包括硬件設(shè)計(jì)、軟件設(shè)計(jì)、軟硬件框圖、調(diào)試、結(jié)論等
隨著環(huán)境問(wèn)題的日益嚴(yán)峻,全球?qū)諝赓|(zhì)量的關(guān)注度達(dá)到了前所未有的高度??諝赓|(zhì)量監(jiān)測(cè)設(shè)備在日常生活中的普及和工業(yè)生產(chǎn)過(guò)程中的應(yīng)用變得愈發(fā)重要,它們不僅能夠提供實(shí)時(shí)、準(zhǔn)確的空氣質(zhì)量數(shù)據(jù),幫助人們了解當(dāng)前環(huán)境狀況,還為環(huán)保決策、污染防控以及工作生活環(huán)境優(yōu)化提供了有力的數(shù)據(jù)支持。因此,設(shè)計(jì)并實(shí)現(xiàn)一款具備高效能、智能化且用戶友好型的空氣質(zhì)量報(bào)警器系統(tǒng)成為了科技發(fā)展與環(huán)境保護(hù)的重要課題。
本課程設(shè)計(jì)項(xiàng)目正是基于這一背景,選擇了經(jīng)典的51系列單片機(jī)作為核心控制器,并結(jié)合強(qiáng)大的Proteus仿真平臺(tái)進(jìn)行模擬實(shí)現(xiàn)。該智能空氣質(zhì)量報(bào)警器系統(tǒng)具有實(shí)時(shí)監(jiān)測(cè)空氣質(zhì)量參數(shù)、設(shè)定及調(diào)整報(bào)警閾值、實(shí)施警報(bào)提示等多重功能,充分體現(xiàn)了嵌入式技術(shù)在實(shí)際應(yīng)用中的靈活性與實(shí)用性。
6. 原理圖
原理圖使用AD繪制,可供實(shí)物參考,仿真不同于實(shí)物,經(jīng)驗(yàn)不足不要輕易搞實(shí)物。
Proteus仿真和實(shí)物作品的區(qū)別:
1.運(yùn)行環(huán)境:Proteus仿真是在計(jì)算機(jī)上運(yùn)行的,而實(shí)物則是在硬件電路板上運(yùn)行。
2.調(diào)試方式:在Proteus仿真中,可以方便地進(jìn)行單步調(diào)試和觀察變量值的變化,而在實(shí)物中則需要通過(guò)調(diào)試器或者串口輸出等方式進(jìn)行調(diào)試。
電路連接方式:在Proteus仿真中,可以通過(guò)軟件設(shè)置進(jìn)行電路連接的修改,而在實(shí)物中則需要通過(guò)硬件電路板和連接線進(jìn)行修改。
3.運(yùn)行速度:Proteus仿真通常比實(shí)物運(yùn)行速度快,因?yàn)榉抡媸腔谟?jì)算機(jī)運(yùn)行的,而實(shí)物則需要考慮電路板上的物理限制和器件的響應(yīng)時(shí)間等因素。
4.功能實(shí)現(xiàn):在Proteus仿真中,可以通過(guò)軟件設(shè)置實(shí)現(xiàn)不同的功能,而在實(shí)物中則需要根據(jù)電路設(shè)計(jì)和器件的性能進(jìn)行實(shí)現(xiàn)。
7. 設(shè)計(jì)資料內(nèi)容清單&&下載鏈接
資料設(shè)計(jì)資料包括仿真,程序代碼、講解視頻、功能要求、設(shè)計(jì)報(bào)告、軟硬件設(shè)計(jì)框圖等。
0、常見(jiàn)使用問(wèn)題及解決方法–必讀!?。。?/p>
1、程序
2、proteus仿真
3、功能要求
4、軟硬件流程圖
5、開(kāi)題報(bào)告
6、設(shè)計(jì)報(bào)告
7、原理圖
8、講解視頻
Altium Designer 安裝破解
KEIL+proteus 單片機(jī)仿真設(shè)計(jì)教程
KEIL安裝破解
MQ-138.pdf
Proteus元器件查找
Proteus安裝
Proteus簡(jiǎn)易使用教程
單片機(jī)學(xué)習(xí)資料
相關(guān)數(shù)據(jù)手冊(cè)
答辯技巧
設(shè)計(jì)報(bào)告常用描述
鼠標(biāo)雙擊打開(kāi)查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url
資料下載鏈接(可點(diǎn)擊):
https://docs.qq.com/doc/DS0lKdWJsRnhYT0p0