單片機(jī)廚房提醒器課程設(shè)計(jì)_第1頁
單片機(jī)廚房提醒器課程設(shè)計(jì)_第2頁
單片機(jī)廚房提醒器課程設(shè)計(jì)_第3頁
單片機(jī)廚房提醒器課程設(shè)計(jì)_第4頁
單片機(jī)廚房提醒器課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1、課程設(shè)計(jì)目的1、通過本次課程設(shè)計(jì)加深對(duì)單片機(jī)課程的全面認(rèn)識(shí)復(fù)習(xí)和掌握,對(duì)單片機(jī)課程的應(yīng)用進(jìn)一步的了解。知道單片機(jī)的各個(gè)引腳的功能,以及如何通過編寫的程序讓它實(shí)現(xiàn)我們所需要的功能,期間要進(jìn)行電路的焊接和程序調(diào)試,最后實(shí)現(xiàn)我們所需要的功能。2、掌握定時(shí)器、外部中斷的設(shè)置和編程原理。3、通過此次課程設(shè)計(jì)能夠?qū)纹瑱C(jī)軟硬件結(jié)合起來,對(duì)程序進(jìn)行編輯,校驗(yàn)。4、提高綜合以及靈活應(yīng)用所學(xué)知識(shí),并且從中培養(yǎng)了針對(duì)課題需要,選擇和查閱有關(guān)手冊(cè)和圖表以及文獻(xiàn)資料的自學(xué)能力,提高組成系統(tǒng)和變成以及調(diào)試的動(dòng)手能力。2、課程設(shè)計(jì)正文2.1 設(shè)計(jì)所需器材電阻:10K (7個(gè)) 300(7個(gè))4.7K(4個(gè))開關(guān):5個(gè)

2、電容:30F (1個(gè)) 1kF(1個(gè))晶振:12MHZ(1個(gè))集成芯片:CD4511 (1片) AT89C51(1片) 三極管:NPN8050(5個(gè))共陰極數(shù)碼管:4個(gè)蜂鳴器:1個(gè)底座:DIP40(2個(gè))DIP20(1個(gè))萬能電路板:1個(gè)2.2 設(shè)計(jì)任務(wù)和要求本次課程設(shè)計(jì),我們這一組要求做的是廚房提醒器設(shè)計(jì)。提醒器在家庭中很實(shí)用,能夠幫助提醒人做飯或者做菜的時(shí)間等,市面上賣的成品提醒器一般都比較貴,我們可以利用已經(jīng)學(xué)過的知識(shí)自制簡易的提醒器。設(shè)計(jì)的主要內(nèi)容是采用AT89S52作為控制單元,實(shí)現(xiàn)提醒器的設(shè)計(jì)。(1)設(shè)計(jì)鍵盤輸入電路;(2)設(shè)計(jì)顯示電路;(3)合理分配地址,編寫寫程序;(4)利用P

3、ROTEL設(shè)計(jì)硬件電路原理圖和PCB圖;(5)軟硬件聯(lián)機(jī)調(diào)試;(6)書寫實(shí)驗(yàn)報(bào)告。主要技術(shù)要求:(1)設(shè)置提醒器的“開始”鍵,“清除”鍵,“分十位加一”鍵,“分個(gè)位加一”鍵和“秒十位加一”鍵。剛通電時(shí)和按下“清除”鍵時(shí),均可使顯示器顯示00:00。按下開始鍵,則按照設(shè)定的時(shí)間減一定時(shí)。當(dāng)顯示器再次顯示為00:00時(shí)則蜂鳴器提醒定時(shí)到。(2)4個(gè)數(shù)碼管分別顯示分十位,分個(gè)位,秒十位。 設(shè)計(jì)基本原理廚房提醒器設(shè)計(jì),主要的部分是AT89S52,編寫程序,實(shí)現(xiàn)軟硬結(jié)合,實(shí)現(xiàn)提醒功能。采用中斷的方式,先清除按鈕,然后設(shè)置分十位,分個(gè)位,秒十位,然后按開始按鈕開始倒計(jì)時(shí),當(dāng)時(shí)間變?yōu)?0:00時(shí)蜂鳴器提醒則

