freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的紅外控制器的基本原理(畢業(yè)設(shè)計(jì))(編輯修改稿)

2025-07-19 01:18 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 ,維持片內(nèi)RAM處于“餓電流”供電狀態(tài)保存信息,一直維持到VCC恢復(fù)為止。80C51的掉電保護(hù)過程則不同。當(dāng)電壓檢測(cè)電路檢測(cè)到電源電壓降低時(shí),也觸發(fā)外部中斷,在中斷服務(wù)子程序中,除了要將外部RAM中的有用數(shù)據(jù)保存以外,還要將特殊功能寄存器的有用內(nèi)容保護(hù)起來,然后對(duì)電源控制寄存器PCON進(jìn)行設(shè)置。PCON寄存器的各位定義如下。D7 D6 D5 D4 D3 D2 D1 D0SMOD———GF1GF0PDIDL其中,SMOD是波特率倍增位,在串行通信中使用。GFGF0:通用標(biāo)志,由軟件置位、復(fù)位。PD:掉電方式控制位,PD=1,則進(jìn)入掉電方式。IDL:待機(jī)方式控制位,IDL=1,則進(jìn)入待機(jī)方式。由軟件將PD置1,就可以使單片機(jī)進(jìn)入掉電保護(hù)狀態(tài)。這時(shí),單片機(jī)的一切工作都停止,只有內(nèi)部RAM和專用寄存器的內(nèi)容被保存。掉電保護(hù)時(shí)的備用電源是通過VCC引腳接入的。當(dāng)電源恢復(fù)正常后,系統(tǒng)要維持10ms的恢復(fù)時(shí)間后才能退出掉電保護(hù)狀態(tài),復(fù)位操作將重新定義專用寄存器,但內(nèi)部RAM的內(nèi)容不變,可將被保護(hù)的內(nèi)容恢復(fù) 掉電保護(hù)電路2. 低功耗設(shè)計(jì)在很多情況下,單片機(jī)要工作在供電困難的場(chǎng)合,如野外、井下和空中,對(duì)于便攜式儀器要求用電池供電,這時(shí)都希望單片機(jī)應(yīng)用系統(tǒng)能低供耗運(yùn)行。以CMOS工藝制造的80C31/80C51/87C51型單片機(jī)提供了空閑工作方式??臻e工作方式(通常也指待機(jī)工作方式)是指CPU在不需要執(zhí)行程序時(shí)停止工作,以取代不停的執(zhí)行空操作或原地踏步等待操作,達(dá)到減小功耗的目的??臻e工作方式是通過設(shè)置電源控制寄存器PCON中的IDL位來實(shí)現(xiàn)的。用軟件將IDL位置1,系統(tǒng)進(jìn)入空閑工作方式。這時(shí),送往CPU的時(shí)鐘被封鎖,CPU停止工作,但中斷控制電路、定時(shí)/計(jì)數(shù)器和串行接口繼續(xù)工作,CPU內(nèi)部狀態(tài)如堆棧指針SP、程序計(jì)數(shù)器PC、程序狀態(tài)寄存器PSW、累加器ACC及其他寄存器的狀態(tài)被完全保留下來。在空閑工作方式下,80C51消耗的電流由正常的24mA將為3mA。單片機(jī)退出空閑狀態(tài)有如下兩種方法。第一種是中斷退出。由于空閑方式下,中斷系統(tǒng)還在工作,所以任何中斷的響應(yīng)都可以使IDL位由硬件清零,而退出空閑方式下,單片機(jī)就進(jìn)入中斷服務(wù)程序。第二種是硬件復(fù)位退出。復(fù)位時(shí),各個(gè)專用寄存器都恢復(fù)默認(rèn)狀態(tài),電源控制寄存器PCON也不例外,復(fù)位使IDL清零,退出空閑工作方式。MCS—51的掉電保護(hù)也是一種節(jié)電工作方式,它和空閑工作方式一起構(gòu)成了低功耗工作方式。一旦用戶檢測(cè)到掉電發(fā)生,在VCC下降之前寫一個(gè)字節(jié)到PCON,使 PD=1,單片機(jī)進(jìn)入掉電方式。在這種方式下,片內(nèi)震蕩器被封鎖,一切功能都停止,只有片內(nèi)RAM00H—7FH單元的內(nèi)容被保留。在掉電方式下,Vcc可降至2V,使片內(nèi)RAM處于50微安左右的“餓電流”供電狀態(tài),以最小的耗電保存信息,Vcc恢復(fù)正常之前,不可進(jìn)行復(fù)位;當(dāng)Vcc正常后,硬件復(fù)位10ms即能使單片機(jī)退出掉電方式[17]。在該電路中,退出空閑工作方式采用中斷的方法。當(dāng)遙控鍵盤上的人任一個(gè)按鍵按下以后,與門輸出即為低電平,觸發(fā)INT1引腳,外部中斷1響應(yīng),使IDL位清零,退出空閑工作方式,恢復(fù)正常狀態(tài)。其硬件電路如下。 低功耗控制電路 CPU時(shí)鐘電路 時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。時(shí)鐘信號(hào)可以有兩種方式產(chǎn)生:內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式。1. 內(nèi)部時(shí)鐘方式 2051單片機(jī)有一個(gè)高增益反向放大器,用于構(gòu)成振蕩器,引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。在XTAL1和XTAL2兩端跨接晶體或陶瓷振蕩器,就構(gòu)成了穩(wěn)定的自激振蕩器,其發(fā)出的脈沖直接送入內(nèi)部時(shí)鐘發(fā)生器,見下圖,外接晶振時(shí),CC2值通常選擇為30pF左右;外接陶瓷振蕩器時(shí),CC2約為47pF。CC2對(duì)頻率有微調(diào)作用,—12MHz。為了減少寄生電容,更好的保證振蕩器穩(wěn)定可靠的工作,諧振器和電容應(yīng)盡可能安裝的與單片機(jī)芯片靠近。內(nèi)部時(shí)鐘發(fā)生器實(shí)質(zhì)上是一個(gè)二分頻的觸發(fā)器,其輸出信號(hào)是單片機(jī)工作所需的時(shí)鐘信號(hào)。2. 外部時(shí)鐘方式 外部時(shí)鐘方式是采用外部振蕩器,外部振蕩信號(hào)由XTAL2端接入后直接送至內(nèi)部時(shí)鐘發(fā)生器。輸入端XTAL1應(yīng)接地,由于XTAL2端的邏輯電平不是TTL的,故建議外接一個(gè)上拉電阻。 一般情況下,單片機(jī)時(shí)鐘輸入均采用內(nèi)部時(shí)鐘方式,外接一個(gè)震蕩電路,本系統(tǒng)采用內(nèi)部時(shí)鐘方式,晶振采用12MHz,其電路如下。 AT89C2051時(shí)鐘電路 復(fù)位電路 計(jì)算機(jī)在啟動(dòng)時(shí),系統(tǒng)進(jìn)入復(fù)位狀態(tài)。在復(fù)位狀態(tài),CPU和系統(tǒng)都處于一個(gè)確定的初始狀態(tài)或成為原始狀態(tài),在這種狀態(tài)下,所有的專用寄存器都賦予默認(rèn)值。其復(fù)位狀態(tài)見下表。 復(fù)位狀態(tài)各寄存器初值專用寄存器 復(fù)位狀態(tài) 專用寄存器 復(fù)位狀態(tài)PCACC BPSW SPDPTR P0—P3 IPIE 0000H00H00H00H07H 0000HFFH XXX0 0000B 0XX0 0000B TMOD TCONTH0TL0TH1TL1 SCON SBUF PCON00H00H00H00H00H00H00H XXXX XXXXB 0XXX 0000B 復(fù)位電路 單片機(jī)復(fù)位電路包括片內(nèi)、片外兩部分,片外復(fù)位電路通過引腳加到內(nèi)部復(fù)位電路上,內(nèi)部復(fù)位電路在每個(gè)機(jī)器周期S5P2對(duì)片外信號(hào)采樣一次,當(dāng)RST引腳上出現(xiàn)連續(xù)兩個(gè)機(jī)器周期的高電平時(shí),單片機(jī)就完成一次復(fù)位。外部復(fù)位電路就是為內(nèi)部復(fù)位電路提供兩個(gè)機(jī)器周期以上的高電平而設(shè)計(jì)的,AT89C2051通常采用上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。 上電復(fù)位電路在通電瞬間,在RC電路充電過程中,RST端出現(xiàn)正脈沖,從而使單片機(jī)復(fù)位。按鍵手動(dòng)復(fù)位又分為按鍵電平復(fù)位和按鍵脈沖復(fù)位,按鍵電平復(fù)位是將復(fù)位端通過電阻與Vcc相連,按鍵脈沖復(fù)位是利用RC微分電路產(chǎn)生正脈沖來達(dá)到復(fù)位的目的。 本系統(tǒng)設(shè)計(jì)時(shí)采用的是上電復(fù)位方式,其電路原理圖如下。 3 復(fù)位電路 紅外發(fā)射電路的設(shè)計(jì) 根據(jù)紅外發(fā)射管本身的物理特性,必須要有載波信號(hào)與即將發(fā)射的信號(hào)相“與”,然后將相“與”后的信號(hào)送發(fā)射管,才能進(jìn)行紅外信號(hào)的發(fā)射傳送,而在頻率為38KHz的載波信號(hào)下,發(fā)射管的性能最好,發(fā)射距離最遠(yuǎn),所以在硬件設(shè)計(jì)上,本設(shè)計(jì)采用38KHz的晶振產(chǎn)生載波信號(hào),與發(fā)射信號(hào)進(jìn)行邏輯“與”運(yùn)算后,通過三極管的功率驅(qū)動(dòng)到紅外發(fā)光二極管上[18]。 紅外發(fā)送電路由4001MOS或非門38KHz振蕩器,單片機(jī)發(fā)送控制電路和紅外發(fā)送管驅(qū)動(dòng)輸出電路組成,“0”時(shí),發(fā)射管不發(fā)光,“1”時(shí),紅外發(fā)送管發(fā)出38KHz調(diào)制紅外線[19]。具體的發(fā)射波形與電路如下 調(diào)制過程中的波形 紅外發(fā)射電路 紅外接收電路的設(shè)計(jì)紅外接收電路專門采用集成電路RPM6938,RPM6938有三個(gè)引腳,一個(gè)接電源一個(gè)接地,另外一個(gè)接信號(hào)端,它集光電轉(zhuǎn)換,解調(diào)和放大于一體[20]。當(dāng)收到38KHz調(diào)制紅外線時(shí),RPM6938輸出為“0”,平時(shí)輸出為“1”。,當(dāng)RPM6938收到第一個(gè)紅外脈沖時(shí),觸發(fā)INT1產(chǎn)生中斷,使單片機(jī)退出低功耗狀態(tài),進(jìn)入工作狀態(tài),同時(shí)使記數(shù)器0和定時(shí)器1開始工作 [21] 紅外接收電路 完整的系統(tǒng)電路設(shè)計(jì)圖 完整的電路圖見附錄1 4 系統(tǒng)軟件設(shè)計(jì)此系統(tǒng)是一個(gè)紅外遙控發(fā)射器,設(shè)計(jì)目的就是根據(jù)按鍵的不同,發(fā)射出不同的紅外信號(hào)。傳統(tǒng)的遙控器都是采用遙控發(fā)射專用集成芯片,例如飛利浦公司生產(chǎn)專用芯片SAA3010,三菱公司生產(chǎn)的M50462P專用發(fā)射芯片。由于這些芯片的功能鍵數(shù)及功能受到特定的限制,只適合于某一專用電器產(chǎn)品的應(yīng)用,應(yīng)用范圍受到限制。本系統(tǒng)采用單片機(jī)制作,采用編程的方法,由于編程具有靈活性,故應(yīng)用范圍較廣,操作碼可隨意設(shè)定[22]。本系統(tǒng)采用的是按紅外發(fā)射頻率的不同,來識(shí)別不同的按鍵。操作鍵設(shè)定為8個(gè),K0至K7。對(duì)應(yīng)的紅外發(fā)射頻率分別為300Hz、600 Hz、900 Hz、1200 Hz、1500 Hz、1800 Hz、2100 Hz、2400 Hz。發(fā)射時(shí)間確定為一個(gè)定值,由定時(shí)器1來定時(shí),時(shí)間為100ms,當(dāng)100ms時(shí)間到定時(shí)器1發(fā)生中斷,停止計(jì)時(shí),紅外光也停止發(fā)射。由定時(shí)/計(jì)數(shù)器0來控制發(fā)射頻率,T0作為定時(shí)器,當(dāng)T0定時(shí)時(shí)間到,然后T0重新工作定時(shí)值與前相同,如此往復(fù),紅外信號(hào)就按一定的時(shí)間間隔發(fā)射出去。通過設(shè)定T0的定時(shí)時(shí)間來控制紅外信號(hào)的發(fā)射頻率[23]。平時(shí)遙控器工作在空閑方式下,當(dāng)有鍵按下時(shí),由外部中斷1產(chǎn)生中斷,使CPU回到工作狀態(tài),待執(zhí)行完操作后又回到低功耗才狀態(tài)。主程序主要由初始化程序、鍵盤掃描程序,定時(shí)器0中斷服務(wù)程序、定時(shí)器1中斷服務(wù)程序,外部中斷1中斷服務(wù)程序組成。主程序流程圖如下: START調(diào)初始化程序進(jìn)入低功耗節(jié)電方式外部中斷1中斷CPU退出低功耗方式T0時(shí)間到T1時(shí)間到關(guān)T0、T1 調(diào)延時(shí)程序K1鍵是否按下K2鍵是否按下K1鍵是否松開啟動(dòng)定時(shí)器T1定時(shí)50msK3鍵是否按下調(diào)延時(shí)程序 N N N … Y Y Y .… … … N Y N Y N Y 遙控發(fā)射主程序流程圖當(dāng)K2至K7鍵按下時(shí),執(zhí)行的程序類似于按下K1鍵所執(zhí)行的程序。 偽指令和初始化程序 在初始化程序前,需要定義一些相關(guān)的偽指令,偽指令不能命令CPU執(zhí)行某中操作,也沒有對(duì)應(yīng)的機(jī)器代碼,它的作用僅用來給匯編程序提供某中信息。偽指令是匯編程序能夠識(shí)別的匯編命令?!狵7來定義;各頻率紅外信號(hào)對(duì)應(yīng)的定時(shí)器T0的初值分別用K0H、K0L——K7H、K7L來定義,這樣做不影響整個(gè)程序的執(zhí)行,但便于閱讀和理解程序。定義格式如下:K0 BIT … K7 BIT 、600 Hz、900 Hz、1200 Hz、1500 Hz、1800 Hz、2100 Hz、2400 Hz,而T1的定時(shí)時(shí)間是50ms故在這七種狀態(tài)下面,、30次、45次、60次、75次、90次、105次、120次。故定時(shí)器T0對(duì)應(yīng)的定時(shí)時(shí)間分別為50ms/150ms/50ms/450ms/60、50ms/750ms/90、50ms/1050ms/120,即分別為:、、。由前述定時(shí)器初值計(jì)算方法可算出各狀態(tài)定時(shí)器的初值。定時(shí)器T1的定時(shí)初值計(jì)算如下:由于工作在方式一,時(shí)鐘頻率為12MHz,故定時(shí)最大值M為65536初值 X=M—定時(shí)值/T X=65536—50000/1=15536即T1的初值為15536,轉(zhuǎn)化為十六進(jìn)制為3CB0H各情況下,定時(shí)T0的定時(shí)初值計(jì)算如下:當(dāng)按下K0鍵時(shí),此時(shí)定時(shí)器初值為 X0= 65536—3330/1=62206 轉(zhuǎn)化為十六進(jìn)制為0F2FEH當(dāng)按下K1鍵時(shí),此時(shí)定時(shí)器初值為 X1=65536—1670/1=63866 轉(zhuǎn)化為十六進(jìn)制為0F97AH 當(dāng)按下K2鍵時(shí),此時(shí)定時(shí)器初值為 X2=655361110/1=64426 轉(zhuǎn)化為十六進(jìn)制為0FBAAH當(dāng)按下鍵K3時(shí),此時(shí)定時(shí)器初值為 X3=65536833/1=64703 轉(zhuǎn)化為十六進(jìn)制為0FCBFH當(dāng)按下鍵K4時(shí),此時(shí)定時(shí)器初值為 X4=65536667/1=64869 轉(zhuǎn)化為十六進(jìn)制為0FD65H當(dāng)按下鍵K5時(shí),此時(shí)定時(shí)器初值為 X5=65536556/1=64980 轉(zhuǎn)化為十六進(jìn)制為0FDD4H當(dāng)按下鍵K6時(shí),此時(shí)定時(shí)器初值為 X6=65536476/1=65060 轉(zhuǎn)化為十六進(jìn)制數(shù)為0FE24H當(dāng)按下鍵K7時(shí),此時(shí)定時(shí)器初值為 X7=65536417/1=65119 轉(zhuǎn)化為十六進(jìn)制數(shù)為0FE5FH 為了便于理解源程序,各種情況下定時(shí)器的初值采用K0H—K7H和K0L—K7L來表示,分別存入定時(shí)器的高8位和低8位。采用賦值偽指令EQU,格式如下:K0H EQU 0F2HK0L
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1