??????功能介紹
- 以51單片機作為主控系統(tǒng);
- LCD1602液晶顯示當前時間、年月日、時分秒、前教室人數(shù);
- 2路紅外探頭用來感應當前教室進出人數(shù);
- 按鍵可以設置當前時間、自動手動模式、開啟和關閉教室燈光時間;
- 在手動模式下,可以通過按鍵直接控制燈光亮度(3檔);
- 自動模式下,LED指示燈亮,光敏傳感器檢測當前教室光線強度光線較弱,
- 教室有人并且在開燈的時間范圍內(nèi)根據(jù)教室內(nèi)不同的人數(shù)將自動開啟臺燈進行照明;
- 整個電路以5v供電;;
?電路圖
PCB
源代碼
#include <reg52.h>
#include <intrins.h>
#include <stdio.h>//printf串口輸出頭文件
#define uchar unsigned char
#define ushort unsigned int
#define uint unsigned long
#include "lcd1602.h"
#include "uart_trx.h"
#include "eeprom52.h"
#define RATIO 800 //系數(shù),建議選擇800-1000
sbit key1 = P1^0;//加鍵
sbit key2 = P1^1;//減鍵
sbit beep = P2^0;//蜂鳴器
sbit Fan = P1^3;//風扇
unsigned char pmBuf[7] = 0;//數(shù)據(jù)接收數(shù)組
uint PM25_Value = 0; //PM = ((pmBuf[1]<<8)+pmBuf[2])/1024*8*ratio
uint PM25_ValueMax = 200; //上限初始值
void EEPROM_WRITE()//EEPROM寫入
{
SectorErase(0x2000);//擦除扇區(qū)
byte_write(0x2001, (PM25_ValueMax>>8)&0xFF);//存儲高8位
byte_write(0x2002, (PM25_ValueMax>>0)&0xFF);//存儲低8位
byte_write(0x2009, 111);//存儲校驗值
}
void EEPROM_READ()//EEPROM讀出
{
if(byte_read(0x2009)!=111)//開機檢測單片機是不是第一次使用,如果不是第一次使用,則先把數(shù)據(jù)存儲一遍,再讀取,數(shù)據(jù)就不會亂碼
{
EEPROM_WRITE();//存儲
delay_ms(100);
}
PM25_ValueMax = byte_read(0x2001)<<8 | byte_read(0x2002);//讀取上限值
}
void Get_PM(void)//讀取PM2.5值,具體的數(shù)據(jù)幀意思,請自行查閱芯片手冊
{
char i = 0;
char j = 0;
char k = 0;
COM.RX_Cnt = 0;
if(COM.B_RX_OK == 1)//串口數(shù)據(jù)接收完成
{
for(i = 0; i<8; i++)
{
if((RX_Buffer[i] == 0xAA)&&(RX_Buffer[i+6]==0xFF))//判斷接收的數(shù)據(jù)是否正確
{
goto find2;
}
}
goto end2;
find2:
for(j = 0; j<7; j++)
{
pmBuf[j] = RX_Buffer[i+j];//數(shù)據(jù)獲取
}
PM25_Value = (unsigned int)((pmBuf[1]*256)+pmBuf[2])*5/2048.0*RATIO;//計算PM2.5值
COM.B_RX_OK = 0;
}
end2:
return;
}
void main(void)
{
unsigned int test;
EEPROM_READ();//開機讀取存儲值
LCD_init();//1602初始化
Uart_Init(2400);//串口初始化波特率2400
LCD_write_string(0,0,"Pm2.5: ug/m3 ");
LCD_write_string(0,1,"PmMax: ug/m3 ");
//顯示上限值
LCD_write_char(7, 1, PM25_ValueMax % 1000 / 100 + 0x30);
LCD_write_char(8, 1, PM25_ValueMax % 100 / 10 + 0x30);
LCD_write_char(9, 1, PM25_ValueMax % 10 + 0x30);
while(1)
{
if (test ++ > 250)//大約250ms讀取一次
{
test = 0 ;
Get_PM();//獲取PM2.5
if(PM25_Value > 999)//限值,最大999
PM25_Value = 999;
//顯示PM2.5
LCD_write_char(7, 0, PM25_Value % 1000 / 100 + 0x30);
LCD_write_char(8, 0, PM25_Value % 100 / 10 + 0x30);
LCD_write_char(9, 0, PM25_Value % 10 + 0x30);
if(PM25_Value >= PM25_ValueMax)//超過上限,蜂鳴器報警
{
beep = ~beep;
Fan = 0;
delay_ms(100);
}
else
{
beep = 1;
Fan = 1;
}
}
if(key1 == 0)//加鍵按下
{
delay_ms(10);//消抖
if(key1 == 0)
{
beep = 0;
delay_ms(100);
beep = 1;
while(key1 == 0);
if(PM25_ValueMax<999)PM25_ValueMax+=10;//上限最大到999,每次加10
//顯示
LCD_write_char(7, 1, PM25_ValueMax % 1000 / 100 + 0x30);
LCD_write_char(8, 1, PM25_ValueMax % 100 / 10 + 0x30);
LCD_write_char(9, 1, PM25_ValueMax % 10 + 0x30);
EEPROM_WRITE();//保存
}
}
if(key2 == 0)//減鍵按下
{
delay_ms(10);
if(key2 == 0)
{
beep = 0;
delay_ms(100);
beep = 1;
while(key2 == 0);
if(PM25_ValueMax>=10)PM25_ValueMax-=10;//上限最小到0,每減10
//顯示
LCD_write_char(7, 1, PM25_ValueMax % 1000 / 100 + 0x30);
LCD_write_char(8, 1, PM25_ValueMax % 100 / 10 + 0x30);
LCD_write_char(9, 1, PM25_ValueMax % 10 + 0x30);
EEPROM_WRITE();//保存
}
}
delay_ms(1);
}
}
????????本文只是簡單介紹了實物功能的一種和在設計的過程的關鍵點,供大家參考學習,如需定制實物或者有錯誤和不明白的可以直接私信作者,或者添加徽信biyezhan007
元器件清單
基于單片機的教室智能照明臺燈控制系統(tǒng)的設計與實現(xiàn) | ||
名稱 | 型號 | 數(shù)量 |
單片機 | STC89C52 | 1 |
IC座 | DIP40 | 1 |
萬能板 | 9*15cm | 1 |
晶振 | 11.0592M | 1 |
電解電容 | 10uF | 1 |
電解電容 | 1000uf | 1 |
瓷片電容 | 22pF | 2 |
電阻 | 10K | 3 |
電阻 | 1K | 4 |
電阻 | 2K | 1 |
LED紅 | 5MM | 1 |
LED綠 | 5MM | 1 |
蜂鳴器 | 有源 | 1 |
三極管 | S9012 | 1 |
按鍵 | 5 | |
顯示屏 | LCD1602 | 1 |
排針 | 16P | 1 |
排母 | 16P | 1 |
人體紅外模塊 | HC-SR501 | 1 |
排母 | 3P | 1 |
溫度傳感器 | DS18B20 | 1 |
煙霧傳感器 | MQ-2 | 1 |
模數(shù)轉換器 | ADC0832 | 1 |
IC座 | 8P | 1 |
GSM模塊 | SIM800c | 1 |
電源座 | 5MM | 1 |
電源線 | 5V2A | 1 |
自鎖開關 | 1 | |
繼電器 | 1 | |
小水泵 | 1 | |
導線 | 若干 | |
焊錫絲 | 若干 |
參考文獻
參考文獻
[1]王德保.GPS在城市控制網(wǎng)中的應用研究[D].山東:山東科技大學,2005.
[2]何立民.從現(xiàn)代計算機視角看嵌入式系統(tǒng)(4)嵌入式系統(tǒng)40年發(fā)展史[J].單片機與嵌入式系統(tǒng)應用,2016,16(04):77-79.
[3]康桂霞,劉達.FPGA應用技術教程[M].北京:人民郵電出版社:201306.229.
[4]樸德慧,衣英剛.液晶顯示器驅動板MCU電路介紹(上)[J].家電檢修技術,2012(11):53.
[5]段廷魁.全球衛(wèi)星定位系統(tǒng)(GNSS)在工程測量中的實踐運用探索0[J].科技創(chuàng)新與應用,2021(05):182-184.
[6]宋戈,黃鶴松.51單片機應用開發(fā)范例大全[M].北京:人民郵電出版社:國家信息技術緊缺人才培養(yǎng)工程系列叢書,201206.558.
[7]羅小青.單片機原理及應用教程[M].北京:人民郵電出版社,201409.180.
[8]沈慶陽.單片機實踐與應用[M].北京:清華大學出版社,2002.
[9]杜深慧.溫濕度檢測裝置的設計與實現(xiàn)[M].北京:機械工業(yè)出版社,2004.
[10]林嘉.基于89S52的LCD1602程序設計[J].電腦知識與技術,2012(26):6376-6378.
[11]劉光偉.基于單片機的溫室溫濕度監(jiān)測系統(tǒng)設計與實現(xiàn)[D].秦皇島市:燕山大學,2012.
[12]褚福強,董學仁.單片機的網(wǎng)絡接入技術研究[J].儀器儀表用戶,2006(05):4-5.
[13]陳英俊.基于單片機的溫濕度監(jiān)測和報警系統(tǒng)設計[J].廣東石油化工學院學報,2013(04):42-46.
[14]廖麗媛.基于應變式扭矩傳感器的測量系統(tǒng)的設計[D].上海市:東華大學,2013.
[15]劉九慶.溫室環(huán)境工程技術[M].吉林:東北林業(yè)大學出版社,2002.
[16]王明喜,崔世茂.大棚型日光溫室光照、溫度及濕度等性能的初步研究[J].農(nóng)業(yè)工程技術(溫室園藝),2008(05):19-21.
[17]張迎輝.單片微型計算機鍵盤接口設計[J].信息技術,2004(07):68-69+91.
[18]張友德,趙志英.單片微型機原理應用與實驗[M].上海市:復旦大學出版社,2003.
[19]趙芝蕓.溫室智能監(jiān)控系統(tǒng)[D].江蘇:江蘇科技大學,2010.
[20]張宏偉.基于STM32的智能環(huán)境監(jiān)測系統(tǒng)設計與實現(xiàn)[J].大慶師范學院學報,2020(05):32-35.
[21]王世偉,楊越.基于STM32的多型號舵機調試器設計[J].九江學院學報(自然科學版),2020,35(02):33-36.
[22]Pengcheng Zhao,Meijun Ni,Chao Chen,Chenxi Wang,PingpingYang,Xiahui Wang,Chunyan Li,Yixi Xie,Junjie Fei. A Novel Self-protection Hydroquinone Electrochemical Sensor Based on Thermo -sensitive Triblock Polymer PS-PNIPAm-PS[J].
[23]Jian Wang,Jing Chen,Xiaofu Xiong,Xiaofeng Lu,ZhengLiao,Xiaobo Chen.Temperature safety analysis and backup protectionscheme improvement for overhead transmission line in poweroscillation condition[T].Electric Power Systems Research,2019,166.
[24]Fuji Electric Co.Ltd.;Patent Issued for SeiconductorDevice And Method Of Outputting Temperature Alarm (USPTO10,164,626)[J].Electronics Newsweekly,2019.
[25]VERSID,INC;Patent Issued for Refrigeration UnitTemperature Alarm Using Thermal Properties of Food to Eliminate FalseAlarms (USPTO 9752810)[J].Computers,Networks &Communications,2017.
[26]Fuji Electric Co.Ltd;Patent Application Titled"Semiconductor Device and Method of Outputting Teperature Alarm"Published Online (USPTO 20170077919)[J]. Technology & BusinessJournal,2017.
[27]su Yuanping,Xu Lihong,Goodman Erik D.Multi-layerhierarchical optimisation of greenhouse climate setpoints for energyconservation and improvement of crop yield[J].Biosystems
[28]黃松茂.基于STM32的家庭環(huán)境監(jiān)測系統(tǒng)的設計與實現(xiàn)[D].甘肅蘭州.西北師范大學,2018.:23-30.
[29]李大琳.智能車內(nèi)溫度監(jiān)測系統(tǒng)設計[J].山東工業(yè)技術,2014(12):80-81.
[30]郭雯,王海濤. 智能輸液系統(tǒng)的發(fā)展與應用.醫(yī)療衛(wèi)生裝備,2012
??文章來源:http://www.zghlxwxcb.cn/news/detail-539009.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-539009.html
到了這里,關于基于單片機的教室智能照明臺燈控制系統(tǒng)的設計與實現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!