版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄 目錄I摘 要I第一章 緒論11.1 智能定時插座的發(fā)展概況11.2 本設計研究的主要內容2第二章 智能定時開關插座的控制方案321智能定時開關插座的控制方案32.1.1 智能定時開關插座的總體框圖32.2 智能定時開關插座的框圖原理32.2.1 智能定時開關插座的工作過程3第三章 智能定時開關插座的硬件電路設計53.1 智能定時開關插座的電源電路53.2 單片機AT89S51芯片概述53.3 智能定時開關插座的復位及時鐘電路63.4 智能定時開關插座的顯示電路73.5 智能定時開關插座的繼電器電路83.6 智能定時開關插座的器件選擇83.6.1 智能定時開關插座的外觀質量檢查83.6.2
2、 智能定時開關插座的電氣性能的篩選93.6.3 智能定時開關插座的元器件的檢測93.7 智能定時開關插座的元件清單10第四章 智能定時開關插座的軟件設計124.1 智能定時開關插座的的軟件設計124.1.1智能定時開關插座的主程序流程圖124.1.2智能定時開關插座的按鍵流程圖124.1.3 智能定時開關插座的定時流程圖134.1.4 智能定時開關插座的時間顯示流程圖14第五章 智能定時開關插座的仿真設計165.1 智能定時開關插座的仿真165.1.1 KEIL工程的建立165.2.2源文件的輸入17參考文獻21致 謝22附錄23附錄1 智能定時開關插座的程序設計23附錄2 智能定時開關插座的
3、設計成品35教=學摘 要 本設計研究的是智能定時開關插座,它可以在沒有人參與的情況下,能夠自動的切斷或通電,給日常生活中帶來許多的方便。本設計首先進行了硬件電路的設計,設計的主要內容是利用AT89S51芯片通過驅動芯片74LS244一路通過數碼管顯示時間,另一路通過驅動芯片74LS244到繼電器吸合電路,定時時間到后,繼電器能夠吸合動作從而驅動開關插座,切斷或通電電源。然后設計了軟件部分,并對程序進行仿真,最后進行了制作和調試。關鍵詞:單片機 定時 開關教=學SummaryThe design of the intelligent time switch socket, it can part
4、icipate in no circumstances, be able to automatically cut off or the power to bring a lot of convenience in daily life. This design was first hardware circuit design,design of the main content is to use AT89S51 chip all the way through the drive through the 74LS244 chip digital display time,another
5、wany to relay through the driver IC 74LS244 pull circuit,time to time,the relay can pull action to drive switch socket, cut off or power supply. And then design the software part, and process simulation, and finally to the production and debugging.Keywords: Chip Timer Switch第一章 緒論1.1 智能定時開關插座的發(fā)展概況隨著
6、科學技術的進步,我國的電力電子技術和電子器件都有了很大的發(fā)展.智能開關插座技術的發(fā)展,從根本上解決了傳統(tǒng)電器啟動的額定電流高,使傳統(tǒng)電器易造成過熱引起高溫而加速絕緣老化、電壓降過大而影響正常運轉以及大的沖擊力縮短設備的使用壽命等各種弊端。為此充分利用現有的技術、人才和資源優(yōu)勢,加強國際合作和技術交流,爭取國內外各方面的有利因素,提高家庭的生活質量,減少不必要的人生傷害,增強人類的節(jié)能意識,為我們子孫后代保留一點資源。為大家以后的生活更美好。因此,論述了定時開關插座的功能、特點及應用,為家庭、企業(yè)創(chuàng)造給美好的環(huán)境。定時開關插座在國內外都已經成熟,給生活中帶來許多的方便,比如家中的魚缸你可以設置供
7、養(yǎng)的時間、或者對家中的飲水機也可以進行設置時間,以免長時間的滾水造成飲水不健康等;全面集成遠程控制、定時控制等智能和家電控制功能;即插即用,輕松實現家庭智能,質量可靠,性能穩(wěn)定,無需再擔心家的安全,財產的安全,生命的安全。您可以放心地工作,安心地生活,開心地游玩,有品質,所以有信心。定時開關插座以服務為本、影響生活、改變生活、創(chuàng)造新的生活方式的最直觀體現,也是眾多智能家居廠商由產品讓人們享受到的現實,只有更加貼近實用、易用和人性化的智能家居概念,真正體現智能家居的價值,這也是現代科技價值的核心所在。定時開關插座在國外已經十分普及,基于方便便捷的開關理念,2006年引進中國,有了定時開關插座,可
8、實現24小時之內任何時段的定時開啟及關閉功能,從根本上解決了不需要太多的關注,即使在你上班的時候也不用太過的麻煩,并且定時開關插座通過OEM等方式已經成功的在海外市場銷售了13年,出口量始終維持在每年500萬件以上的水平。并且定時開關插座在國外發(fā)展已經成熟,自動控制開關插座去年就出口了600多萬件,所以這種好產品全部出口國外銷售,定時開關插座充分的利用了以節(jié)能為最終目的給生活到來的便捷,加快生活節(jié)奏,幾年內出口到了70多個國家和地區(qū)。即使在金融危機這樣的惡劣市場環(huán)境下,自動開關插座的在國際市場的銷售額比去年同期還是增長了55%。在國外節(jié)能已經成為生活中的一部分,所以定時開關插座在其中也起到了不
9、可抹滅的作用。 1.2 本設計研究的主要內容本設計研究的主要內容是智能定時開關插座,本設計首先進行了硬件電路的設計,設計的主要內容是利用AT89S51芯片通過驅動芯片74LS244一路通過數碼管顯示時間,另一路通過驅動芯片74LS244到繼電器吸合電路,定時時間到后,繼電器能夠吸合動作從而驅動開關插座,切斷或通電電源。然后設計了軟件部分,并對程序進行仿真,最后進行了制作和調試,這就是本次設計的主要內容。第二章 智能定時開關插座的控制方案21智能定時開關插座的控制方案本設計采用的是AT89S51單片機芯片,將交流220V的電壓經過變壓、整流、三端穩(wěn)壓器7805穩(wěn)壓后得到的+5V電源送給單片機供電
10、,利用單片機的外圍電路進行擴展,單片機芯片的引腳端口一端接驅動芯片74LS244到數碼管上并起到顯示電路的作用,單片機的另一個端口接驅動芯片與繼電器相接,一定的時間繼電器吸合去驅動開關插座,及時通斷達到節(jié)能的目的,同時通過PROTEL畫出硬件電路圖,并通過PROTEUS進行電路仿真,最會一步就是根據設計做出相應的實物。這就是開關插座基本的控制方案。2.1.1 智能定時開關插座的總體框圖 圖2-1 智能定時開關插座的總體框圖2.2 智能定時開關插座的框圖原理2.2.1 智能定時開關插座的工作過程 主要是利用AT89S51單片機實現的,通過鍵盤控制,當按下S1時,系統(tǒng)可進行時間調整的小時設置,當再
11、按下S1時,可進行時間調整的分鐘設置,再按下S1時,可進行時間調整的秒鐘設計,再按下S1時,恢復正常的時間。當按下S2時,系統(tǒng)可進行定時時間的小時設置,此時S1為選擇鍵再按下S2時,可進行定時時間的分鐘設置,此時也可以用S1作為選擇鍵,再按下S2時,系統(tǒng)恢復正常時間顯示,此時S1恢復為時間調整按鍵,設置時間時通過加時S3和減時S4進行控制。一定的時間后,驅動芯片驅動數碼管顯示電路顯示時間,顯示時間到,驅動繼電器吸合驅動開關插座,達到通斷的目的。第三章 智能定時開關插座的硬件電路設計3.1 智能定時開關插座的電源電路本電路采用7805穩(wěn)壓器,7805三端其標稱最大輸出電流均為1.5A,利用插頭接
12、上電源插頭后,接上220V交流電源通電,經變壓器降壓,橋式整流電路整流。通過濾波電容濾波。然后通過7805三段穩(wěn)壓器穩(wěn)壓之后得到+5V的直流電源供給系統(tǒng)的其他模塊。其電路圖如3-1所示:圖3-1 +5V電源3.2 單片機AT89S51芯片概述AT89S51是一個低功耗,高性能CMOS 8位單片機,片內4kBytesISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計
13、算機的AT89S51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。AT89S51具有如下特點:40個引腳,4k Bytes Flash片內程序存儲器,128bytes的隨機存取數據存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,4個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數器,2個全雙工串行通信口,內部集成看門狗計時器片內時鐘振蕩器。如圖3-2所示:圖3-2 AT89S51單片機芯片其工作電壓在4.55V,一般我們選用5V電壓。3.3 智能定時開關插座的復位及時鐘電路復位電路產生復位信號,復位信號送入RST后還要送至片內的施密特觸發(fā)器,由片內復位電路在每個機器周器的S5P
14、2時刻對觸發(fā)器輸出采樣信號,然后由內部復位電路產生復位操作所要的信號。一般的復位電路可分為上電自動復位和按鍵復位,我們在此選用的是按鍵復位。:上電自動復位原理:RST引腳是復位信號的輸入端,只要高電平的復位信號持續(xù)兩個機器周期以上的有效時間,就可以使單片機上電復位位信號無效。按鍵復位在此不在作過多的介紹,其原理和上電復位是相同的。但其采用的是脈沖復位電路和電平復位電路兩種。圖中的C3、C4電容起著系統(tǒng)時鐘頻率微調和穩(wěn)定的作用。設計中一定要注意正確選擇參數(30PF),并保證電力的對稱性。如圖3-3所示:圖3-3 智能定時開關插座的外圍電路3.4 智能定時開關插座的顯示電路本電路采用數碼管,因為
15、對于一般的段式液晶屏,需要專門的驅動電路,而且液晶顯示作為一種被動顯示,可視性相對較差,對于具有驅動電路和微處理器接口的液晶顯示模塊,一般多采用并行接口,對微處理器的接口要求較多,占用資源多,另外,89S51本身無專門的液晶驅動接口,因此,本設計采用數碼管顯示方式,數碼管作為一種主動的顯示器件,具有亮度高,價格便宜等優(yōu)點。下圖3-4為數碼管顯示電路:圖3-4 智能定時開關插座的顯示器電路3.5 智能定時開關插座的繼電器電路本電路采用5V繼電器,配合設計驅動開關插座,繼電器的要求:良好的驅動電路使電力電子器件工作在開關狀態(tài),縮短開關時間,減少開關損耗,繼電器是一種電子控制器件,它有輸入回路和輸出
16、回路,通常應用到自動系統(tǒng)中,在電路中起著自動調節(jié),安全保護,轉化電路等作用。如圖3-5所示:圖3-5 智能定時開關插座的繼電器電路3.6 智能定時開關插座的器件選擇動手準備元器件之前,最好對照電路原理圖列出所需元器件的清單。為了保證在試制的過程中不浪費時間,減少差錯,同時也保證制成后的裝置能長期穩(wěn)定地工作,待所有元器件都備齊后,還必須對其篩選檢測。在正規(guī)的工業(yè)化生產中,都設有專門的元器件篩選檢測車間,備有許多通用和專用的篩選檢測裝備和儀器,但對于業(yè)余電子愛好者來說,不可能具備這些條件,即使如此,也絕不可以放棄對元器件的篩選和檢測工作,因為許多電子愛好者所用的電子元器件是郵購來的,其中有正品,也
17、有次品,更多的是業(yè)余品或利用品,如在安裝之前不對它們進行篩選檢測,一旦焊入印刷電路板上,發(fā)現電路不能正常工作,再去檢查,不僅浪費很多時間和精力,而且拆來拆去很容易損壞元件及印刷電路板。3.6.1 智能定時開關插座的外觀質量檢查拿到一個電子元器件之后,應看其外觀有無明顯損壞。如變壓器,看其所有引線有否折斷,外表有無銹蝕,線包、骨架有無破損等。如三極管,看其外表有無破損,引腳有無折斷或銹蝕,還要檢查一下器件上的型號是否清晰可辨。對于電位器、可變電容器之類的可調元件,還要檢查在調節(jié)范圍內,其活動是否平滑、靈活,松緊是否合適,應無機械噪聲,手感好,并保證各觸點接觸良好。各種不同的電子元器件都有自身的特
18、點和要求,各位愛好者平時應多了解一些有關各元件的性能和參數、特點,積累經驗。3.6.2 智能定時開關插座的電氣性能的篩選要保證試制的電子裝置能夠長期穩(wěn)定地通電工作,并且經得起應用環(huán)境和其它可能因素的考驗,對電子元器件的篩選是必不可少的一道工序。所謂篩選,就是對電子元器件施加一種應力或多種應力試驗,暴露元器件的固有缺陷而不破壞它的完整性。篩選的理論是:如果試驗及應力等級選擇適當,劣質品會失效,而優(yōu)良品則會通過。3.6.3 智能定時開關插座的元器件的檢測經過外觀檢查以及老化處理后的電子元器件,還必須通過對其電氣性能與技術參數地測量,以確定其優(yōu)劣,剔除那些已經失效的元器件。下面例舉幾種基本元器件的檢
19、測。1.電阻器。它是所有電子裝置中應用最為廣泛的一種元件,也是最便宜的電子元件之一。它是一種線性元件,在電路中的主要用途有:限流、降壓、分壓、分流、匹配、負載、阻尼、取樣等。檢測該元件時,主要看它的標稱阻值與實際測量阻值的偏差程度。工程上按照使用的需要,給出了允許偏差值,如5%、10%、20%。再加上萬用電表檢測電阻器時的誤差,一般要求其誤差不超過允許偏差的10%即認為合格。2.晶體二極管。晶體二極管是一種非線性器件,它的正、反兩個方向的電阻值相差懸殊,這就是二極管的單向導電性。在電路中,利用這一特性,可以作整流、檢波、箝位、限幅、阻尼、隔離等。用萬用電表測量二極管時,可選用歐姆檔R1k。由于
20、二極管具有單向導電性,它的正、反向電阻是不相等的,兩者阻值相差越大越好。對于常用的小功率二極管,反向電阻應比正向電阻大數百倍以上。用紅表棒接二極管的正極,黑表棒接它的負極,測得的是反向電阻。反之,紅表棒接二極管的負極,黑表棒接它的正極,測得的是正向電阻。鍺二極管的正向電阻一般在1001k左右;硅二極管的正向電阻一般在幾百歐至幾千歐。如果測得它的正、反向電阻都是無窮大,說明該二極管內部已開路;如果它的正、反向電阻均為0,說明二極管內部已短路;如果它的正、反向電阻相差無幾,說明二極管的性能變差失效。出現以上三種情況的二極管均不能使用。3.繼電器選用:條件:(1)控制電路的電源電壓,能提供最大電流。
21、(2)被控制電路中的電壓電流(3)被控電路需要幾組,什么形式的觸點選用繼電器時,一般控制電路的電源電壓可作為選用依據,控制電路應能給繼電器提供足夠的工作電流,否則繼電器吸合不穩(wěn)定的。4.其它電子元器件。如常用的各種開關、接插件、發(fā)光二極管、揚聲器、耳機等,主要用萬用電表檢測它們的通斷情況。對于發(fā)光二極管和揚聲器、耳機,也可用電池組來試驗其發(fā)光或發(fā)聲程序,以此來判斷其優(yōu)劣。3.7 智能定時開關插座的元件清單 元器件清單如表3-1所示:名稱器件數AT89S51單片機芯片1個74LS244驅動芯片2個LED數碼管6個熔斷器1個6V變壓器1個普通整流器1個7805三端穩(wěn)壓器1個0.1UF電容2個33P
22、F電容2個100PF電容1個12MHZ晶振電容1個復位開關5個1K電阻2個100歐電阻13個4.7K電阻1個8550三極管1個C1815三極管6個5V繼電器1個表3-1 智能定時開關插座的元件清單第四章 智能定時開關插座的軟件設計4.1 智能定時開關插座的的軟件設計4.1.1智能定時開關插座的主程序流程圖 主程序是先開始,然后啟動定時器,定時器啟動后在進行按鍵檢測,檢測完后就可以顯示時間。如下圖4-1所示:開始系統(tǒng)初始化時間顯示掃描鍵盤時間顯示圖4-1 智能定時開關插座的主程序流程圖4.1.2智能定時開關插座的按鍵流程圖按鍵處理是先檢測秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就
23、檢測分按鍵是否按下,分按鍵如果按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。 如下圖4-2所示:NYNYNY時加1顯示時間結束開始秒按鍵按下?秒加1分按鍵按下?分加1時按鍵按下? 圖4-2 按鍵處理流程圖4.1.3 智能定時開關插座的定時流程圖定時器中斷時是先檢測1秒是否到,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘如果到,分單元就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就顯示時間。如下圖4-3所示:N24小時到?分單元清零,時單元加1NNNYY時單元清零時間顯示中斷返回開始一
24、秒時間到?60秒時間到?60分鐘到?秒單元加1秒單元清零,分單元加1YY圖4-3 定時流程圖4.1.4 智能定時開關插座的時間顯示流程圖時間顯示是先秒個位計算顯示,然后是秒十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個位計算顯示,最后是時十位顯示。如圖4-4所示:時十位計算顯示結束開始秒個位計算顯示秒十位計算顯示分個位計算顯示分十位計算顯示時個位計算顯示 圖4-4 顯示流程圖第五章 智能定時開關插座的仿真設計5.1 智能定時開關插座的仿真5.1.1 KEIL工程的建立Keil單片機模擬調試軟件對MCS51單片機應用系統(tǒng)的軟件開發(fā)過程采用工程(Project)管理。工程保存著程
25、序編輯的信息和程序調試的環(huán)境。在開始編寫程序之前首先應該建立一個工程。新建一個工程之前通常還需要建立一個文件夾,后面產生的工程文件和源程序文件等都將存儲在這個文件夾之中。在如圖所示的集成開發(fā)環(huán)境的窗口中選擇ProjectNew Project命令將打開建立新工程的對話框,如圖5-1所示。圖5-1 KEIL工程的建立在“保存在”下拉列表框中選擇新建工程將要存儲的文件夾名,在“文件名”文本框中輸入工程的名稱,注意對于工程不要添加擴展名,單擊“保存”按鈕即可完成一個工程的創(chuàng)建。單擊“保存”按鈕在完成一個工程創(chuàng)建的同時也打開了單片機芯片型號選擇對話框。如圖5-2所示的對話框已經完成了芯片型號的選擇。圖
26、5-2 芯片的選擇Keil單片機模擬調試軟件支持許多公司生產的MCS51單片機兼容產品。如前所述,本書應用電路中采用Atmel公司的AT89S51芯片,下面以這款芯片為例介紹如何實現選擇。在圖所示的對話框中的Data base列表框中首先選擇生產芯片的公司名稱Atmel,雙擊這個公司名稱即可打開Atmel公司目前生產的所有芯片型號。接著在列出的產品清單中選擇將使用的AT89S51芯片,如圖5-2所示。最后單擊“確定”按鈕即可完成芯片的選擇。完成芯片的選擇后又回到如圖所示的集成開發(fā)環(huán)境的窗口,但是這時該窗口中的工程管理窗口不再是空白,在它的文件選項卡中出現目錄列表Target 1和它的子目錄So
27、urce Group 1。集成開發(fā)環(huán)境中的菜單Project內還包含Open Project和Close Project等選項。Open Project選項用來以后再次進入已經建立的工程,選擇ProjectOpenProject命令將打開選擇工程的對話框。在“查找范圍”下拉列表框中選擇欲打開的工程所在的文件夾,列表框中將出現該文件夾中的所有工程,選擇將要打開的工程,單擊“打開”按鈕即可打開一個工程。選擇ProjectClose Project命令將關閉當前的工程。5.2.2源文件的輸入Keil單片機模擬調試軟件內集成了一個文本編輯器,用該文本編輯器可以編輯源程序。如圖5-3所示。在圖5-3中已
28、經完成了匯編語言源文件的輸入,并且完成了源程序向當前工程的添加。如圖5-3所示:圖5-3 源文件輸入完成匯編語言源文件的輸入后,在集成開發(fā)環(huán)境中選擇FileSave As命令可以完成文件的第一次存儲。注意,匯編語言源文件的擴展名應該是ASM,它應該與工程文件存儲在同一文件夾內。在完成文件的第一次存儲后,當對匯編語言源文件又進行了修改,再次存儲文件時則應該選擇FileSave命令、單擊保存工具按鈕或者按快捷鍵Ctrl+S實現文件的保存。需要注意的是,當把匯編語言源文件加入工程但還沒有關閉加入文件對話框時,有可能被誤認為文件沒有成功地加入工程而再次進行加入操作,系統(tǒng)將顯示所需的文件已經加入的提示。
29、在這種情況下,單擊提示框中的“確定”按鈕,再單擊Close按鈕可以關閉加入文件對話框。工程建立好后,還可對對工程進行進一步的設置,一滿足要求。首先點擊左邊的Project窗口的Target1,然后使用菜單“Project中的Option for Target1”即出現對工程設置的對話框,如圖5-4所示:圖5-4 調試對話框的設置對上圖進行相應的設置,用來選擇最終的目標文件所在的文件夾,默認是與工程文件在同一個文件夾中。在設置好工程后就可以進行編譯、連接。選擇Project中的Build target,對當前工程進行連接,編譯過程中會出現很多語法錯誤,會有錯誤報告出現,雙擊該行,可以定位到出錯的
30、位置,對源程序反復新蓋之后,最終會得到如圖所示的結果,提示獲得了名為Hex的文件,該文件即可被編程器讀入寫到芯片中,同時還會產生一些其它的相關文件。如圖5-5所示: 圖5-5 調試后的結果 寫到芯片中的程序,可以用Proteus中進行仿真,仿真結果如下圖5-6所示:圖 5-6 智能定時開關插座的仿真圖仿真過程中出現很多的錯誤,仿真部分采用protus 7 professional軟件,此軟件功能強大且操作較為簡單,可以很容易的實現各種系統(tǒng)的仿真。首先打開protus 7 professional軟件,在元件庫中找到要選用的所有元件,然后進行原理圖的繪制;繪制好后再選擇wave6000已經編譯好
31、的*.hex文件,選擇運行,觀察顯示結果,根據顯示的結果和課題的要求再修改程序,再運行查,直到滿足要求。參考文獻1 單片微型計算機原理及應用,張毅坤主編,安電子科技大學出版社2 單片機測控技術,童一帆主編,北京航空航天大學出版社3 MCS-51實訓教程,石從剛主編,北京航空航天大學出版社4 Protel 99SE,崔瑋主編,海洋出版社6 謝松 電機軟啟動器的應用 期刊論文 -山東紡織科技2003(4) 7 盧宇.涂光瑜.羅毅.盛戈皥.朱仲彥 智能開關技術在電動機啟動中的應用 期刊論文 -繼電器2003(5)8 李華,孫曉民等.MCS-51系列單片機實用接口技術.北京:北京航空航天大學出版社,1
32、995.12.9 何立民.單片機應用技術選編.北京:北京航空航天大學出版社1999.9.10 Yang.Y.,Yi.J.,Woo,Y.Y.,and Kim.B.:Optimum design for linearityandefficiency of microwave Doherty amplifier using a new loadmatching technique,Microw.J.,2001,44,(12),pp.203611 Vizimuller,P.:RF design guide-systems,circuits,and equations(ArtechHouse,Bosto
33、n,MA,1995)6R.Dye,“Visual Object-OrientatedProgramming,”Dr.Dobbs MacintoshJournal,Sept.1st(1991致 謝通過本次設計,讓我認識并了解到了基本的設計開發(fā)過程,在這過程中,我的身邊的同學給了我很多的啟示和幫助,而且我覺的對以前不了解的單片機知識有了一個更高更深的了解。我相信我所學的東西在以后的工作學習中會起更大的作用。在本次設計中得到了指導老師葛廣軍老師的大力支持,同學王士景、尹海生在此表示感謝!在設計的過程中,本系的各位老師和領導也給予了諸多幫助和支持,在此作者也表示感謝!感謝各位老師多年來的教誨與幫助,也
34、感謝各位同學在學習上的幫助!附錄附錄1 智能定時開關插座的程序設計ORG 0000HLJMP MAINORG 000BHLJMP TIMEORG 1000HHOUR1 EQU 10hHOUR2 EQU 12hMIN1 EQU 14hMIN2 EQU 16hSEC1 EQu 18HCOUNT EQU 20HNUM1 EQU 22HNUM2 EQU 24HLL4 EQU 26Hs1 bit P1.0s2 bit P1.1s3 bit P1.2s4 bit P1.3A1 EQU 36HA2 EQU 38HB1 EQU 40HB2 EQU 42HWELA bit P1.6DULA bit P1.7C1
35、 EQU 48HC2 EQU 50HD1 EQU 52HD2 EQU 54HF1 EQU 56HE1 EQU 58HTIMEEPRO EQU 60HMAIN: MOV SP,#50H ;SP初始化MOV P3,#0FFH ;端口初始化START: MOV HOUR1,#00H ;初始化的時間變量MOV MIN1,#00HMOV SEC1,#00HMOV HOUR2,#01H ;初始化定時變量MOV MIN2,#00HMOV COUNT,#00H ;初始化計時變量MOV NUM1,#00H ;初始化按鍵計數變量MOV NUM2,#00HMOV TMOD,#01H ;16位計數器MOV TH0,#
36、0D8H ;賦初值MOV TL0,#0EFHSETB ET0 ;中斷允許SETB EASETB TR0 ;啟動T0LOOP: MOV A,NUM2JNZ LOOP1 ;A不為0時轉移LCALL DISPLAY1 ;顯示當前時間LCALL KEYTIME ;調用時間調整子程序LCALL SETTIME ;調用定時設置子程序LJMP LOOPLOOP1: LCALL DISPLAY2 ;顯示定時時間LCALL KEYTIME ;調用時間調整子程序LCALL SETTIME ;調用定時設置子程序LJMP LOOP;SETTIME PROGRAMSETTIME: ;定時設置子程序LL1: JB S2,
37、LL3 ;P1.1=1時轉移LCALL DELAY5 ;延時5mSMSTOP1: JB S2,LL3 ;P1.1=0時轉移MOV C,S2JNC MSTOP1 ;P1.1=0時轉移INC NUM2 ;按鍵計數變量加1MOV A,NUM2CJNE A,#1H,LL2 ;判斷按鍵計數是否為1CLR TR0 ;定時器中斷關閉LL2: CJNE A,#3,LL ;判斷按鍵計數是否為3MOV NUM2,#0 ;按鍵計數變量清0SETB TR0 ;定時器中斷打開LL: LCALL DISPLAY2 ;顯示定時時間LL3: MOV A,NUM2 ;A為0時轉移JZ LL5JB S3,KK2 ;P1.2=1時
38、轉移LCALL DELAY5 ;延時5MSKK1: JB S3,KK2 ;P1.2=1時轉移MOV C,S3JNC KK1 ;P1.2=0時轉移MOV A,NUM2CJNE A,#1,MM1 ;判斷按鍵計數是否為1INC HOUR2 ;小時定時變量加1MOV A,HOUR2CJNE A,#24,MM1 ;判斷小時定時變量是否為24MOV HOUR2,#0 ;小時定時變量為24則復位0LCALL DISPLAY2 ;顯示定時時間MM1: LCALL DISPLAY2 ;顯示定時時間MOV A,NUM2CJNE A,#2,kk2 ;判斷按鍵計數是否為2INC MIN2MOV A,MIN2CJNE
39、A,#60,KK2 ;分鐘定時變量是否為60MOV MIN2,#0 ;分鐘定時變量為60復位0LCALL DISPLAY2 ;顯示定時時間KK2: LCALL DISPLAY2JB S4,LL5 ;P1.3=1時轉移LCALL DELAY5 ;延時5MSKK3: JB S4,LL5;P1.3=1時轉移MOV C,S4JNC KK3 ;P1.3=0時轉移MOV A,NUM2CJNE A,#1,MM2 ;判斷按鍵計數是否為1DEC HOUR2 ;小時定時變量減1MOV A, HOUR2CJNE A,#0,MM2MOV HOUR2,#24LCALL DISPLAY2MM2: LCALL DISPLA
40、Y2MOV A,NUM2CJNE A,#2,LL5 ;判斷按鍵計數是否為2DEC MIN2MOV A,MIN2CJNE A,#0,LL5MOV MIN2,#60 ;顯示定時時間LL5: LCALL DISPLAY2RET;KEYTIME PROGRAMKEYTIME: ;時間調整子程序L1: JB S2,L3 ;P1.0=1時轉移LCALL DELAY5 ;延時5MSMSTOP2: JB S2,L3 ;P1.0=1時轉移MOV C,S2JNC MSTOP2 ;P1.0=0時轉移INC NUM1MOV A,NUM1CJNE A,#1,L2 ;判斷按鍵計數是否為1CLR TR0 ;定時器中斷關閉L
41、2: CJNE A,#4,L3 ;判斷按鍵計數是否為4MOV NUM1,#0SETB TR0 ;定時器中斷打開L3: MOV A,NUM1JNZ FF ;A不為0時轉移LJMP L5FF: JB S3,K2 ;P1.2=1時轉移LCALL DELAY5 ;延時5MSK1: JB S3,K2 ;P1.2=1時轉移MOV C,S3JNC K1 ;P1.2=0時轉移MOV A,NUM1CJNE A,#1,M1 ;判斷按鍵計數是否為1INC HOUR1 ;小時設置加1MOV A,HOUR1CJNE A,#24,M1MOV HOUR1,#0LCALL DISPLAY1 ;顯示調整時間M1: LCALL
42、DISPLAY1MOV A,NUM1CJNE A,#2,M2;判斷按鍵計數是否為2INC MIN1CJNE A,#60,M2MOV MIN1,#0LCALL DISPLAY1;顯示調整時間M2: LCALL DISPLAY1MOV A,NUM1CJNE A,#3,K2 ;判斷按鍵計數是否為3INC SEC1MOV A,SEC1CJNE A,#60,K2MOV SEC1,#0LCALL DISPLAY1;顯示調整時間K2: LCALL DISPLAY1JB S4,L5 ;P1.3=1時轉移LCALL DELAY5 ;延時5MSK3: JB S4,L5 ;P1.3=1時轉移MOV C,S4JNC
43、K3 ;P1.3=0時轉移MOV A,NUM1CJNE A,#1,M3 ;判斷按鍵計數是否是1DEC HOUR1MOV A,HOUR1CJNE A,#0,M3MOV HOUR1,#24LCALL DISPLAY1 ;顯示調整時間M3: LCALL DISPLAY1MOV A,NUM1CJNE A,#2,M4;判斷按鍵計數是否為2DEC MIN1MOV A,MIN1CJNE A,#0,M4MOV MIN1,#60LCALL DISPLAY1;顯示調整時間M4: LCALL DISPLAY1MOV A,NUM1CJNE A,#3,L5;判斷按鍵計數是否為3INC SEC1CJNE A,#0,L5M
44、OV SEC1,#60L5: LCALL DISPLAY1;顯示調整時間RET;TIMEPRO PROGRAMTIMEPRO:MOV R7,#50H;繼電器吸合子程序CLR P2.6LCALL DELAYN;延時50MSSETB P2.6LCALL DELAYNAJMP TIMEPRO;DISPLAY1 PROGRAMDISPLAY1: ;顯示子程序1PUSH ACC ;保護現場MOV A,HOUR1;將時間的十位和個位分別賦給顯示變量MOV B,#10DIV ABMOV A1,AMOV B1,BMOV A,MIN1MOV B,#10DIV ABMOV C1,AMOV D1,BMOV A,SE
45、C1MOV B,#10DIV ABMOV E1,AMOV F1,BMOV DPTR,#TABLE;指向七段編碼表首地址CLR DULA;關閉段選鎖存器鎖存端CLR WELA;關閉位選鎖存器鎖存端MOV P0,#0FEH;選擇第一位數碼管SETB WELA;打開位選鎖存器鎖存端CLR WELALCALL DELAY5CLR DULAMOV A,B1MOVC A,A+DPTRMOV P0,A;顯示小時個位SETB DULA;打開段選鎖存器鎖存端CLR DULACLR WELAMOV P0,#0FDH;選擇第二位數碼管SETB WELA ;打開位選鎖存器鎖存端CLR WELALCALL DELAY5
46、CLR WELALCALL DELAY5CLR DULAMOV A,C1MOVC A,A+DPTRMOV P0,A;顯示分鐘十位SETB DULACLR DULACLR WELAMOV P0,#0FBH ;選擇第三段數碼管SETB WELACLR WELALCALL DELAY5CLR DULA;關閉段選鎖存器鎖存端MOV A,D1MOVC A,A+DPTRMOV P0,A ;顯示分鐘個位SETB DULACLR DULACLR WELAMOV P0,#0F7H;選擇第四位數碼管SETB WELACLR WELALCALL DELAY5CLR DULAMOV A,E1MOVC A,A+DPTRMOV P0,A;顯示秒鐘十位SETB DULACLR DULACLR WELA;關閉位選鎖存器鎖存端MOV P0,#0EFH;選擇第五位數碼管SETB WELA;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學院《西醫(yī)外科學醫(yī)學免疫學與病原生物學》2023-2024學年第一學期期末試卷
- 貴州財經大學《藏族文化概論》2023-2024學年第一學期期末試卷
- 2025青海省安全員-B證考試題庫附答案
- 2025安徽省建筑安全員《A證》考試題庫及答案
- 貴陽人文科技學院《形式化方法導論》2023-2024學年第一學期期末試卷
- 廣州珠江職業(yè)技術學院《機能學實驗(二)》2023-2024學年第一學期期末試卷
- 廣州新華學院《工業(yè)機器人基礎操作與編程實訓》2023-2024學年第一學期期末試卷
- 廣州衛(wèi)生職業(yè)技術學院《分子與細胞生物學檢測技術》2023-2024學年第一學期期末試卷
- 廣州鐵路職業(yè)技術學院《建筑及環(huán)境設計方法學》2023-2024學年第一學期期末試卷
- 2025年江西省安全員《B證》考試題庫
- 工程力學課后習題答案1
- 6S視覺管理之定置劃線顏色管理及標準樣式
- 四年級數學(除數是兩位數)計算題專項練習及答案
- 中考字音字形練習題(含答案)-字音字形專項訓練
- 社區(qū)矯正個別教育記錄內容范文
- 常見婦科三大惡性腫瘤的流行及疾病負擔研究現狀
- CTD申報資料撰寫模板:模塊三之3.2.S.4原料藥的質量控制
- (正式版)JTT 1482-2023 道路運輸安全監(jiān)督檢查規(guī)范
- 圍手術期血糖的管理
- 2024年度醫(yī)療器械監(jiān)督管理條例培訓課件
- 100以內不進位不退位加減法練習題
評論
0/150
提交評論