基于單片機的定時插座的設計word格式源_第1頁
基于單片機的定時插座的設計word格式源_第2頁
基于單片機的定時插座的設計word格式源_第3頁
基于單片機的定時插座的設計word格式源_第4頁
基于單片機的定時插座的設計word格式源_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、目 錄中文摘要I英文摘要II1 緒論11.1 課題背景11.2 方案概述12 系統(tǒng)的總體設計32.1 系統(tǒng)可行性論證3 需求分析3 時鐘模塊設計32.2 系統(tǒng)總體方案4 系統(tǒng)的硬件構成4 系統(tǒng)的軟件構成43 系統(tǒng)的硬件53.1 系統(tǒng)的主控單元構成53.1.1 單片機AT89S52簡介53.1.2 主要功能及特性63.1.3 管腳圖管腳說明73.1.4 復位電路93.1.5 震蕩電路103.1.6 芯片擦除113.2 時鐘芯片簡介113.2.1 DS1302引腳及相關功能113.2.2 DS1302內(nèi)部結構133.2.3 DS1302讀寫時序說明134系統(tǒng)仿真與硬件制作154.1 軟件仿真154

2、.2 硬件制作165 系統(tǒng)軟件介紹175.1 數(shù)碼管刷新程序介紹175.2 按鍵掃描程序186 系統(tǒng)調(diào)試與成果196.1 調(diào)試196.2 系統(tǒng)測試196.2.1 按鍵的測試196.2.2 插座定時時間測試196.3 系統(tǒng)誤差分析207 總結與展望21結束語22致謝22參考文獻24附錄125附錄2361 緒論現(xiàn)有的電源插座一般為普通插座,只負責電源轉接,不能實現(xiàn)智能控制。因而不能有效的實現(xiàn)智能化控制。而一些專用設備上可以實現(xiàn)智能化控制,而此時的控制系統(tǒng)和專用設備聯(lián)系比較緊密,無法實現(xiàn)大面積推廣。本設計主要是解決普通家電的智能化控制。電源分為多路輸出,可以實現(xiàn)分別控制或者統(tǒng)一控制。具有實時時鐘功能

3、,可以對每一路設置啟動和停止時間以及運行時間周期,并實時顯示時鐘。本發(fā)明為電源自動控制裝置,本發(fā)明涉及到家電電源控制的實現(xiàn)方法,主要用于需要定時開關的動力裝置上,可以人為設定開啟和關閉時間,不需要人為監(jiān)控,實現(xiàn)智能化控制。1.1 課題背景隨著人類社會的發(fā)展進步,不可再生資源的枯竭,現(xiàn)代化高效能的設備使用,人們越來越注重資源的節(jié)省和時間的統(tǒng)籌安排。電視機的待機功耗一般都是10W左右,很多人晚上看完電視只是讓電視機處于待機狀態(tài),一晚上按8小時算,也是需要七八十瓦的功耗,一個月差不多3度電。而現(xiàn)在幾乎每家都有電視機,可以想象每年要有多少電能被浪費現(xiàn)在的家用電熱水器一般都沒有定時開機和關機功能,假如我

4、們需要六點出門,九點鐘回來,而回來就希望有熱水洗澡,如果六點鐘開始燒水的話,九點鐘會燒得很熱,而且會浪費電能,試想如果我們能有一個智能家電控制系統(tǒng), 不僅可以節(jié)約很多電能,還可以根據(jù)個人情況統(tǒng)籌安排時間。1.2 方案概述針對以上的問題,我們設計了這款智能家電控制系統(tǒng),該系統(tǒng)的最大特點是智能化,可以根據(jù)個人需要隨意設置電源的開關時間,該方案也適用于園藝定時澆水之類的控制系統(tǒng)。該系統(tǒng)需具備以下功能:1、利用單片機設計一定時開關,在24小時內(nèi)的時間里能預先設定定時范圍,每天周而復始地控制用電器具的自動開啟和關閉。2、要求最少能獨立控制兩路220V/10A的交流負載。3、產(chǎn)品的成本應盡量低,不能超過3