4、目的實(shí)現(xiàn)。 器件說明 .1 CD4511顯示譯碼管CD4511是一個(gè)用于驅(qū)動(dòng)共陰極 LED (數(shù)碼管)顯示器的 BCD 碼七段碼譯碼器,特點(diǎn):具有BCD轉(zhuǎn)換、消隱和鎖存控制、七段譯碼及驅(qū)動(dòng)功能的CMOS電路能提供較大的拉電流??芍苯域?qū)動(dòng)LED顯示器。CD4511 是一片 CMOS BCD鎖存/7 段譯碼/驅(qū)動(dòng)器,引腳排列如圖 1 所示。其中a b c d 為 BCD 碼輸入,a為最低位。LT為燈測試端,加高電平時(shí),顯示器正常顯示,加低電平時(shí),顯示器一直顯示數(shù)碼“8”,各筆段都被點(diǎn)亮,以檢查顯示器是否有故障。BI為消隱功能端,低電平時(shí)使所有筆段均消隱,正常顯示時(shí), B1端應(yīng)加高電平。另外 CD4

5、511有拒絕偽碼的特點(diǎn),當(dāng)輸入數(shù)據(jù)越過十進(jìn)制數(shù)9(1001)時(shí),顯示字形也自行消隱。LE是鎖存控制端,高電平時(shí)鎖存,低電平時(shí)傳輸數(shù)據(jù)。ag是 7 段輸出,可驅(qū)動(dòng)共陰LED數(shù)碼管。另外,CD4511顯示數(shù)“6”時(shí),a段消隱;顯示數(shù)“9”時(shí),d段消隱,所以顯示6、9這兩個(gè)數(shù)時(shí),字形不太美觀 圖3是 CD4511和CD4518配合而成一位計(jì)數(shù)顯示電路,若要多位計(jì)數(shù),只需將計(jì)數(shù)器級(jí)聯(lián),每級(jí)輸出接一只 CD4511 和 LED 數(shù)碼管即可。所謂共陰 LED 數(shù)碼管是指 7 段 LED 的陰極是連在一起的,在應(yīng)用中應(yīng)接地。限流電阻要根據(jù)電源電壓來選取,電源電壓5V時(shí)可使用300的限流電阻。圖1 CD451

6、1引腳圖圖2 CD4511各引腳接線圖其功能介紹如下: :4腳是消隱輸入控制端,當(dāng)BI=0 時(shí),不管其它輸入端狀態(tài)如何,七段數(shù)碼管均處于熄滅(消隱)狀態(tài),不顯示數(shù)字。:3腳是測試輸入端,當(dāng)BI=1,LT=0 時(shí),譯碼輸出全為1,不管輸入 DCBA 狀態(tài)如何,七段均發(fā)亮,顯示“8”。它主要用來檢測數(shù)碼管是否損壞。 :鎖定控制端,當(dāng)LE=0時(shí),允許譯碼輸出。 LE=1時(shí)譯碼器是鎖定保持狀態(tài),譯碼器輸出被保持在LE=0時(shí)的數(shù)值。A1、A2、A3、A4、為8421BCD碼輸入端。 a、b、c、d、e、f、g:為譯碼輸出端,輸出為高電平1有效。CD4511具有鎖存、譯碼、消隱功能,通常以反相器作輸出級(jí),

7、通常用以驅(qū)動(dòng)LED。各引腳的名稱:其中7、1、2、6分別表示A、B、C、D;5、4、3分別表示LE、BI、LT;13、12、11、10、9、15、14分別表示 a、b、c、d、e、f、g。左邊的引腳表示輸入,右邊表示輸出,還有兩個(gè)引腳8、16分別表示的是VDD、VSS。 (2).鎖存功能:譯碼器的鎖存電路由傳輸門和反相器組成,傳輸門的導(dǎo)通或截止由控制端LE的電平狀態(tài)。 (3)譯碼 :CD4511譯碼用兩級(jí)或非門擔(dān)任,為了簡化線路,先用二輸入端與非門對(duì)輸入數(shù)據(jù)B、C進(jìn)行組合,得出四項(xiàng),然后將輸入的數(shù)據(jù)A、D一起用或非門譯碼。 (4)消隱 BI為消隱功能端,該端施加某一電平后,迫使B端輸出為低電平

