加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

基于51單片機(jī)煙霧報警器數(shù)碼管顯示( proteus仿真+程序+設(shè)計報告+講解視頻)

11/12 08:39
2373
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
    • 1. 主要功能:
    • 2. 講解視頻:
    • 3. 仿真
    • 4. 程序代碼
    • 5. 設(shè)計報告
    • 6. 設(shè)計資料內(nèi)容清單&&下載鏈接
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

仿真圖proteus7.8及以上

程序編譯器:keil 4/keil 5

編程語言:C語言

設(shè)計編號:S0067

1. 主要功能:

基于51單片機(jī)的煙霧報警器proteus仿真設(shè)計

1.LED數(shù)碼管顯示煙霧報警值和檢測到的煙霧值;

2.可以通過按鍵調(diào)整煙霧報警濃度值;

3.煙霧濃度低于報警值工作指示燈綠燈亮。

煙霧濃度高于閾值蜂鳴器報警,工作指示燈紅燈亮;

4.通過ADC0832采集滑動變阻器模擬MQ-2電壓變化。

需注意仿真中51單片機(jī)芯片是兼容的,AT89C51,AT89C52是51單片機(jī)的具體型號,內(nèi)核是一樣的。相同的原理圖里,無論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機(jī)芯片。

2. 講解視頻:

講解視頻包含仿真運(yùn)行講解和代碼講解

3. 仿真

打開仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開始仿真。

imgimgimg

4. 程序代碼

使用keil4或者keil5編譯,代碼有注釋,可以結(jié)合報告理解代碼含義。

img

完整代碼見文章下載鏈接
#include "reg51.h"
#include "intrins.h"
sbit CLK=	P1^1;//時鐘,初始狀態(tài)為0
sbit DI=	P1^2;//數(shù)據(jù)輸入
sbit DO=	P1^3; // 數(shù)據(jù)輸出
sbit CS=	P1^0;
sbit LED_RED=P3^4;	 //紅燈
sbit LED_GREEN=P3^5; //綠燈
sbit beep=P3^0;//蜂鳴器
unsigned char code smgduan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned int num=0;//煙霧
unsigned int limit=1500;//閥值
unsigned char beepflag;
unsigned int cnt=0;
/*********************************************
讀取ADC
**********************************************/
unsigned char ADC()//通道ch0
{
	unsigned char temp0,temp1,i;
	CS=0;
	temp0=0;
	temp1=0;
	_nop_();
	_nop_();
	DI=1;//開始位
	_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個下降沿DI=1
	_nop_();
	DI=0;
	_nop_();
	CLK=1;
	_nop_();
	CLK=0;//第3個上升沿DI=0
	_nop_();
 	DI=1;
//********通道選擇結(jié)束開始讀取轉(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;
}
void delay(unsigned int i)//延時
{
	while(i--);
}

void main()
{


	TMOD|=0X01;
	TH0=0X3C;
	TL0=0XB0;	
	EX0=1;//打開外部中斷0
	EX1=1;//打開外部中斷1
	IT0=1;//下降沿觸發(fā)
	IT1=1;//下降沿觸發(fā)
	ET0=1;//打開定時器0中斷允許
	EA=1;//打開總中斷
	TR0=1;//打開定時器
	beepflag = 0;
	while(1)
	{
		P0=smgduan[num/1000];//顯示煙霧度
		P2=0xfe;
		delay(100);
		P2=0xff;
		P0=smgduan[num%1000/100];//顯示煙霧度
		P2=0xfd;
		delay(100);
		P2=0xff;
		P0=smgduan[num%100/10];//顯示煙霧度
//		 	P0 =P0|0x80; //加小數(shù)點(diǎn)
		P2=0xfb;
		delay(100);
		P2=0xff;
		P0=smgduan[num%10];//顯示煙霧度
		P2=0xf7;
		delay(100);
		P2=0xff;
		P0=smgduan[limit/1000];//顯示煙霧度閥值
		P2=0xef;
		delay(100);
		P2=0xff;							 
		P0=smgduan[limit%1000/100];//顯示煙霧度閥值
		P2=0xdf;
		delay(100);
		P2=0xff;
		P0=smgduan[limit%100/10];//顯示煙霧度閥值
		P2=0xbf;
		delay(100);
		P2=0xff;
		P0=smgduan[limit%10];//顯示煙霧度閥值
		P2=0x7f;
		delay(100);
		P2=0xff;  
	}
}
void Timer0() interrupt 1//定時器中斷
{
	TH0=0X3C; //50ms中斷
	TL0=0XB0;
	if(cnt==20){//1秒一次
		cnt = 0;
//		if(num>limit){//報警
//			if(beepflag<10)beepflag++;//10秒計數(shù)
//		}else{
//			beep=1;
//			beepflag = 0;
//		}
//		
//		if(beepflag<10&&num>limit*10){//響10秒
//			beep=0;
//		}else{
//			beep=1;
//		}
		if(num>limit){//報警
			 beep=0;
			 LED_RED=0;	 //紅色報警燈 亮
			 LED_GREEN=1;  //綠色報警燈 滅
		}else{
			 beep=1;
			 LED_RED=1;	    //紅色報警燈  滅
			 LED_GREEN=0;  //綠色報警燈  亮
		}
	}	
	cnt++;


}	

void jia() interrupt 0//按鍵 外部中斷0處理函數(shù)
{
    if(limit<2500)
        limit=limit+10;
    else
        limit=0;
}
void jian() interrupt 2//按鍵 外部中斷1處理函數(shù)
{
    if(limit>0)
        limit=limit-10;
    else
        limit=2500;
}

5. 設(shè)計報告

4947字設(shè)計報告,內(nèi)容包括硬件設(shè)計、軟件設(shè)計、軟硬件框圖、調(diào)試、結(jié)論等

img

6. 設(shè)計資料內(nèi)容清單&&下載鏈接

資料設(shè)計資料包括仿真,程序代碼、講解視頻、功能要求、設(shè)計報告、軟硬件設(shè)計框圖等。

0、常見使用問題及解決方法–必讀!?。?!

1、仿真圖

2、程序源碼

3、功能要求

4、開題報告

5、設(shè)計報告

6、軟硬件流程框圖

7、講解視頻

Altium Designer 安裝破解

KEIL+proteus 單片機(jī)仿真設(shè)計教程

KEIL安裝破解

Proteus元器件查找

Proteus安裝

Proteus簡易使用教程

單片機(jī)學(xué)習(xí)資料

相關(guān)數(shù)據(jù)手冊

答辯技巧

設(shè)計報告常用描述

鼠標(biāo)雙擊打開查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計.url

img

網(wǎng)盤下載鏈接:

https://docs.qq.com/doc/DS1VFWmlRSVRCR3Rl

  • 設(shè)計資料獲取聯(lián)系方式.doc

相關(guān)推薦

電子產(chǎn)業(yè)圖譜