5、5元。4、產(chǎn)品的功能應盡量多,最少應具有時間顯示和校正、定時顯示和設置等功能。5、產(chǎn)品的質量應可靠、安全。具體性能指標如下:供電電源:220V 50Hz 功率消耗:<2W使用環(huán)境溫度:-10至40度 最大負載電流:>10A負載功率:2500W(250V 10A)定時范圍:1分鐘至23小時59分任意設定最小設定單位:1分鐘 最小設定間隙:1分鐘定時精度:1分鐘 工作方式:連續(xù)工作制可定時次數(shù):不少于1次,可以同時控制兩個插座;2 系統(tǒng)的總體設計2.1 方案可行性論證2.1.1 需求分析隨著現(xiàn)代社會人們生活水平的日益提高,及建設節(jié)約型社會口號的提出人們節(jié)能的意識越來越強,于是定時插座就

6、應運而生了。2.1.2 時鐘模塊設計方案一:采用單片機本身的定時器,根據(jù)振蕩頻率來算時間,雖然這樣價格最低廉,但是時間走的不精確,斷電數(shù)據(jù)也會丟失。方案二:采用DS12C877時鐘芯片,此芯片內(nèi)置鋰電,斷電數(shù)據(jù)不會丟失。但是DS12C877電路比較復雜同時價格比較昂貴。方案三:采用DS1302時鐘芯片,此時鐘芯片能產(chǎn)生準確的時間、年、月、日等,外加一塊鋰電池能保證斷電后能保證數(shù)據(jù)部丟失,具有DS12C877的功能,同時電路簡單,價格低廉。綜上所述,綜合價格與功能等因素,因此我們采用方案三。圖2.1 DS1302的連接電路圖1、VCC為主電源接5V,C1為濾波電容;2、X1、X2外接32.768

7、K的晶振;3、5、6、7腳分別與控制器相聯(lián),注意外部4.7K上拉電阻;4、備用電源腳,注意是3.3V,DS1302要求備用電源電壓稍微低于主用電源;DS1302的具體操作的大致過程,就是將各種數(shù)據(jù)寫入DS1302的寄存器,以設置它當前的時間以及格式。然后使DS1302開始運作,DS1302時鐘會按照設置情況運轉,再用單片機將其寄存器內(nèi)的數(shù)據(jù)讀出。2.2 系統(tǒng)總體方案2.2.1 系統(tǒng)的硬件構成系統(tǒng)總體分為軟件部分和硬件部分兩部分構成。硬件部分由主控芯片部分、繼電器控制部分、數(shù)碼管顯示部分、DS1302時鐘控制部分、音樂播放部分、電源部分、指示部分組成。總體框圖如下:主控部分(單片機) 控制為電路

8、提供能量信息采集顯示部分信息采集控制DS1302時鐘電源部分繼電器蜂鳴器圖2.2系統(tǒng)總體框圖2.2.2 系統(tǒng)的軟件構成系統(tǒng)軟件組成主要分為時鐘芯片DS1302信息的實時采集、數(shù)碼管顯示、繼電器的控制,時間的設定等幾部分組成。具體詳細程序見附錄。3 系統(tǒng)主要芯片介紹3.1 系統(tǒng)的主控單元構成系統(tǒng)的主控單元由AT89S52及其最小工作系統(tǒng)構成,主要功能是控制系統(tǒng)的總體,是系統(tǒng)的核心,相當于系統(tǒng)的大腦和心臟。其電路圖如下:圖3.1系統(tǒng)主控單元3.1.1 單片機AT89S52簡介AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲器。使用Atmel 公司高密度

9、非易失性存儲器技術制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。3.1.2 主要功能及特性AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個16 位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,

10、允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。l 與MCS-51單片機產(chǎn)品兼容l 8K字節(jié)在系統(tǒng)可編程Flash存儲器l 1000次擦寫周期l 全靜態(tài)操作:0Hz33Hzl 三級加密程序存儲器l 32個可編程I/O口線l 三個16位定時器/計數(shù)器l 八個中斷源l 全雙工UART串行通道l 低功耗空閑和掉電模式l 掉電后中斷可喚醒l 看門狗定時器l 雙數(shù)據(jù)指針l 掉電標識符3.1.3 管腳圖管腳說明圖3.2 AT89S52引腳圖VCC:供電電壓。 GND:接地。 P0 口:P0口是一個8位漏極開路

11、的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0具有內(nèi)部上拉電阻。在 flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。P1 口:P1 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅動4 個TTL 邏輯電平。對P1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時器