8、,字形消隱。 圖1 AT89C51的引腳圖 圖1 AT89C51的引腳圖.2 AT89C51單片機(jī) AT89C51的引說明和功能說明如下:VCC :AT89C51電源正極輸入,接+5V電壓。 GND :電源接地端。 XTAL1 :接外部晶振的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一反相放大器輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。它采用外部振蕩器時(shí),些引腳應(yīng)接地。 XTAL2 :接外部晶振的一個(gè)引腳。在片內(nèi)接至振蕩器的反相放大器輸出端和內(nèi)部時(shí)鐘發(fā)生器輸入端。當(dāng)采用外部振蕩器時(shí),則此引腳接外部振蕩信號(hào)的輸入。 RST :AT89C51的復(fù)位信號(hào)輸入引腳,高電位工作,當(dāng)要對(duì)芯片又時(shí),只要將此引腳電位提升到高電位

9、,并持續(xù)兩個(gè)機(jī)器周期以上的時(shí)間,AT89C51便能完成系統(tǒng)復(fù)位的各項(xiàng)工作,使得內(nèi)部特殊功能寄存器的內(nèi)容均被設(shè)成已知狀態(tài)。 ALE/ :ALE是英文"ADDRESS LATCH ENABLE"的縮寫,表示允許地址鎖存允許信號(hào)。當(dāng)訪問外部存儲(chǔ)器時(shí),ALE信號(hào)負(fù)跳變來觸發(fā)外部的8位鎖存器 (如74LS373),將端口P0的地址總線(A0-A7)鎖存進(jìn)入鎖存器中。在非訪問外部存儲(chǔ)器期間,ALE引腳的輸出頻率是系統(tǒng)工作頻率的 1/16,因此可以用來驅(qū)動(dòng)其他外圍芯片的時(shí)鐘輸入。當(dāng)問外部存儲(chǔ)器期間,將以1/12振蕩頻率輸出。 /VPP 該引腳為低電平時(shí),則讀取外部的程序代碼 (存于外部E

10、PROM中)來執(zhí)行程序。因此在8031中,EA引腳必須接低電位,因?yàn)槠鋬?nèi)部無程序存儲(chǔ)器空間。如果是使用AT89C51或其它內(nèi)部有程序空間的單片機(jī)時(shí),此引腳接成高電平使程序運(yùn)行時(shí)訪問內(nèi)部程序存儲(chǔ)器,當(dāng)程序指針PC值超過片內(nèi)程序存儲(chǔ)器地址(如8051/8751/89C51的PC超過0FFFH)時(shí),將自動(dòng)轉(zhuǎn)向外部程序存儲(chǔ)器繼續(xù)運(yùn)行。 此外,在將程序代碼燒錄至8751內(nèi)部EPROM、89C51內(nèi)部FALSH時(shí),可以利用此引腳來輸入提供編程電壓(8751為2lV、AT89C51為12V、8051是由生產(chǎn)廠方一次性加工好)。 :此為"Program Store Enable"的縮寫。訪

