基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于單片機(jī)的紅外遙控?cái)?shù)顯智能開(kāi)關(guān)設(shè)計(jì)一、設(shè)計(jì)概述本設(shè)計(jì)基于單片機(jī),設(shè)計(jì)了一款紅外遙控的數(shù)顯智能開(kāi)關(guān)。該開(kāi)關(guān)可以實(shí)現(xiàn)遠(yuǎn)程遙控開(kāi)關(guān)電器,同時(shí)還能夠?qū)崿F(xiàn)電器功率的顯示和功率控制。通過(guò)本設(shè)計(jì),用戶可以方便快捷地控制家用電器的開(kāi)關(guān)和功率控制,提高了生活的便利性和舒適度。二、設(shè)計(jì)原理本設(shè)計(jì)采用STC89C52單片機(jī)作為主控芯片,具有強(qiáng)大的處理能力和低功耗特點(diǎn)。紅外遙控部分采用紅外遙控接收模塊HS0038B,該模塊可以接收紅外遙控信號(hào)并將其轉(zhuǎn)化為電信號(hào)輸出。數(shù)碼管部分采用共陽(yáng)數(shù)碼管,可在數(shù)顯極短時(shí)間內(nèi)顯示數(shù)據(jù)。三、系統(tǒng)硬件設(shè)計(jì)3.1系統(tǒng)框圖![系統(tǒng)框圖](/2021110120440428.png)圖中,紅外遙控模塊HS0038B接收到紅外遙控命令,經(jīng)過(guò)解碼后,發(fā)送到單片機(jī)MCU的P3.2引腳。另外,單片機(jī)MCU還接收來(lái)自ADC0809芯片的電壓信號(hào),通過(guò)程序計(jì)算得到功率,再通過(guò)P2口向數(shù)碼管進(jìn)行數(shù)據(jù)顯示,同時(shí)向繼電器驅(qū)動(dòng)模塊輸出控制信號(hào),驅(qū)動(dòng)繼電器切換電器通斷電路。3.2硬件電路設(shè)計(jì)![硬件電路圖](/20211101204506553.png)如圖所示,本設(shè)計(jì)采用了STC89C52單片機(jī)常規(guī)電路,加上紅外遙控接收模塊、ADC芯片以及繼電器驅(qū)動(dòng)模塊等外圍電路。其中,紅外遙控接收模塊的VCC、GND分別接到MCU的3.3V電源和GND,OUT引腳接到MCU的P3.2引腳。ADC芯片的片選信號(hào)CE需要連接到單片機(jī)的P2.7引腳,CLK和INTE#分別連接單片機(jī)的P2.6和P2.5引腳,A0~A7和EOC連接到MCU的P2.0~P2.7和P2.4引腳。而ADC芯片的輸入端AIN0~AIN1通過(guò)電阻分壓電路與電源和負(fù)載方路連接。繼電器驅(qū)動(dòng)模塊的信號(hào)輸入口IN1~IN2分別連接單片機(jī)的P1.0~P1.1引腳,輸出口N.O.和COM分別連接電器的通斷電路,使可以對(duì)電器進(jìn)行遠(yuǎn)程開(kāi)關(guān)控制。四、系統(tǒng)軟件設(shè)計(jì)4.1程序框圖![程序框圖](/20211101205214302.png)如圖所示,可將程序分為紅外遙控模塊初始化、數(shù)碼管顯示數(shù)據(jù)、測(cè)量功率、控制繼電器等多個(gè)模塊。4.2程序詳解4.2.1紅外遙控模塊初始化當(dāng)系統(tǒng)上電后,首先需要初始化紅外遙控模塊。該模塊接收到的紅外遙控?cái)?shù)據(jù)經(jīng)過(guò)解碼后,經(jīng)過(guò)串口傳輸給單片機(jī)。程序采用了定時(shí)器T0中斷方式來(lái)進(jìn)行數(shù)據(jù)接收,當(dāng)接收到數(shù)據(jù)后,進(jìn)入數(shù)據(jù)解碼函數(shù)中進(jìn)行解碼。4.2.2數(shù)碼管顯示數(shù)據(jù)數(shù)碼管的顯示采用定時(shí)器T1中斷方式。程序中在中斷函數(shù)中對(duì)數(shù)碼管段碼進(jìn)行掃描,在數(shù)碼管中依次輸出對(duì)應(yīng)數(shù)字位上的數(shù)字。4.2.3測(cè)量功率ADC芯片通過(guò)采集電流電壓信號(hào),將采樣值轉(zhuǎn)換為數(shù)字量,通過(guò)程序計(jì)算得到負(fù)載上的功率。通過(guò)使用定時(shí)器T2中斷,定時(shí)采樣電流電壓數(shù)據(jù)并進(jìn)行計(jì)算。由于采樣值是電壓電流的比值,根據(jù)功率公式就可以得到負(fù)載的功率。4.2.4控制繼電器程序中判斷控制繼電器開(kāi)啟還是關(guān)閉,將控制信號(hào)送到繼電器模塊中,從而切換電器通斷電路。這里采用了TM1638模塊的按鍵檢測(cè)功能,實(shí)現(xiàn)對(duì)繼電器控制開(kāi)關(guān)的操作。五、編程實(shí)現(xiàn)以下是主要代碼實(shí)現(xiàn)思路:紅外數(shù)據(jù)解碼函數(shù):```cvoidIR_Decode(void){uchari,k;ucharflag=0;uinttime,data=0;for(k=0;k<4;k++)//解析4個(gè)字節(jié)的數(shù)據(jù){for(i=0;i<8;i++)//探測(cè)每一個(gè)BIT{while(IRIN==0)//等待IRIN變高電平,即1的到來(lái){time++;if(time>9000)//超時(shí)處理{time=0;flag=1;break;}}if(flag==1)break;time=0;while(IRIN==1)//等待IRIN變低電平,即BIT開(kāi)始{time++;if(time>1000)//超時(shí)處理{time=0;flag=1;break;}}if(flag==1)break;if(time<15)continue;//忽略低電平噪聲干擾if(time>85)//處理高電平data|=0x01<<(7-i);}if(flag==1)break;flag=Verify(data);//檢驗(yàn)數(shù)據(jù)if(flag){data_out=data>>8;data_in=data;n

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論