12、/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX),具體如表3-1所示。在flash編程和校驗時,P1口接收低8位地址字節(jié)。表3.1 P1口的第二功能引腳號第二功能P1.0T2(定時器/計數(shù)器T2的外部計數(shù)輸入),時鐘輸出P1.1T2EX(定時器/計數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制)P1.5MOSI(在系統(tǒng)編程用)P1.6MISO(在系統(tǒng)編程用)P1.7SCK(在系統(tǒng)編程用)P2口:P2口為一個內(nèi)部上拉電阻的8 位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P

13、2口的 管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給 出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高 八位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口作為AT89C51的一些特殊功能口,如表3-2所示

14、:表3.2 P3的特殊功能口管腳備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。 RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。 ALE/PROG: 當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變

15、的頻率周期 輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。 /EA /VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFF

16、H),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定 為RESET;當/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。3.1.4 復位電路為確保微機系統(tǒng)中電路穩(wěn)定可靠工作,復位電路是必不可少的一部分,復位電路的第一功能是上電復位。一般微機電路正常工作需要供電電源為5V±5%,即 4.755.25V。由于微機電路是時序數(shù)字電路,它需要穩(wěn)定的時鐘信號,因此在電源上電時,只有當VCC超過4.75V低于5.25V以及晶體振蕩器

17、 穩(wěn)定工作時,復位信號才被撤除,微機電路開始正常工作。目前為止,單片機復位電路主要有四種類型:(1)微分型復位電路;(2)積分型復位電路;(3)比較器型復位電路;(4)看門狗型復位電路。電路圖如下:圖3.3 復位電路3.1.5 振蕩電路電路圖如下:圖3.4 晶振電路晶振是晶體振蕩器的簡稱,在電氣上它可以等效成一個電容和一個電阻并聯(lián)再串聯(lián)一個電容的二端網(wǎng)絡,電工學上這個網(wǎng)絡有兩個諧振點,以頻率的高低分其中較低 的頻率是串聯(lián)諧振,較高的頻率是并聯(lián)諧振。由于晶體自身的特性致使這兩個頻率的距離相當?shù)慕咏?,在這個極窄的頻率范圍內(nèi),晶振等效為一個電感,所以只要晶 振的兩端并聯(lián)上合適的電容它就會組成并聯(lián)諧振

18、電路。這個并聯(lián)諧振電路加到一個負反饋電路中就可以構成正弦波振蕩電路,由于晶振等效為電感的頻率范圍很窄, 所以即使其他元件的參數(shù)變化很大,這個振蕩器的頻率也不會有很大的變化。晶振有一個重要的參數(shù),那就是負載電容值,選擇與負載電容值相等的并聯(lián)電容,就可以得到晶振標稱的諧振頻率。 一般的晶振振蕩電路都是在一個反相放大器(注意是放大器不是反相器)的兩端接入晶振,再有兩個電容分別接到晶振的兩端,每個電容的另一端再接到地,這兩個電容串聯(lián)的容量值就應該等于負載電容,請注意一般IC的引腳都有等效輸入電容,這個不能忽略。3.1.6 芯片擦除 整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組

19、合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。 此 外,AT89C51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計 數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結振蕩器,禁止所有其它芯片功能。3.2時鐘芯片簡介3.2.1 DS1302引腳及相關功能DS1302是DALLAS公司推出的涓流充電時鐘芯片,內(nèi)含有一個實時時鐘/日歷和31字節(jié)靜態(tài)RAM,通過簡單的串行接口與單片機進行通信。實時時鐘/日歷電路提

20、供秒、分、時、日、周、月、年的信息,每月的天數(shù)和閏年的天數(shù)可自動調(diào)整。時鐘操作可通過AM/PM指示決定采用24或12小時格式。DS1302與單片機之間能簡單地采用同步串行的方式進行通信,僅需用到三個口線:(1)RES復位(2)I/O數(shù)據(jù)線(3)SCLK串行時鐘。時鐘/RAM的讀/寫數(shù)據(jù)以一個字節(jié)或多達31個字節(jié)的字符組方式通信。DS1302工作時功耗很低保持數(shù)據(jù)和時鐘信息時功率小于1mWDS1302是由DS1202改進而來增加了以下的特性:雙電源管腳用于主電源和備份電源供應,Vcc1為可編程涓流充電電源,附加七個字節(jié)存儲器。它廣泛應用于電話、傳真、便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領域下面