11、問外部程序存儲(chǔ)器選通信號(hào),低電平有效。在訪問外部程序存儲(chǔ)器讀取指令碼時(shí),每個(gè)機(jī)器周期產(chǎn)生二次PSEN信號(hào)。在執(zhí)行片內(nèi)程序存儲(chǔ)器指令時(shí),不產(chǎn)生PSEN信號(hào),在訪問外部數(shù)據(jù)時(shí),亦不產(chǎn)生PSEN信號(hào)。 P0口(P0.0P0.7)是一個(gè)8位漏極開路雙向輸入輸出端口,當(dāng)訪問外部數(shù)據(jù)時(shí),它是地址總線(低8位)和數(shù)據(jù)總線復(fù)用。外部不擴(kuò)展而單片應(yīng)用時(shí),則作一般雙向IO口用。P0口每一個(gè)引腳可以推動(dòng)8個(gè)LSTTL負(fù)載。 P2口(P2.0P2.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),當(dāng)訪問外部程序存儲(chǔ)器時(shí),它是高8位地址。外部不擴(kuò)展而單片應(yīng)用時(shí),則作一般雙向IO口用。每一個(gè)引腳可以推動(dòng)4個(gè)

12、LSTL負(fù)載。 P1口(P1.0P1.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),其輸出可以推動(dòng)4個(gè)LSTTL負(fù)載。僅供用戶作為輸入輸出用的端口。 P3口(P3.0P3.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),它還提供特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部隨機(jī)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋F涮厥夤δ芤_分配如下: P3.0 RXD串行通信輸入 P3.1 TXD串行通信輸出 P3.2 外部中斷0輸入,低電平有效 P3.3外部中斷1輸入,低電平有效 P3.4 T0計(jì)數(shù)器0外部事件計(jì)數(shù)輸入端 P3.5 T1計(jì)數(shù)器1外部事件計(jì)數(shù)輸入端

13、P3.6 外部隨機(jī)存儲(chǔ)器的寫選通,低電平有效 P3.7 外部隨機(jī)存儲(chǔ)器的讀選通,低電平有效 2、內(nèi)存空間1、內(nèi)部程序存儲(chǔ)器(FLASH)4K字節(jié)。 2、外部程序存儲(chǔ)器(ROM)64K字節(jié)。 3、內(nèi)部數(shù)據(jù)存儲(chǔ)器(RAM)256字節(jié)。 4、外部數(shù)據(jù)存儲(chǔ)器(RAM)64K字節(jié)。 只讀程序存儲(chǔ)器和外部數(shù)據(jù)存儲(chǔ)器分別如下圖所示: 圖2 只讀程序存儲(chǔ)器 圖3 外部數(shù)據(jù)存儲(chǔ)器圖4 內(nèi)部低128字節(jié)地址RAM空間圖6 特殊功能寄存器位地址空間圖5 內(nèi)部高128個(gè)字節(jié)地址空間的特殊功能寄存器區(qū)3. 復(fù)位后寄存器狀態(tài)4、中斷入口5、PSW程序狀態(tài)字CY(PSW.7) :高位進(jìn)位標(biāo)志位。常用“C”表示。 AC(PS

14、W.6) :輔助進(jìn)位木標(biāo)志。 F0(PSW.5) :用戶標(biāo)志位。 RS1(PSW.4) :寄存器組選擇位1。 RS0(PSW.3) :寄存器組選擇位0。 OV(PSW.2) :溢出標(biāo)志位。 (PSW.1) :保留位,無定義。 P(PSW.0) :奇偶校驗(yàn)位,在每一個(gè)指令周期中,若累加器(A)中的“1”的位個(gè)數(shù)是奇數(shù)個(gè)則P1,偶數(shù)個(gè)則P0。寄存器的選擇:IE中斷允許寄存器EA(IE.7) :EA0時(shí),所有中斷停用(禁止中斷)。 EA1時(shí),各中斷的產(chǎn)生由個(gè)別的允許位決定。 (IE.6) :保留位,無定義。 ET2(IE.5) :允許計(jì)時(shí)器2溢出的中斷(8052使用)。 ES(IE.4) :允許串行

