具體實現(xiàn)功能:
由51單片機+DS18B20溫度傳感器+共陽四位數(shù)碼管+風(fēng)扇+獨立按鍵+DC電源構(gòu)成。
具體功能:
1、采用DS18B20溫度傳感器測溫并用數(shù)碼管實時顯示;
2、可以手動設(shè)置溫度上下限;共3個按鍵:設(shè)置鍵、加鍵、減鍵;
3、溫度小于下限風(fēng)扇不轉(zhuǎn),溫度在上下限之間60%轉(zhuǎn)動,大于上限時,風(fēng)扇全速轉(zhuǎn)動。
設(shè)計介紹
51單片機簡介
51單片是一種低功耗、高性能CMOS-8位微控制器,擁有靈巧的8位CPU和可編程Flash,使得51單片機為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。
本設(shè)計所使用的芯片可兼容以下所有的51系列單片機(包括AT系列和STC系列)。
設(shè)計方案
設(shè)計方案如下:
本設(shè)計利用DS18B20采集環(huán)境中的溫度值,將溫度數(shù)值反饋給單片機,單片機處理后進(jìn)行實時顯示。同時,利用三個按鍵設(shè)置溫度調(diào)節(jié)范圍,當(dāng)實時溫度值超出調(diào)節(jié)范圍后進(jìn)行相應(yīng)的操作。
單片機類設(shè)計論文參考模板:
畢設(shè)無憂|單片機類畢設(shè)論文模板
資料內(nèi)容
本系統(tǒng)原理圖和PCB設(shè)計采用Altium Designer19,具體如圖。
注1:請使用Altium Designer19直接打開資料中的工程文件(資料中已說明打開方式),若要求使用其他版本軟件,請謹(jǐn)慎購買!
注2:此設(shè)計需按照原理圖制作實物,不可直接燒錄到任何開發(fā)板中運行(需要修改程序)!
Altium Designer19軟件安裝包下載鏈接:
Altium Designer19安裝破解教程(內(nèi)附安裝包)
51單片機常用元器件封裝下載鏈接:
資料分享|51單片機常用元器件封裝庫
Altium Designer19教程:
AD19簡易教程(原理圖的繪制)
實用技巧|AD19快捷鍵大全
仿真實現(xiàn)(protues8.7)
本設(shè)計利用protues8.7軟件實現(xiàn)仿真設(shè)計,具體如圖。
注1:請使用protues8.7直接打開資料中的工程文件(資料中已說明打開方式),若要求使用其他版本軟件,請謹(jǐn)慎購買!
注2:由于仿真軟件限制,仿真設(shè)計和實物設(shè)計無法百分百對應(yīng)??!
protues8.7軟件資料:
proteus8.7安裝及破解教程(內(nèi)附安裝包)
若仿真中遇到問題,請參照以下文章解決:
protues仿真常見問題解決方案
Protues8.7簡易教程
程序(Keil5)
本設(shè)計利用KEIL5軟件實現(xiàn)程序設(shè)計。
注意:請使用KEIL5直接打開資料中的工程文件(資料中已說明打開方式),若要求使用其他版本軟件,請謹(jǐn)慎購買!!
主程序如下:
/****************主函數(shù)***************/ void main() { P0 = P1 = P2 = P3 = 0xff; time_init(); //初始化定時器 temperature = read_temp(); //先讀出溫度的值 init_eeprom(); //開始初始化保存的數(shù)據(jù) delay_1ms(650); temperature = read_temp(); //先讀出溫度的值 dis_smg[0] = smg_du[temperature % 10]; //取溫度的小數(shù)顯示 dis_smg[1] = smg_du[temperature / 10 % 10] & 0xdf; //取溫度的個位顯示 dis_smg[2] = smg_du[temperature / 100 % 10] ; //取溫度的十位顯示 f_pwm_l = 50; while(1) { key(); //按鍵程序 if(key_can < 10) { key_with(); //設(shè)置報警溫度 } if(flag_300ms == 1) //300ms 處理一次溫度程序 { flag_300ms = 0; temperature = read_temp(); //先讀出溫度的值 if(menu_1 == 0) { smg_i = 3; dis_smg[0] = smg_du[temperature % 10]; //取溫度的小數(shù)顯示 dis_smg[1] = smg_du[temperature / 10 % 10] & 0xdf; //取溫度的個位顯示 dis_smg[2] = smg_du[temperature / 100 % 10] ; //取溫度的十位顯示 } } baojing_kz(); //報警控制函數(shù) } }
程序運行結(jié)果如圖:
-
單片機
+關(guān)注
關(guān)注
6058文章
44821瀏覽量
644701 -
51單片機
+關(guān)注
關(guān)注
276文章
5707瀏覽量
125935 -
溫控風(fēng)扇
+關(guān)注
關(guān)注
1文章
16瀏覽量
5200
原文標(biāo)題:基于51單片機智能溫控風(fēng)扇設(shè)計
文章出處:【微信號:電子工程師成長日記,微信公眾號:電子工程師成長日記】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
想找些關(guān)于單片機溫控智能風(fēng)扇的設(shè)計的資料
畢設(shè)
基于51單片機的智能溫控風(fēng)扇設(shè)計
怎樣去設(shè)計一種基于51單片機的智能溫控風(fēng)扇
基于51單片機的智能溫控風(fēng)扇設(shè)計與proteus仿真
怎樣去設(shè)計一種基于51單片機的智能溫控風(fēng)扇
基于單片機的智能風(fēng)扇的設(shè)計
使用51單片機實現(xiàn)溫控風(fēng)扇的程序和仿真資料免費下載

基于51單片機智能溫控風(fēng)扇LCD1602液晶顯示紅外遙控設(shè)計

評論