21、。將主要的性能指標作一綜合:實時時鐘具有能計算2100年之前的秒、分、時、日、星期、月、年的能力,還有閏年調(diào)整的能力;318位暫存數(shù)據(jù)存儲RAM串行I/O口方式使得管腳數(shù)量最少寬范圍工作電壓工作電流2.0V時,小于300nA讀/寫時鐘或RAM數(shù)據(jù)時有兩種傳送方式單字節(jié)傳送和多字節(jié)傳送字符組方式8腳DIP封裝或可選的8腳SOIC封裝根據(jù)表面裝配與TTL兼容Vcc=5V可選工業(yè)級溫度范圍-40+85雙電源管用于主電源和備份電源供應上是DS1302的一些全面的預覽,以下為DS1302管腳圖: 圖3.5 DS1302圖3.6 DS1302引腳圖VCC2:主用電源引腳;X1、X2:DS1302外部晶振引

22、腳;GND:地;RST:復位引腳;I/O:串行數(shù)據(jù)引腳,數(shù)據(jù)輸出或者輸入都從這個引腳;SCLK:串行時鐘引腳;VCC1:備用電源;3.2 .2 DS1302的內(nèi)部結構DS1302的內(nèi)部結構: 圖3.7 DS1302的內(nèi)部結構3.2.3 DS1302讀寫時序說明DS1302是SPI總線驅動方式。它不僅要向寄存器寫入控制字,還需要讀取相應寄存器的數(shù)據(jù)。要想與DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如下圖。圖3.8 DS1302的控制字控制字的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。位6:如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示

23、存取RAM數(shù)據(jù);位5至位1(A4A0):指示操作單元的地址;位0(最低有效位):如為0,表示要進行寫操作,為1表示進行讀操作。控制字總是從最低位開始輸出。在控制字指令輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從最低位(0位)開始。同樣,在緊跟8位的控制字指令后的下一個SCLK脈沖的下降沿,讀出DS1302的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。數(shù)據(jù)讀寫時序如下圖。 圖3.9 DS1302的讀寫時序圖DS1302是DALLAS公司的涓流充電時鐘芯片, DS1302工作時功耗很低、保持數(shù)據(jù)和時鐘信息功耗小于1mW,僅用一節(jié)電池就能唱時間保持數(shù)據(jù)。所以總的來說DS1302