15、端口的中斷(ES1允許,ES0禁止)。 ET1(IE.3) :允許計(jì)時(shí)器1中斷(ET11允許,ET10禁止)。 EX1(IE.2) :允許外部中斷INT1的中斷(EX11允許,EX10禁止)。 ET0(IE.1) :允許計(jì)時(shí)器0中斷(ET01允許,ET00禁止)。 EX0(IE.0) :允許外部中斷INT0的中斷(EX01允許,EX00禁止)。 IP中斷優(yōu)先次序寄存器TMOD定時(shí)計(jì)數(shù)器工作方式控制寄存器 GATE :當(dāng)GATE1時(shí),INT0或INT1引腳且為高電平,同時(shí)TCON中的TR0或TR1控制位如為1時(shí),定時(shí)計(jì)數(shù)器0或1才會(huì)工作。 若GATE0,同時(shí)只要TCON中的TR0或TR1控制位如

16、為1時(shí),定時(shí)計(jì)數(shù)器0或1即可工作。 CT :選擇定時(shí)或計(jì)數(shù)器模式。當(dāng)CT1為計(jì)數(shù)器,由外部引腳T0或T1輸入計(jì)數(shù)脈沖。CT0時(shí)為計(jì)時(shí)器,由內(nèi)部系統(tǒng)時(shí)鐘提供計(jì)時(shí)工作脈沖。M1 :方式選擇位1。 M0 :方式選擇位0。 M1、M2的操作方式選擇定義如下:TCON定時(shí)計(jì)數(shù)器工作方式控制寄存器 TF1(TCON.7) :計(jì)時(shí)器 1溢出標(biāo)志,當(dāng)計(jì)時(shí)溢出時(shí),由硬件設(shè)定為1,在執(zhí)行相對(duì)的中斷服務(wù)程序后則自動(dòng)清0。 TR1(TCON.6) :計(jì)時(shí)器1啟動(dòng)控制位,可以由軟件來設(shè)定或清除。TR1時(shí)啟 動(dòng)計(jì)時(shí)器工作,TRl=0時(shí)關(guān)閉。 TF0(TCON.5) :計(jì)時(shí)器0溢出標(biāo)志,當(dāng)計(jì)時(shí)溢出時(shí),由硬件設(shè)定為1,在執(zhí)行

17、相對(duì)的中斷服務(wù)程序后則自動(dòng)清0。 TR0(TCON.4) :計(jì)時(shí)器0啟動(dòng)控制位,可以由軟件來設(shè)定或清除。TR0=1時(shí),啟動(dòng)計(jì)時(shí)器工作,TR0=時(shí)關(guān)閉。 IE1(TCON.3) :外部中斷1工作標(biāo)志,當(dāng)外部中斷被檢查出來時(shí),硬件自動(dòng)設(shè)定此位,在執(zhí)行中斷服務(wù)程序后,則清0。 IT1(TCON.2) : 外部中斷1工作形式選擇,IT1=1時(shí),由下降緣產(chǎn)生外部中斷,IT1=0時(shí),則為低電位產(chǎn)生中斷。 IE0(TCON.1) :外部中斷0工作標(biāo)志,當(dāng)外部中斷被檢查出來時(shí),硬件自動(dòng)設(shè) 定此位,在執(zhí)行中斷服務(wù)程序后,則清0。 IT0(TCON.0) :外部中斷0工作形式選擇,IT1=1時(shí),由下降沿產(chǎn)生外部中

18、斷 IT1=0時(shí),則為低電位產(chǎn)生中斷。SCON定時(shí)計(jì)數(shù)器工作方式控制寄存器SM0(SCON.7) : 串行通訊工作方式設(shè)定位0。 SM1(SCON.6) :串行通訊工作方式設(shè)定位1。 SM2(SCON.5) :允許方式2或方式3多機(jī)通訊控制位。在方式2或方式3時(shí),如SM2=1,REN=1,則從機(jī)處于只有接收到RB8=1(地址幀)才激發(fā)中斷請(qǐng)求標(biāo)志位RI=1,向主機(jī)請(qǐng)求中斷處理。被確認(rèn)為尋址的從機(jī)復(fù)位SM2=0,才能接收RB8=0的數(shù)據(jù)幀;在方式1時(shí),如SM2=l,則只有在接收到有效停止位時(shí)才置位中斷請(qǐng)求標(biāo)志位RI=1;在方式0時(shí),SM2應(yīng)為0。 REN(SCON.4) :REN,允許/禁止串行

