1. 程式人生 > 實用技巧 >423【畢設課設】基於51微控制器智慧檯燈節能燈熱釋人體自動感應照明燈

423【畢設課設】基於51微控制器智慧檯燈節能燈熱釋人體自動感應照明燈

【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

51微控制器智慧檯燈節能燈熱釋人體自動感應照明燈23
本系統由STC89C52微控制器、光照檢測、A/D取樣ADC0832、高亮LED燈
、按鍵、液晶LCD1602顯示、人體熱釋紅外模組及電源組成。
1、系統有自動模式和手動模式,按下切換開關,在手動模式,可以通
過手動開燈關燈。
2、再次按下切換開關,系統進入自動模式,如果檢測到有人,且光敏
電阻檢測到的光線強度低於手動設定的光照閾值,則燈亮,否則,不亮。
光照閾值可以手動調節。
3、液晶第一行顯示切換模式,第二行顯示環境光照強度和設定的閾值。
4、人體檢測只有在自動模式下起作用,人體檢測有狀態指示燈指示,
檢測到人指示燈亮否則不亮。

#define  DOWN  P1_7								//減
sbit led_hot = P3^4;//人體指示燈
sbit SCL=P3^1;		//SCL定義連線ADC0832SCL腳
sbit DO=P3^0;		//DO定義連線ADC0832DO腳
sbit CS=P3^2;		//CS定義連線ADC0832CS腳
sbit renti=P3^7;
#define  rs P2_4					   			//LCD1602
#define  rw P2_5 					   			//LCD1602
#define  e  P2_6					   			//LCD1602

bit Auto_flg;		  							//自動模式標誌位,=1表示手動模式,=0是自動模式
bit TIMER30S_flg;								//倒計時30s標誌位

unsigned long time_20ms=0;	   //定時器計數

uchar dat=0x00;           						//AD值
uchar CH;       								//通道變數
uchar Light;									//光線強度
char LIGHT_SET=6;								//設定光線強度 預設為4
uint Timer_Counter;								//倒計時10s中斷計數
uchar Miao;										//倒計時10s

uchar code table1[]="MODE:  Automatic";
uchar code table2[]="LIGHT:0  SET_L:0";

void delay_lcd(uint z)			  		 //延時函式約1ms
{