24、的操作分2步(顯示部分屬于液晶顯示的內(nèi)容,不屬于DS1302本身的內(nèi)容),但是在講述操作時序之前,我們要先看看寄存器:寄存器樣式.jpg上圖是DS1302的寄存器樣式,我們看到:1、第7位永遠都是12、第6位,1表示RAM,尋址內(nèi)部存儲器地址;0表示CK,尋址內(nèi)部寄存器;3、第5到第1位,為RAM或者寄存器的地址;最低位,高電平表示RD:即下一步操作將要“讀”;低電平表示W(wǎng):即下一步操作將要“寫”。(與AT24C02寄存器類似,這點要理解好)4 系統(tǒng)仿真與硬件制作4.1 軟件的仿真Proteus軟件是英國Labcenter Electronics公司出版的EDA工具軟件(該軟件中國總代理為廣州

25、風標電子技術有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設計,真正實現(xiàn)了從概念到產(chǎn)品的完整設計。是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和

26、MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。本系統(tǒng)在制作硬件之前首先用Proteus軟件對系統(tǒng)進行了仿真測試,確保系統(tǒng)的可靠性及實物的成功率。其仿真圖如下:圖4.14.2 硬件的制作經(jīng)過軟件仿真實驗成功后對系統(tǒng)進行了實物的制作。在制作的過程中應該注意一下幾點:1、要注意元器件的布局,因為電路比較復雜,為了連接線方便要提前對元器件進行布局,同時布局好了實物做出來也比較美觀;2、在焊接的過程中一定要檢查好器件的引腳,尤其是數(shù)碼管的引腳一定不要焊接錯。同時還要注意二極管、繼電器、蜂鳴器、

27、USB頭電解電容等器件的正負極不要接錯;3、要注意P0口需要外接上拉電阻;4、單片機的31引腳要接到地;5、焊接完成后要進行排查,主要是用萬用表檢測電源和地之間是否短路等,如果沒有錯誤了在插芯片,在插芯片時引腳的位置一定不要插反。5 系統(tǒng)軟件介紹系統(tǒng)軟件部分主要有按鍵控制部分,時鐘信息采集部分,數(shù)碼管顯示部分,繼電器控制部分組成,其程序流程圖如下:圖 5.1 系統(tǒng)的軟件流程圖5.1 數(shù)碼管刷新程序介紹數(shù)碼管是顯示的當前的實時時間或者設定時間,隨著時間的推移或者按鍵對設定時間的調(diào)整數(shù)碼管顯示的時間要實時更新才能正常顯示,此部分程序如下:void show_flash(void) LED_IO =

28、 Led_buf0; LED1 = 0; delay_ms(4); LED1 = 1; LED_IO = Led_buf1; LED2 = 0; delay_ms(4); LED2 = 1; LED_IO = Led_buf2; LED3 = 0; delay_ms(4); LED3 = 1; LED_IO = Led_buf3; LED4 = 0; delay_ms(4); LED4 = 1; 5.2 按鍵掃描程序系統(tǒng)通過按鍵來對時間進行校正及對插座開始結束時間的設定,由于按鍵會有機械性的都抖動,因此需要在程序中加入防抖動程序。int8 scan_key(void) int8 val=-1;

29、 if (KeyIn1 = 0) val = 1; /while (KeyIn1 = 0); /等待按鍵抬起 else if (KeyIn2 = 0) val = 2; /while (KeyIn2 = 0);/等待按鍵抬起 else if (KeyIn3 = 0) val = 3; /while (KeyIn3 = 0);/等待按鍵抬起 return val; 6 調(diào)試與結果6.1 調(diào)試在調(diào)試過程中,曾遇到以下問題:1) 當硬件連接無誤,在系統(tǒng)啟動后數(shù)碼管不顯示,系統(tǒng)沒有反應,這種情況有以下幾種可能:第一,硬件電路中存在虛焊,或電路接線焊錯;第二,芯片插反了導致電路短路;第三,數(shù)碼管電路焊接

30、錯誤。遇到這種情況首先要用萬用表檢查芯片的供電電壓是否為5V,如果不是就檢查供電電路有沒有問題。如果兩端有電壓就看看芯片插反沒有。2) 系統(tǒng)啟動數(shù)碼管顯示不正常,這有可能是背光調(diào)節(jié)電位器阻值不合適,需要調(diào)節(jié)一下控制背光的10K電位器。3) 系統(tǒng)顯示不穩(wěn)定,這有可能是電壓不穩(wěn)定,或者AT89S52芯片的31引腳EA引腳沒有接高電平。6.2 系統(tǒng)測試6.2.1 按鍵的測試時間校正:打開電源,顯示實時時間,按手動校正“按鍵2”,對小時加,按手動校正“按鍵3”,對分鐘加。定時時間的調(diào)整:按下手動校正“按鍵1”,按一下,第一路插座的紅色指示燈亮,是對第一路插座定時開始時間的設定,再按手動校正“按鍵2”,

31、小時加,按手動校正“按鍵3”,分鐘加。再按手動校正“按鍵1”,綠色指示燈亮,是對第一路插座結束時間的設定,設定方法同開始時間;再按依次按手動校正“按鍵1”對第二路插座開始、結束時間進行設定,方法同第一路插座。如果其中一個按鍵不能使用就用萬用表檢查是否存在虛焊,是否和地接觸完好等。在調(diào)試初期,按鍵每按下一次數(shù)字跳動好幾次,在檢查硬件沒有問題后檢查程序,在程序上面加了防抖動的程序,問題解決。6.2.2 定時設定測試通過按鍵設置定時時間,插座供電有開始和結束時間,經(jīng)測定定時開始11:20,定時結束時間12:31,時間開始時指示燈亮,定時結束,播放音樂,并自動斷電。6.3 系統(tǒng)誤差分析本系統(tǒng)的誤差來源