19、接收控制位。由軟件置位REN=1為允許串行接收狀態(tài),可啟動(dòng)串行接收器RXD,開始接收信息。軟件復(fù)位REN0,則禁止接收。 TB8(SCON.3) :在方式2或方式3,它為要發(fā)送的第9位數(shù)據(jù),按需要由軟件置位或清0。例如,可用作數(shù)據(jù)的校驗(yàn)位或多機(jī)通訊中表示地址幀/數(shù)據(jù)幀的標(biāo)志位。 RB8(SCON.2) :在方式2或方式3,是接收到的第9位數(shù)據(jù)。在方式l,若SM20,則RB8是接收到的停止位。方式0不用RB8。 TI(SCON.1) :發(fā)送中斷請(qǐng)求標(biāo)志位。在方式0,當(dāng)串行發(fā)送數(shù)據(jù)第8位結(jié)束時(shí),由內(nèi)部硬件自動(dòng)置位TI=l,向主機(jī)請(qǐng)求中斷,響應(yīng)中斷后必須用軟件復(fù)位TI=0。在其他方式中,則在停止位開

20、始發(fā)送時(shí)由內(nèi)部硬件置位,必須用軟件復(fù)位。 RI(SCON.0) :接收中斷請(qǐng)求標(biāo)志位。在方式0,當(dāng)串行接收到第8位結(jié)束時(shí)由內(nèi)部硬件自動(dòng)置位RI=1,向主機(jī)請(qǐng)求申斷,響應(yīng)中斷后必須用軟件復(fù)位RI=0。在其他方式中,串行接收到停止位的中間時(shí)刻由內(nèi)部硬件置位RI1(例外情況見SM2說明),必須由軟件復(fù)位RI=0。 其中SM0、SM1按下列組合確定串行通訊的工作方式: PCON電源控制寄存器 SMOD :雙倍波特率控制位。 :保留。 GF1 :通用標(biāo)志。 GF0 :通用標(biāo)志。 PD :PD1時(shí),進(jìn)入掉電方式。 IDL :IDL1時(shí),進(jìn)入凍結(jié)方式。 6、常用波特率與定時(shí)計(jì)數(shù)器1各參數(shù)關(guān)系 三、數(shù)碼管數(shù)碼

21、管可以分為共陽極與共陰極兩種,共陽極就是把所有LED的陽極連接到共同接點(diǎn)com,而每個(gè)LED的陰極分別為a、b、c、d、e、f、g及 dp(小數(shù)點(diǎn));共陰極則是把所有LED的陰極連接到共同接點(diǎn)com,而每個(gè)LED的陽極分別為a、b、c、d、e、f、g及dp(小數(shù)點(diǎn))。圖9 共陰極內(nèi)部接線圖此設(shè)計(jì)采用的是共陰極數(shù)碼管,共陰極的LED顯示管的發(fā)光二極管的陽極連在一塊,通常此公共陰極接地,當(dāng)某個(gè)發(fā)光二極管的陽極為高電平的時(shí)候,發(fā)光二極管點(diǎn)亮,相應(yīng)的段被顯示出來,為了使LED顯示器不同的符號(hào)和數(shù)字,就要把不同段的發(fā)光二極管點(diǎn)亮,這樣就要為LED顯示器提供代碼,因?yàn)檫@些代碼可以使LED相應(yīng)的段發(fā)光,從而

22、顯示不同的字型,因而該代碼稱之為段碼。2.3 設(shè)計(jì)方案根據(jù)設(shè)計(jì)的任務(wù)和要求,需要進(jìn)行硬件和軟件的結(jié)合。 硬件設(shè)計(jì) 具體的電路原理圖如下圖10所示: 軟件的分析此廚房提醒器采用的是提醒的方式,有五個(gè)按鍵,分別是“開始”鍵,“清除”鍵,“分十位加一”鍵,“分個(gè)位加一”鍵和“秒十位加一”鍵,程序需要設(shè)置各個(gè)按鍵的時(shí)間,然后按開始鍵倒計(jì)時(shí),當(dāng)再次顯示00:00時(shí)則蜂鳴器提醒到時(shí)。具體的程序流程圖如下圖11所示:圖10 廚房提醒器原理圖開始初始化設(shè)置(清零)秒十位設(shè)置是否按下?Y秒十位加一是否為6?Y清零秒十位分個(gè)位設(shè)置NN是否按下?Y分個(gè)位位加一是否為10?Y清零分個(gè)位NN分十位設(shè)置是否按下?Y分十位