32、主要有:1) DS1302時鐘芯片本身的問題,這個可以通過測試,測試出在一定時間內(nèi)時間誤差是多少,在系統(tǒng)程序中調(diào)節(jié)彌補誤差。2) 系統(tǒng)的外圍器件像晶振等帶來的誤差,這種情況要求我們在焊接的時候元器件布局要合理,保證線路質量,最大程度的減少誤差。7 總結與展望經(jīng)過軟件硬件的結合調(diào)試,最后搭建成了一個由單片機控制的帶時鐘顯示功能的定時插座,經(jīng)檢測工作狀態(tài)良好,達到了預期的效果。總之,系統(tǒng)存在以下優(yōu)點和一些需要改進的地方。1、系統(tǒng)帶有時鐘芯片,并有電池供電,可以準確顯示實時時間。2、按鍵少,操作簡單;3、帶有音樂提醒功能。4、數(shù)碼管太大,如果批量生產(chǎn)時可采用小的液晶屏;5、繼電器有電火花,有一定的使

33、用壽命;6、如果電路對功率等有要求可以加上功率顯示電路;7、本系統(tǒng)是用USB供電的,實際應用不方面,可考慮使用降壓電路。目前市場上的定時插座產(chǎn)品種類繁多,在導師的幫助下,我做完了這個畢業(yè)設計,總的來說,我只做到了最基本的要求。在設計制作過程中遇到了很多問題,比如由于對于元器件的不熟悉導致了把執(zhí)行電路中元件的正負極弄反了。導致自己走了很多彎路,浪費了很多時間等等。這些都是我以后工作的經(jīng)驗。定時類插座的研究還要繼續(xù)下去,我所做的東西體積還不夠小,而且負載的功率也不能達到很大,插座本身消耗的功率也沒有降到最低。在將來研究過程中,主要目標應是與通信等其他學科聯(lián)系起來,研究出來功能更加齊全,更智能,比如

34、可以防雷,可以防觸電,能聲控或光控,甚至是遠程控制,并且使用周期長,價格低廉,承受的負載高,自身消耗小的定時插座。結束語在畢業(yè)設計過程中,用到了很多原來學過的知識,不斷地翻看原來的教材,鞏固了在大學4年內(nèi)學過的知識,尤其是單片機和模擬電子方面的知識,不僅拓寬了知識面,還強化了自己的綜合性、實際性。通過實驗使自己掌握了應用單片機的基本技能,培養(yǎng)了動手能力,觀察能力,分析和解決實際問題的能力,鞏固、加深理論課知識,增加感性認識,進一步加深對單片機應用的理解,提高對單片機的應用能力和編程設計,提高對常見單片機設計及電路故障的分析和判斷能力;進一步加深對單片機應用的理解,提高對單片機的應用能力和編程設

35、計。同時,獲得了很豐富的軟件調(diào)試經(jīng)驗,加強了我的實際編程能力,也讓自己更加的知道了自己在知識領域里的不足和缺陷。由于時間太倉促,經(jīng)驗仍不足,理論方面也相應的存在不足,加上條件有限,本設計仍存在著一些方面的問題,個人技能也有待提高。理論知識還要鞏固加強。致 謝冬天的孕育是春天的收獲,在這奮斗的季節(jié)里請允許我懷著感恩的心向那些在我的學業(yè)上、生活中給予我?guī)椭凸膭畹娜藗儽硎局孕牡闹x意!所謂厚積薄發(fā),論文是大學四年所學知識的整合,所以首先,我要感謝大學所有教授過我知識的教風不同的老師們。更應該感謝我的導師XXX,X老師淵博的知識,嚴謹?shù)慕虒W態(tài)度以及誨人不倦的精神將永遠激勵著我,成為我學習的榜樣,有了他

36、的指導才使我的論文得以順利完成!還有實驗中心的周偉老師,單位研發(fā)部的閆誠魯工程師,他們在我軟件編程、硬件制作的過程中給予我了很大的幫助。在此謹向X老師、X老師和閆工及其他關心我教育我的老師、同事表示衷心的感謝和誠摯的敬意!我尤其要感謝我的父母,他們?yōu)槲疑洗髮W付出了很多,吃了很多苦,我才能順利完成學業(yè),今天我終于學有所成,要特別感謝我的父母!還有我的朋友們,在枯燥的時候我們相互鼓勵、共同前進,在知識海洋里的任意遨游使我發(fā)現(xiàn)著文字的美麗,分享著痛苦與快樂,創(chuàng)造著我們共同的勝利時刻。 最后,我要感謝辛勤養(yǎng)育我的親人們,幫我克服了懶惰加快了論文進程??傊?,論文的圓滿完成,讓我體會到了成功的喜悅,也希望

37、你們能陪我一起分享,并祝愿親朋好友,各位老師們?nèi)f事如意!再向大家道一聲“謝謝” !參考文獻1 李群芳,肖看.單片機原理、接口及應用.北京:清華大學出版社,20062 戢衛(wèi)平等.單片機系統(tǒng)開發(fā)實例經(jīng)典.北京:冶金工業(yè)出版社,20053 侯俊杰.深入淺出MFC(第二版).武漢:華中科技大學出版社,20074 李朝青.單片機原理及接口技術(第三版).北京:北京航空航天大學出版社,2005,58-645 譚浩強.C程序設計(第三版).北京:清華大學出版社,2005,37-47,92-1086 .單片機開發(fā)技術與實訓.北京:電子工業(yè)出版社,20067 .51系列單片機C程序設計與應用方案.北京:中國電力

38、出版社,20048 單片機外圍電路設計.北京.電子工業(yè)出版社,20069 .51單片機C語言設計實例精講.北京航空航天大學出版社唐曉強. 中國通信產(chǎn)業(yè)研究 附錄1系統(tǒng)源程序如下:/* * 定時插座*/* 文件名:music.C* 功能:播放音樂,定時器T0產(chǎn)生音調(diào),定時器T1控制節(jié)拍。* 說明:2011-04-14*/#include <buzz.h>#defineA 0xEFA3 / 110.000Hz A#define As 0xF08E / 116.541Hz A#defineB 0xF16C / 123.471Hz B#definec 0xF23D / 130.813Hz

39、c#define cs 0xF303 / 138.591Hz c#defined 0xF3BE / 146.832Hz d#define ds 0xF46E / 155.563Hz d#definee 0xF514 / 164.814Hz e#definef 0xF5B1 / 174.614Hz #define fs 0xF645 / 184.997Hz f#defineg 0xF6D1 / 195.998Hz g#define gs 0xF755 / 207.652Hz g#definea 0xF7D1 / 220.000Hz a#define as 0xF847 / 233.082Hz a

40、#defineb 0xF8B6 / 246.942Hz b#definec1 0xF91F / 261.626Hz c1 (中央C)#define c1s 0xF982 / 277.183Hz c1#defined1 0xF9DF / 293.665Hz d1#define d1s 0xFA37 / 311.127Hz d1#definee1 0xFA8A / 329.628Hz e1#definef1 0xFAD9 / 349.228Hz f1#define f1s 0xFB23 / 369.994Hz f1#defineg1 0xFB68 / 391.995Hz g1#define g1s

41、 0xFBAA / 415.305Hz g1#definea1 0xFBE9 / 440.000Hz a1(標準音)#define a1s 0xFC24 / 466.164Hz a1#defineb1 0xFC5B / 493.883Hz b1#definec2 0xFC8F / 523.251Hz c2#define c2s 0xFCC1 / 554.365Hz c2#defined2 0xFCEF / 587.330Hz d2#define d2s 0xFD1B / 622.254Hz d2#definee2 0xFD45 / 659.255Hz e2#definef2 0xFD6C /

42、698.456Hz f2#define f2s 0xFD91 / 739.989Hz f2#defineg2 0xFDB4 / 783.991Hz g2#define g2s 0xFDD5 / 830.609Hz g2#definea2 0xFDF4 / 880.000Hz a2#define a2s 0xFE12 / 932.328Hz a2#defineb2 0xFE2D / 987.767Hz b2#definec3 0xFE48 / 1046.500Hz c3#define c3s 0xFE60 / 1108.730Hz c3#defined3 0xFE78 / 1174.660Hz d3#define d3s 0xFE8E / 1244.510Hz d3# #definee3 0xFEA3 / 1318.510Hz e3#definef3 0xFEB6 / 1396.910Hz f3#define f3s 0xFEC9 / 1479.980Hz f3#defineg3 0xFEDA /

溫馨提示

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

評論

0/150

提交評論