23、位加一是否為6?Y清零分十位NN掃描開始鍵是否按下YN定時(shí)初始化設(shè)置顯示設(shè)置值按秒減一是否為0NY蜂鳴器報(bào)警圖11 流程圖圖12 廚房提醒器PCB圖.1程序如下: MIAOS EQU P3.4 FENGE EQU P3.5 FENSH EQU P3.6 KAISH EQU P3.7 ORG 0000H JMP MAIN ORG 000BH LJMP TIMERO ORG 0030HMAIN:clr p2.0 MOV 43H,#00 ;分十位 程序設(shè)計(jì):MOV 42H,#00 ;分個(gè)位 MOV 41H,#00 ;秒十位 MOV 40H,#00 ;秒個(gè)位 MOV R4,#250LOOP1: JB

24、MIAOS,LOOP2 ;秒十位的設(shè)置 clr p2.0 CALL DELAY JB MIAOS,LOOP2 MOV A,41H INC A MOV 41H,A JNB MIAOS,$ CJNE A,#06H,LOOP2 MOV 41H,#00LOOP2: JB FENGE,LOOP3 ;分個(gè)位的設(shè)置 clr p2.0 CALL DELAY JB FENGE,LOOP3 MOV A,42H INC A MOV 42H,A JNB FENGE,$ CJNE A,#0AH,LOOP3 MOV 42H,#00LOOP3:JB FENSH,START ;分十位的設(shè)置 clr p2.0 CALL DEL

25、AY JB FENSH,START MOV A,43H INC A MOV 43H,A JNB FENSH,$ CJNE A,#06H,START MOV 43H,#00START:JB KAISH,LOOP5 ;掃描開始鍵 clr p2.0 CALL DELAY JB KAISH,LOOP5 ;掃描開始鍵 MOV TMOD,#01H ;定時(shí)器初始化 MOV TH0,#0F0H MOV TL0,#60H SETB ET0 SETB EA MOV R4,#250 SETB TR0HEDIS: CALL DISP SJMP loop1LOOP5: ACALL DISP SJMP LOOP1DISP

26、: MOV P0,#00H MOV P1,40H setb P0.3 ACALL DELAY MOV P0,#00H MOV P1,41H setb P0.2 ACALL DELAY MOV P0,#00H MOV P1,42H setb P0.1 ACALL DELAY MOV P0,#00H MOV P1,43H setb P0.0 ACALL DELAY RETDELAY:MOV R6,#100DEL: DJNZ R6,DEL RET;中斷程序:TIMERO: MOV TH0,#0F0H MOV TL0,#60H PUSH ACC PUSH PSW DJNZ R4,N5 ;定時(shí)1秒 MO

27、V R4,#250 MOV A,41H MOV B,#10 MUL AB ; add a,40h;a=秒 MOV 50H,A MOV A,43H MOV B,#10 MUL AB add a,42h;a=分 MOV 51H,A MOV A,50H CJNE A,#0,LOOP10 MOV A,51H CJNE A,#0,LOOP11 lcall speaker SJMP N4LOOP11:MOV 50H,#59 DEC 51H SJMP N4LOOP10:DEC 50HN4: MOV A,50H MOV B,#10 DIV AB MOV 41H,A MOV 40H,B MOV A,51H MOV B,#10 DIV AB MOV 43H,A MOV 42H,BN5: POP PSW POP ACC RETISPEAKER:CLR TR0 setb P2.0 RET END2.3 軟件與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論