版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué)院畢業(yè)設(shè)計(jì)(論文)題目家用電器多路定時(shí)控制器系統(tǒng)的設(shè)計(jì)信息與管理學(xué)院電氣系二○○九屆電氣工程及其自動(dòng)化專業(yè)姓名:LI學(xué)號:05DQ035指導(dǎo)教師PAGEIV摘要為了減少種類繁多的家用電器或辦公電子設(shè)備的控制裝置的數(shù)量,便于集中控制,方便實(shí)用人員的操作,這就需要一種功能更全的控制器。以單片機(jī)AT89S51為核心的多路定時(shí)控制器,可以對多路家用電器進(jìn)行定時(shí)開關(guān)控制,實(shí)現(xiàn)一個(gè)控制器可以控制多路用電設(shè)備,同時(shí)還具有時(shí)鐘校準(zhǔn)、時(shí)間顯示、報(bào)警等功能,為以后實(shí)現(xiàn)網(wǎng)絡(luò)控制的數(shù)字家庭提供一些基礎(chǔ)。本文通過按鍵調(diào)整當(dāng)前時(shí)間并設(shè)定定時(shí)時(shí)間,再通過DS1307顯示當(dāng)前時(shí)間,設(shè)定定時(shí)時(shí)間后,LED顯示倒計(jì)時(shí),當(dāng)定時(shí)時(shí)間到時(shí),斷開繼電器并發(fā)出報(bào)警。此定時(shí)器的特點(diǎn)具有:操作簡單,功能實(shí)用;應(yīng)用范圍廣,可同時(shí)控制多個(gè)電器;電子式定時(shí)時(shí)間精確,定時(shí)時(shí)間長。關(guān)鍵詞:單片機(jī);時(shí)鐘芯片;定時(shí)器 AbstractInordertoreducetypemanydomesticelectricappliancesorworkelectronicinstallationcontroldevicequantity,isadvantageousforthecommoncontrol,facilitatesthepracticalpersonnel'soperation,thisneedsonekindoffunctionentirecontroller.TakemonolithicintegratedcircuitAT89S51asthecoremulti-channelfixedtimecontrollers,maycarryonthetimecut-outcontroltothemulti-channeldomesticelectricappliances,realizesacontrollertobepossibletocontrolthemulti-channelcurrentcollector,meanwhilehastheclockcalibration,thetimedemonstrated,reportstothepoliceandsoonthefunctions,willrealizethenetworkcontroldigitalfamilyforlatertoprovidesomefoundations.Thisarticleandestablishesfixedtimethetimethroughthepressedkeyadjustmentcurrenttime,againthroughDS1307demonstratedthecurrenttime,afterthehypothesisfixedtime,LEDdemonstratesthecountdown,whenfixedtimethetimeattheappointedtime,separatestherelayandsendsoutreportstothepolice.Thistimercharacteristichas:Operatessimply,thefunctionispractical;Theapplicationscopeisbroad,maysimultaneouslycontrolmanyelectricappliances;Theelectronicformulatimeisfixedtimeprecise,thetimeisfixedtimelong.Keyword:Monolithicintegratedcircuit;Clockchip;Timer目錄摘要………….IAbstract…………….…….II前言…………………...……..V第1章緒論……………11.1設(shè)計(jì)要求………………11.2設(shè)計(jì)思路………………11.3硬件電路設(shè)計(jì)框圖……………………2第2章單片機(jī)應(yīng)用系統(tǒng)的硬件設(shè)計(jì)………………32.1單片機(jī)的選擇…………32.2.時(shí)鐘電路設(shè)計(jì)…………62.3復(fù)位電路設(shè)計(jì)…………62.4單片機(jī)最小應(yīng)用系統(tǒng)…………………72.5LED顯示電路設(shè)計(jì)與器件選擇………92.5.1LED顯示器的選擇………………92.5.2LED段驅(qū)動(dòng)芯片的選擇………102.5.3LED位驅(qū)動(dòng)芯片的選擇………112.5.4LED驅(qū)動(dòng)電路與單片機(jī)的連接………………122.6蜂鳴器電路的設(shè)計(jì)…………………132.7鍵盤電路設(shè)計(jì)與器件選擇…………142.8串行接口RTC芯片DS1307及應(yīng)用…………………162.8.1DS1307時(shí)鐘芯片的引腳功能…………………162.8.2DS1307時(shí)鐘格式和地址分配…………………DS1307的內(nèi)部寄存器與RAM地址分配…時(shí)鐘和日歷格式…………DS1307芯片品與單片機(jī)的連接…………DS1307操作時(shí)序…………202.9控制輸出電路的設(shè)計(jì)212.10本章小結(jié)22第3章單片機(jī)應(yīng)用系統(tǒng)的軟件設(shè)計(jì)……..………24結(jié)論…………………….25附錄…………………….26致謝……………………35參考文獻(xiàn)……………..36前言“定時(shí)器”總的來說有兩種類型。其一是基于模擬技術(shù)的傳統(tǒng)產(chǎn)品,這種定時(shí)器功能簡單,盡管曾被廣泛應(yīng)用過,但已進(jìn)入淘汰之列。另一種就是基于數(shù)字技術(shù)的新一代產(chǎn)品,這種產(chǎn)品功能強(qiáng),是前者的換代之物。然而,此類產(chǎn)品大多是較大型的設(shè)備,真正實(shí)用、攜帶方便、功能齊全的“大路”商品則就不多見了。隨著單片機(jī)性能價(jià)格比的不斷提高,新一代產(chǎn)品的應(yīng)用越來越廣泛,大可構(gòu)成復(fù)雜的工業(yè)過程控制系統(tǒng),完成復(fù)雜的控制功能,小則可以用于家電控制,甚至能夠用來做兒童電子玩具。它功能強(qiáng)大,體積小,重量輕,靈活好用,配以適當(dāng)?shù)慕涌谛酒?,可以?gòu)造各種各樣、功能各異的微電子產(chǎn)品。隨著電子技術(shù)的飛速發(fā)展,家用電器和辦公電子設(shè)備逐漸增多,不同的設(shè)備都有各自的控制器,使用起來很不方便。根據(jù)這種實(shí)際情況,本文介紹了一種多路定時(shí)控制器的設(shè)計(jì),它可以避免多種控制器的混淆,利用一個(gè)控制器實(shí)現(xiàn)對多路電器進(jìn)行控制,同時(shí)又可以進(jìn)行時(shí)鐘校準(zhǔn)和設(shè)定多點(diǎn)開、關(guān)的時(shí)間。這種具有人們所需要的智能化特性的產(chǎn)品減輕了人的勞動(dòng),為以后數(shù)字化家庭的誕生提供了可能,便于實(shí)現(xiàn)家用電器的網(wǎng)絡(luò)控制。鑒此,設(shè)計(jì)了一種基于單片機(jī)的多路定時(shí)控制器PAGE37第1章緒論單片機(jī)應(yīng)用系統(tǒng)是指以單片機(jī)為核心,配以一定的外圍電路和軟件,能實(shí)現(xiàn)某些功能的應(yīng)用系統(tǒng)。它由硬件部分和軟件部分組成。因此,單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩大部分。為保證系統(tǒng)的可靠性工作,在軟、硬件的設(shè)計(jì)中,還要考慮系統(tǒng)的抗干擾能力,即設(shè)計(jì)過程還包括系統(tǒng)的抗干擾設(shè)計(jì)。設(shè)計(jì)要求要求設(shè)計(jì)一個(gè)家庭定時(shí)控制器系統(tǒng),控制相應(yīng)的家用器具,如電燈、電視、錄音機(jī)、熱水器,空調(diào),電飯煲等。要求控制準(zhǔn)確,時(shí)間誤差小,主要考慮如何實(shí)現(xiàn)精確定時(shí),及定時(shí)長度問題。1.2設(shè)計(jì)思路根據(jù)設(shè)計(jì)要求,初步確定設(shè)計(jì)方案如下:選擇DS1307芯片作為系統(tǒng)的時(shí)鐘/日歷,當(dāng)前時(shí)間從DS1307芯片中讀出。其中SDA接P1.0引腳,SCL接P1.1引腳。系統(tǒng)顯示采用4位LED數(shù)碼管。LED數(shù)碼管的段碼輸入由P0產(chǎn)生、位碼輸入由P2產(chǎn)生。時(shí)間調(diào)整與定時(shí)時(shí)間的輸入通過接入鍵盤電路實(shí)現(xiàn)。設(shè)計(jì)4個(gè)按鍵,分別定義為:SET鍵(時(shí)間調(diào)整設(shè)置位):其功能是當(dāng)該鍵按下時(shí),進(jìn)入時(shí)間調(diào)整功能。ALM鍵(定時(shí)時(shí)間設(shè)置鍵):其功能是當(dāng)該鍵按下時(shí),進(jìn)入定時(shí)時(shí)間輸入功能。+1鍵:其功能是當(dāng)該鍵按下時(shí),被調(diào)整位加一。RET鍵:其功能是當(dāng)該鍵按下時(shí),指向下一個(gè)要調(diào)整的位。按鍵的接入方式:SET鍵:通過P3口INT1引腳接入,中斷工作方式。ALM鍵:通過P3口INT0引腳接入,中斷工作方式。+1鍵:通過P3口P3.5引腳接入,查詢工作方式。RET鍵:通過P3口P3.4引腳接入,查詢工作方式。報(bào)警聲響用蜂鳴器產(chǎn)生,蜂鳴器接入P1口的P1.7腳。6)外部電器電源的通斷用繼電器來完成,繼電器觸點(diǎn)的斷開與接通,通過P1口的某些引腳控制。1.3硬件電路設(shè)計(jì)框圖根據(jù)設(shè)計(jì)要求與設(shè)計(jì)思路,硬件電路設(shè)計(jì)框圖如圖1.1所示。硬件電路結(jié)構(gòu)由7個(gè)部分:按鍵輸入電路、時(shí)鐘與復(fù)位電路、蜂鳴器電路、LED顯示器及驅(qū)動(dòng)電路、繼電器電路、電源電路和時(shí)鐘/日歷電路組成。按鍵按鍵輸入電路時(shí)鐘電路復(fù)位電路蜂鳴器電路單片機(jī)LED顯示器驅(qū)動(dòng)電路繼電器電路RTCDS13078位LED顯示器圖1.1硬件電路設(shè)計(jì)框圖第2章單片機(jī)應(yīng)用系統(tǒng)的硬件設(shè)計(jì)一個(gè)單片機(jī)應(yīng)用系統(tǒng)的硬件設(shè)計(jì)包括兩個(gè)部分內(nèi)容:一是單片機(jī)系統(tǒng)的擴(kuò)展部分設(shè)計(jì),它包括存儲(chǔ)器擴(kuò)展和接口擴(kuò)展。存儲(chǔ)器擴(kuò)展指EPROM、EEPROM和RAM的擴(kuò)展。接口擴(kuò)展是指8255、8155、8279以及其他功能器件的擴(kuò)展。二是各功能模塊的設(shè)計(jì),如信號測量模塊,信號控制功能模塊,人機(jī)對話功能模塊,通信功能模塊等,根據(jù)系統(tǒng)功能要求配置相應(yīng)的A/D,D/A,鍵盤,顯示器,打印機(jī)等外圍設(shè)備。2.1單片機(jī)的選擇根據(jù)初步設(shè)計(jì)方案的分析,設(shè)計(jì)這樣一個(gè)簡單的應(yīng)用程序,可以選擇帶有EPROM的單片機(jī),應(yīng)用程序直接存儲(chǔ)在片內(nèi),不用在外部擴(kuò)展程序存儲(chǔ)器,電路可以簡化。AT89S51是一個(gè)低功耗,高性能CMOS8位單片機(jī),如圖2.1所示,片內(nèi)含4kBytesISP(In-systemprogrammable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISPFlash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。AT89S51具有如下特點(diǎn):40個(gè)引腳,4kBytesFlash片內(nèi)程序存儲(chǔ)器,128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。此外,AT89S51設(shè)計(jì)和配置了振蕩頻率可為0Hz并通過軟件設(shè)置節(jié)電模式??臻e模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其他功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適合不同產(chǎn)品的需求。 圖2.1AT89S51引腳配置圖AT89S51各引腳功能:VCC:AT89S51電源正端輸入,接+5V。VSS:電源地端。XTAL1:單芯片系統(tǒng)時(shí)鐘的反相放大器輸入端。XTAL2:系統(tǒng)時(shí)鐘的反相放大器輸出端,一般在設(shè)計(jì)上只要在XTAL1和XTAL2上接上一只石英振蕩晶體系統(tǒng)就可以動(dòng)作了,此外可以在兩引腳與地之間加入一30PF的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)。RESET:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。EA/Vpp:EA為英文“ExternalAccess”的縮寫,表示存取外部程序代碼之意,低電平動(dòng)作,也就是說當(dāng)此引腳接低電平后,系統(tǒng)會(huì)取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),EA將內(nèi)部鎖定為RESET。當(dāng)EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(Vpp)。ALE/PROG:ALE是英文“AddressLatchEnable”的縮寫,表示地址鎖存器啟用信號。AT89S51可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0~A7)鎖進(jìn)鎖存器中,因?yàn)锳T89S51是以多工的方式送出地址及數(shù)據(jù)。平時(shí)在程序執(zhí)行時(shí)ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅(qū)動(dòng)其他周邊晶片的時(shí)基輸入。PSEN:此為“ProgramStoreEnable”的縮寫,其意為程序儲(chǔ)存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(shí)(EA=0),會(huì)送出此信號以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S51可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器可以合并在一起而共用64K的定址范圍。PORT0(P0.0~P0.7):端口0是一個(gè)8位漏級開路雙向I/O口,P0.0表示位0,P0.1表示位1,P0在當(dāng)作I/O用時(shí)可以推動(dòng)8個(gè)LS的TTL負(fù)載。當(dāng)EA引腳為低電平時(shí)(即取用外部程序代碼或數(shù)據(jù)存儲(chǔ)器),P0就以多工方式提供地址總線(A0~A7)及數(shù)據(jù)總線(D0~D7)。設(shè)計(jì)者必須外加一個(gè)鎖存器將端口0送出的地址鎖存成為A0~A7,再配合端口2所送出的A8~A15合成一個(gè)完整的16位地址總線,而定址到64K的外部存儲(chǔ)器空間。PORT2(P2.0~P2.7):端口2是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,每一個(gè)引腳可以推動(dòng)4個(gè)LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來使用。P2除了當(dāng)作一般I/O端口使用外,若是在AT89S51擴(kuò)充外接程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),也提供地址總線的高字節(jié)A8~A15,這個(gè)時(shí)候P2便不能當(dāng)作I/O來使用了。PORT1(P1.0~P1.7):端口1也是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,其輸出緩沖器可以推動(dòng)4個(gè)LSTTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)作定時(shí)器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。PORT3(P3.0~P3.7):端口3也具有一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,其輸出緩沖器可以推動(dòng)4個(gè)TTL負(fù)載,同時(shí)還具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋F湟_分配如下:P3.0:RXD,串行通信輸入。P3.1:TXD,串行通信輸出。P3.2:INT0,外部中斷0輸入。P3.3:INT1,外部中斷1輸入。P3.4:T0,計(jì)時(shí)計(jì)數(shù)器0輸入。P3.5:T1,計(jì)時(shí)計(jì)數(shù)器1輸入。P3.6:WR,外部數(shù)據(jù)存儲(chǔ)器的寫入信號。P3.7:RD,外部數(shù)據(jù)存儲(chǔ)器的讀取信號。2.2時(shí)鐘電路設(shè)計(jì)時(shí)鐘是單片機(jī)的心臟,單片機(jī)各功能部件的運(yùn)行都是以時(shí)鐘頻率為基準(zhǔn),有條不紊的一拍一拍地工作。因此,時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。常用的時(shí)鐘電路有兩種方式:一種是內(nèi)部時(shí)鐘方式,另一種為外部時(shí)鐘方式。本文用的是內(nèi)部時(shí)鐘方式。電路圖如下:圖2.2時(shí)鐘電路AT89S51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,該高增益反向放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個(gè)引腳跨接石英晶體振蕩器和微調(diào)電容,就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。2.3復(fù)位電路設(shè)計(jì)單片機(jī)的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位引腳RST通過一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,在每個(gè)機(jī)器周期的S5P2,斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號。復(fù)位電路通常采用上電自動(dòng)復(fù)位。上電復(fù)位電路是—種簡單的復(fù)位電路,只要在REST復(fù)位引腳接一個(gè)電容到VCC,接一個(gè)電阻到地就可以了。上電復(fù)位是指在給系統(tǒng)上電時(shí),復(fù)位電路通過電容加到REST復(fù)位引腳一個(gè)短暫的高電平信號,這個(gè)復(fù)位信號隨著VCC對電容的充電過程而回落,所以REST引腳復(fù)位的高電平維持時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)安全可靠的復(fù)位,RST引腳的高電平信號必須維持足夠長的時(shí)間。電路圖如下:圖2.3復(fù)位電路上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。只要Vcc的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。2.4單片機(jī)最小應(yīng)用系統(tǒng)用AT89S51芯片構(gòu)成最小應(yīng)用系統(tǒng)時(shí),如圖2.4所示,只需將單片機(jī)接上時(shí)鐘電路和復(fù)位電路即可。圖2.4單片機(jī)最小應(yīng)用系統(tǒng)其應(yīng)用特點(diǎn)是:(1)受集成度所限,只能用于小型控制單元。(2)有可供用戶使用的大量的I/O口線。因無外部寄存器擴(kuò)展,這時(shí)EA接高電平,P0、P1、P2、P3都可作為用戶I/O口使用。(3)因僅有芯片內(nèi)部的存儲(chǔ)器,故存儲(chǔ)器的容量有限。(4)應(yīng)用系統(tǒng)的開發(fā)具有特殊性,P1、P2口的應(yīng)用于開發(fā)環(huán)境差別較大,由于它的應(yīng)用程序量不大,外電路簡單,所以采用模擬開發(fā)手段較好。(5)AT89S51的應(yīng)用軟件要依靠半導(dǎo)體掩膜技術(shù)置入,因此比較適用于在大批量生產(chǎn)的應(yīng)用系統(tǒng)中采用2.5LED顯示電路設(shè)計(jì)與器件選擇單片機(jī)應(yīng)用系統(tǒng)中,通常都需要進(jìn)行人-機(jī)對話。這包括人對應(yīng)用系統(tǒng)的狀態(tài)干預(yù)與數(shù)據(jù)輸入,以及應(yīng)用系統(tǒng)向人們顯示運(yùn)行狀態(tài)與運(yùn)行結(jié)果等。顯示器、鍵盤電路就是用來完成人-機(jī)對話活動(dòng)的人-機(jī)通道。LED顯示器的驅(qū)動(dòng)是一個(gè)非常重要的問題,由系統(tǒng)硬件設(shè)計(jì)框圖可知,顯示電路由LED顯示器、段驅(qū)動(dòng)電路和位驅(qū)動(dòng)電路組成。由于單片機(jī)的并行口不能直接驅(qū)動(dòng)LED顯示電路,必須采用專用的驅(qū)動(dòng)電路芯片,使之產(chǎn)生足夠大的電流,顯示器才能夠正常工作。如果驅(qū)動(dòng)能力差,即負(fù)載能力不夠時(shí),顯示器亮度就低,而且驅(qū)動(dòng)電路長期在超負(fù)荷下運(yùn)行容易損壞。因此,在實(shí)際使用中必須接入LED驅(qū)動(dòng)電路。數(shù)碼管是由8個(gè)發(fā)光二極管構(gòu)成的顯示器件。在數(shù)碼管中,若將二極管的陽極連在一起,稱為共陽極數(shù)碼管;若將二極管的陰極連在一起,稱為共陰極數(shù)碼管。本文用到的4個(gè)數(shù)碼管均是共陰極的。當(dāng)發(fā)光二極管導(dǎo)通時(shí),它就會(huì)發(fā)光。每個(gè)二極管就是一個(gè)筆劃,若干個(gè)二極管發(fā)光時(shí),就構(gòu)成了一個(gè)顯示字符。將單片機(jī)的I/O口控制相應(yīng)的芯片與數(shù)碼管的a-g相連,高電平的位對應(yīng)的發(fā)光二極管亮,這樣,由I/O口輸出不同的代碼,就可以控制數(shù)碼管顯示不同的字符。例如:當(dāng)I/O口控制芯片輸出的代碼是00111111時(shí),數(shù)碼管顯示的字符為0。這樣形成的顯示字符的代碼稱為顯示代碼或段選碼。LED顯示器的顯示控制方式分為靜態(tài)顯示和動(dòng)態(tài)顯示兩種,因此在選擇LED驅(qū)動(dòng)器時(shí)一定要先確定顯示方式。若選擇靜態(tài)顯示,則LED驅(qū)動(dòng)器的選擇較為簡單,只要驅(qū)動(dòng)器的驅(qū)動(dòng)能力與顯示器電流匹配即可。而且只須考慮段的驅(qū)動(dòng),因?yàn)楣碴枠O接+5V,而共陰極接地,所以位的驅(qū)動(dòng)不需要考慮。動(dòng)態(tài)顯示則不同,由于一位數(shù)據(jù)的顯示是由段選和位選共同配合完成的,因此,要同時(shí)考慮段和位的驅(qū)動(dòng)能力,而且段的驅(qū)動(dòng)能力決定位的驅(qū)動(dòng)能力。2.5.1LED顯示器的選擇在應(yīng)用系統(tǒng)中,由于設(shè)計(jì)要求不同,生產(chǎn)廠家就生產(chǎn)了位數(shù)、尺寸、型號不同的LED顯示器供選擇。在本設(shè)計(jì)中,選擇4位一體的時(shí)鐘型LED顯示器,簡稱“4-LED”,如圖2.5所示。用“:”前的2位顯示“分”的十位和個(gè)位,用“:”后的2位顯示“秒”的十位和個(gè)位。圖2.54-LED顯示器引腳4-LED顯示器引腳如圖所示,是一個(gè)共陰極接法的4位時(shí)鐘型LED顯示器。其中a、b、c、d、e、f、g為4位LED各段的公共引出端。D1、D2、D3、D4分別是每一個(gè)的共陰極輸出端,dp是小數(shù)點(diǎn)引出端。4位一體時(shí)鐘型LED顯示器的內(nèi)部結(jié)構(gòu)是由4個(gè)單獨(dú)的LED和一個(gè)“:”LED組成,每個(gè)LED的段輸出引腳在內(nèi)部并聯(lián)后,引出到器件的外部。對于這種結(jié)構(gòu)的LED顯示器,它的體積和結(jié)構(gòu)都符合設(shè)計(jì)要求,由于4位LED陰極的各段已經(jīng)在內(nèi)部接在一起,所以是用動(dòng)態(tài)掃描方式。2.5.2LED段驅(qū)動(dòng)芯片的選擇LED的段驅(qū)動(dòng)電路有很多種,在本設(shè)計(jì)中,可以選擇BCD-7段譯碼/驅(qū)動(dòng)器作為段驅(qū)動(dòng)電路。這類芯片的型號有74LS47、74LS48、74LS247、74LS248等,該類芯片具有譯碼、驅(qū)動(dòng)的功能。即在輸入端輸入要顯示字形的BCD碼,在輸出端可以得到具有一定驅(qū)動(dòng)能力的7段顯示字形碼。圖2.674LS48芯片引腳圖7給出了74LS48的引腳圖和結(jié)構(gòu)原理圖。引腳圖中大寫字母A、B、C、D為BCD碼的輸入端,小寫字母a、b、c、d、e、f、g為字形碼輸出端,LT測試輸入端,RBI為消隱輸入,RBO為消隱輸出。表給出了74LS48BCD-7段譯碼/驅(qū)動(dòng)器的輸入與輸出信號的對應(yīng)關(guān)系。在使用時(shí),將該芯片的輸入端引腳A、B、C、D與單片機(jī)的P0口連接,該芯片的輸出端7個(gè)引腳,與LED顯示器的7個(gè)段碼引腳相連接。74LS48的作用是接受來自單片機(jī)的BCD碼型的輸入信號,經(jīng)過譯碼和放大后,輸出7段字形碼到LED顯示器,完成對BCD碼到7段字形碼的譯碼和驅(qū)動(dòng)的功能。表2.174LS48BCD-7段譯碼器輸入/輸出端信號對照表輸入端電平輸出端電平顯示字形輸入端電平輸出端電平顯示字形DCBAgfedcbaDCBAgfedcba0000011111100101110110150001000011010110111110160010101101120111000011170011100111131000111111180100110011041001110111192.5.3LED位驅(qū)動(dòng)芯片的選擇LED的位驅(qū)動(dòng)較常用的芯片有ULN2003A和ULN2803。前者是具有7個(gè)達(dá)林頓電路的集成芯片,后者是具有8個(gè)達(dá)林頓電路的集成芯片。此種芯片集電極可以收集最大達(dá)500mA的電流,耐壓為30V,能驅(qū)動(dòng)常規(guī)的LED顯示器。圖2.7是ULN2803芯片的引腳圖和電路原理圖。2803芯片的電路原理和2003完全相同,只是在結(jié)構(gòu)上2803比2003多一路驅(qū)動(dòng)器。圖2.7ULN2803芯片引腳圖圖中的IN1~I(xiàn)N8引腳是輸入端,OUT1~OUT8引腳是輸出端。在本設(shè)計(jì)中選用ULN2803作為位驅(qū)動(dòng)電路,將該芯片的輸入端引腳IN1、IN2、IN3、IN4、IN5、IN6、IN7與單片機(jī)的P2連接,該芯片的輸出端引腳OUT1、OUT2、OUT3、OU4與LED顯示器的4個(gè)位碼引腳D1~D4相連接。ULN2803的作用是接受來自單片機(jī)的位碼輸入信號,經(jīng)過反相放大后輸出,送到LED顯示器的位碼引腳,完成對位碼信號的反向和驅(qū)動(dòng)的功能。2.5.4LED驅(qū)動(dòng)電路與單片機(jī)的連接可以采用單片機(jī)的P0口作為與LED的輸出接口,即P0口的低四位作為LED的段碼輸出信號,P2口的低四位作為LED位碼的輸出控制信號。硬件電路連接如圖9所示。R1是上拉電阻,作用是保證LED可靠導(dǎo)通與截止,可以選擇8腳排電阻(7×100Ω)。圖2.84-LED顯示器接口電路原理該電路的工作原理是:當(dāng)P0口的低四位輸出段碼信號的BCD碼后,通過74LS48芯片的譯碼和驅(qū)動(dòng)作用,在其輸出端輸出具有一定驅(qū)動(dòng)能力的七段字形碼,由于4-LED的段碼輸入引腳是并聯(lián)在一起的,所以每一位LED的段碼輸入引腳都能獲得這個(gè)段碼信號。若要控制在每一時(shí)刻只有一位LED被點(diǎn)亮,必須靠位碼信號控制。P2口的低4位輸出位碼信號,經(jīng)ULN2803A反向后接到LED的位碼控制端,因此P2口的位碼信號在每一時(shí)刻只有一位是“1”,其他位全為“0”,然后按時(shí)間順序改變輸出“1”的位置,控制在每一時(shí)刻只有一位LED被點(diǎn)亮,達(dá)到動(dòng)態(tài)顯示的目的。2.6蜂鳴器電路的設(shè)計(jì)設(shè)計(jì)要求定時(shí)時(shí)間到時(shí)要有聲音提醒信號產(chǎn)生,可選擇一只蜂鳴器來實(shí)現(xiàn)這一功能。壓電式蜂鳴器(HA)工作時(shí)約需10mA的驅(qū)動(dòng)電流,并設(shè)計(jì)一個(gè)相應(yīng)的驅(qū)動(dòng)及控制電路。電路設(shè)計(jì)如圖所示,蜂鳴器(HA)作為三極管VT1的集電極負(fù)載,當(dāng)VT1導(dǎo)通時(shí),蜂鳴器發(fā)出鳴叫聲音,VT1截止時(shí),蜂鳴器不發(fā)聲。R3是限流電阻。圖2.9蜂鳴器電路原理圖蜂鳴器電路與單片機(jī)的接口:VT1的基極接到單片機(jī)P1口的P1.7引腳,P1.7引腳作為輸出口使用。當(dāng)P1.7=0時(shí),VT1導(dǎo)通,使蜂鳴器中有電流通過,而產(chǎn)生蜂鳴音。當(dāng)P1.7=1時(shí),VT1截止,蜂鳴器的兩引腳間的直流電壓接近于0V,蜂鳴器不發(fā)生。蜂鳴器有長聲和短聲兩種,可以根據(jù)需要進(jìn)行選擇。本設(shè)計(jì)選擇短聲蜂鳴器,蜂鳴器報(bào)警時(shí)間的長短,通過軟件編程控制,請參看主程序設(shè)計(jì)2.7鍵盤電路設(shè)計(jì)與器件選擇按鍵是一組常開的按鍵開關(guān),每個(gè)按鍵都被賦予一個(gè)代碼,稱為鍵碼.按鍵的開關(guān)狀態(tài)通過一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過程在相應(yīng)的I/O端口形成一個(gè)負(fù)脈沖。閉合和釋放過程都要經(jīng)過一定的過程才能達(dá)到穩(wěn)定,這一過程是處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動(dòng)。抖動(dòng)持續(xù)時(shí)間的長短與開關(guān)的機(jī)械特性有關(guān),一般在5-10ms之間。為了避免CPU多次處理按鍵的一次閉合,應(yīng)采用措施消除抖動(dòng)。本文在軟件中采用了相應(yīng)的軟件程序來消除抖動(dòng)。當(dāng)發(fā)現(xiàn)有鍵按下時(shí),延時(shí)10-20ms再查詢是否有鍵按下,若沒有鍵按下,說明上次查詢結(jié)果為干擾或抖動(dòng);若仍有鍵按下。則說明閉合鍵已穩(wěn)定。在單片機(jī)組成的測控系統(tǒng)及智能化儀器中,用得最多的是非編碼鍵盤。鍵盤結(jié)構(gòu)可以分為獨(dú)立式鍵盤和行列式鍵盤(矩陣式)兩類。在本設(shè)計(jì)中需要4個(gè)按鍵,因此選擇獨(dú)立式鍵盤。如圖2.10所示,電路由按鍵和4個(gè)電阻組成,按鍵分別命名為SET、ALM、+1和RET鍵,按鍵可以采用輕觸開關(guān),電阻可以采用5腳排電阻(4×1kΩ)。圖2.10鍵盤接口電路原理圖如圖2.10所示,將鍵盤直接于單片機(jī)的P3.3、P3.2引腳通過兩個(gè)按鍵SET、ALM接入兩個(gè)外部中斷的請求信號INT1、INT0;P3.5、P3.4引腳作為I/O口使用,通過兩個(gè)按鍵+1、RET接入兩個(gè)輸入信號。4個(gè)按鍵功能的設(shè)計(jì)思路如下:eq\o\ac(○,1)當(dāng)SET鍵被按下時(shí),在單片機(jī)的INT1引腳產(chǎn)生一個(gè)低電平觸發(fā)中斷請求信號,CPU響應(yīng)中斷請求時(shí),就轉(zhuǎn)移到INT1中斷服務(wù)程序入口地址,執(zhí)行INT1的中斷服務(wù)程序。設(shè)計(jì)INT1的中斷服務(wù)程序的功能是調(diào)整當(dāng)前時(shí)間。即當(dāng)電子時(shí)鐘的時(shí)間有誤差時(shí),需要隨時(shí)對它進(jìn)行調(diào)整,使用SET鍵與+1鍵、RET鍵配合來完成這一功能。eq\o\ac(○,2)當(dāng)ALM鍵被按下時(shí),在單片機(jī)的INT0引腳產(chǎn)生一個(gè)低電平觸發(fā)中斷信號,CPU響應(yīng)中斷請求時(shí),就轉(zhuǎn)移到INT0中斷服務(wù)程序的入口地址,執(zhí)行INT0的中斷服務(wù)程序。INT0的中斷服務(wù)程序的功能是輸入定時(shí)時(shí)間。即當(dāng)需要電子時(shí)鐘進(jìn)行定時(shí)服務(wù)時(shí),可以通過該鍵的功能來輸入定時(shí)時(shí)間,使用ALM鍵與+1鍵、RET鍵配合來完成這一功能。eq\o\ac(○,3)+1調(diào)整健功能:分別對時(shí)間值的分十位、分個(gè)位、秒的十位、秒的個(gè)位進(jìn)行+1調(diào)整,即該鍵每按下一次,對應(yīng)的時(shí)間調(diào)整位+1。eq\o\ac(○,4)RET確認(rèn)鍵功能:確認(rèn),即對+1調(diào)整位進(jìn)行確認(rèn),該鍵按下時(shí),說明被調(diào)整位的值已經(jīng)確定,轉(zhuǎn)去調(diào)整下一位。2.8串行接口RTC芯片DS1307及應(yīng)用DS1307串行實(shí)時(shí)時(shí)鐘芯片,是一種具有I2C總線接口的外圍器件,該芯片內(nèi)部具有BCD碼時(shí)鐘/日歷和56個(gè)自己的非易失性SRAM的數(shù)據(jù)存儲(chǔ)器;兩線串行接口和頻率可變的單方波輸出;自動(dòng)的掉電保護(hù)和開關(guān)循環(huán)等功能。由于它具有可編程、低功耗、體積較小和引腳少的特點(diǎn),特別適用于單片機(jī)應(yīng)用系統(tǒng)中。2.8.1DS1307時(shí)鐘芯片的引腳功能DS1307的封裝方式有8引腳DIP和16引腳SOIC方式,8引腳DIP封裝方式如圖2.11所示。圖2.11DS1307引腳圖圖2.12DS1307內(nèi)部結(jié)構(gòu)各引腳功能如下:Vcc,GND:直流電源接入引腳。Vbat:電池接入端,電池電壓必須在2.0V和3.5V之間,能使DS1307再?zèng)]有電源的情況下工作十年。SCL:時(shí)鐘信號輸入端,使數(shù)據(jù)在串行接口的傳送同步進(jìn)行,需外接上拉電阻。SDA:串行數(shù)據(jù)輸入/輸出的引腳,需外接上拉電阻。SQW/OUT:頻率可變的方波輸出端,有4種頻率信號:1Hz,4kHz,8kHz和32kHz可以選擇。SQW/OUT引腳需要外部上拉電阻。X1,X2:外接晶振引腳,與標(biāo)準(zhǔn)32kHz晶振相連,可以修正時(shí)鐘的精確性。2.8.2DS1307時(shí)鐘格式和地址分配DS1307的內(nèi)部寄存器與RAM地址分配DS1307的內(nèi)部有存儲(chǔ)器RAM與RTC時(shí)間寄存器兩部分組成,地址分配如圖2.13所示。RTC時(shí)間寄存器的地址從00H到07H。RAM有56個(gè)字節(jié),地址從08H到3FH。在多字節(jié)數(shù)據(jù)存取時(shí),地址指針自動(dòng)加一,當(dāng)?shù)刂分羔樦傅絉AM最后一位3FH時(shí),自動(dòng)循環(huán)到00H地址。使用時(shí),只要在程序中規(guī)定好第一個(gè)字節(jié)地址及讀寫字節(jié)數(shù),讀寫N個(gè)字節(jié)與一個(gè)字節(jié)一樣方便。名稱秒分小時(shí)星期日月年控制寄存器存儲(chǔ)器RAM……RAM地址00H01H02H03H04H05H06H07H08H3FH圖2.13 地址分配時(shí)鐘和日歷格式時(shí)間和日期都以BCD碼形式分別存放在7個(gè)寄存器中,通過讀這些相應(yīng)的寄存器字節(jié)可以得到時(shí)鐘和日期的信息。通過寫入相應(yīng)寄存器字節(jié)可以設(shè)置時(shí)間和日期。1)秒寄存器(地址00H)。最高位CH(bit7)是時(shí)鐘工作控制位,CH=0,晶振工作,當(dāng)CH=1時(shí),晶振停止工作。其他7位是“秒”的時(shí)間值,bit6~bit4三位是“秒”的個(gè)位數(shù)。數(shù)的范圍:00H~59H。最初上電時(shí),寄存器的狀態(tài)沒有被定義。因此,在初始化時(shí),首先將CH=0時(shí)振蕩器工作。2)分寄存器(地址01H)。最高位bit=0,其他7位的含義與秒寄存器相同。3)小時(shí)寄存器(地址02H)。DS1307可以選擇12小時(shí)或24小時(shí)兩種工作模式:小時(shí)寄存器的最高位bit=0,第6位(12/24)小時(shí)模式選擇位。若12/24位為1,選擇12小時(shí)模式。在12小時(shí)模式時(shí),第5位是AM/PM設(shè)置位,高電平時(shí)為PM,第4位是小時(shí)的十?dāng)?shù)位;當(dāng)12/24位為0時(shí),DS1307工作在24小時(shí)模式。在24小時(shí)模式下,第5位和第4位是小時(shí)的十?dāng)?shù)位,低4位是小時(shí)的個(gè)位數(shù)。4)星期寄存器(地址03H)只使用了后3位表示星期值。5)控制寄存器(地址07H)??刂萍拇嫫鞯墓δ苁窃O(shè)置SQW/OUT引腳的輸出方式以及輸出方波的頻率??刂萍拇嫫饔?位組成,其中有4位的設(shè)置如下:SQWE:SQW/OUT引腳輸出方波控制位,當(dāng)SQWE=1時(shí),SQW/OUT引腳的輸出固定頻率方波,方波頻率決定于RS1、RS0位的值。當(dāng)SQWE=0時(shí),SQW/OUT引腳的輸出由OUT位控制。當(dāng)輸出方波的頻率為1Hz時(shí),時(shí)鐘寄存器的值在方波下降沿時(shí)被更新。OUT:當(dāng)方波輸出無效時(shí),控制SQW/OUT引腳的輸出。如果SQWE=0,當(dāng)OUT=1時(shí),SQW/OUT引腳輸出高電平,當(dāng)OUT=0時(shí),SQW/OUT引腳輸出低電平。RS1、RS0:當(dāng)方波輸出有效時(shí),這兩位的值控制方波輸出頻率。表列出了輸出方波的頻率。表2.2SQW/OUT引腳輸出方波的頻率與RS1、RS0的對應(yīng)關(guān)系RS1RS0輸出方波的頻率001Hz014.096kHz108.192kHz1132.768kHzDS1307芯片品與單片機(jī)的連接DS1307芯片于單片機(jī)的接口如圖2.14所示,P1.0與SDA端連接,P1.1與SCL端連接,并接有3個(gè)上拉電阻。SQW/OUT接P1.2,設(shè)置讀時(shí)鐘的間隔時(shí)間。Vbat端接備用電池,X1、X2接32.768kHz的晶體振蕩器。SDA與SCL接點(diǎn)構(gòu)成串行數(shù)據(jù)總線,在串行數(shù)據(jù)總線上還可以連接更多的串行接口的外圍設(shè)備。DS1307支持全雙工、I2C總線和數(shù)據(jù)傳送協(xié)議。圖2.14DS1307與單片機(jī)的連接DS1307操作時(shí)序DS1307的操作時(shí)序是由起始信號START、停止信號STOP、器件尋址、讀/寫操作、應(yīng)答信號ACK和非應(yīng)答信號NACK等組成,可以概括的歸納為以下幾個(gè)步驟:1)發(fā)送起始信號START。2)發(fā)送DS1307的讀/寫命令字。3)發(fā)送DS1307的讀/寫地址。4)執(zhí)行讀寫數(shù)據(jù)操作。5)接受或發(fā)送應(yīng)答信號。6)發(fā)送停止信號STOP。1.器件地址格式與讀寫命令器件地址字含有2個(gè)部分。第一部分是高7位,它們稱為DS1307標(biāo)識(shí)。第二部分是最低位,它是讀/寫操作選擇位,并用R/表示。當(dāng)R/=1時(shí),執(zhí)行讀操作;當(dāng)R/=0時(shí),執(zhí)行寫操作。2.DS1307工作時(shí)有兩種工作模式,即DS1307寫操作和DS1307讀操作1)DS1307寫模式串行數(shù)據(jù)和時(shí)鐘數(shù)據(jù)可通過SDA和SCL接受。在接受到每一字節(jié)后,發(fā)送一個(gè)ACK信號表示數(shù)據(jù)收到。在主機(jī)產(chǎn)生開始狀態(tài)后,第一個(gè)接收到的是設(shè)備地址與讀寫命令字節(jié),該字節(jié)包括兩部分內(nèi)容:高7位是DS1307設(shè)備地址(1101000),最低位是讀寫操作選擇位(R/)。在寫操作時(shí),該位R/=0,DS1307接受并譯碼設(shè)備地址后,對主機(jī)地址和寫位地址確認(rèn)后,在SDA輸出一個(gè)確認(rèn)信號ACK。接下來主機(jī)傳送一個(gè)DS1307寄存器地址,使DS1307設(shè)置寄存器地址指針,然后主機(jī)開始傳送數(shù)據(jù)字節(jié)。DS1307在每個(gè)字節(jié)收到后,發(fā)出確認(rèn)信號ACK,終止寫數(shù)據(jù)時(shí)由主機(jī)產(chǎn)生一個(gè)STOP信號來實(shí)現(xiàn)。2)DS1307讀模式在主機(jī)傳送模式下,數(shù)據(jù)傳送方向?qū)⒏淖?。在這個(gè)模式下,當(dāng)串行時(shí)鐘從SCL引腳輸入時(shí),串行數(shù)據(jù)從DS1307的SDA引腳被送出。第一個(gè)字節(jié)(設(shè)備尋址字節(jié))仍由7位DS1307地址1101000和讀寫標(biāo)識(shí)位組成。在DS1307讀模式時(shí),R/W=1,即DS1307的設(shè)備讀命令字位D1H。設(shè)備尋址完成后,DS1307從寄存器指針?biāo)赶虻募拇嫫鞯刂烽_始傳送數(shù)據(jù)。如果寄存器指針在讀模式初始化時(shí)沒有定義,則所讀第一個(gè)數(shù)據(jù)的地址將由寄存器指針的當(dāng)前值確定。DS1307收到一個(gè)NOTACK(沒有確認(rèn))信號時(shí)將結(jié)束讀操作。2.9控制輸出電路的設(shè)計(jì)外部電路采用繼電器控制,繼電器的觸點(diǎn)控制外部電源的通與斷,觸點(diǎn)閉合接通電源,觸點(diǎn)斷開切斷電源。三極管VT2電阻R4續(xù)流二極管VD1組成的繼電器的控制電路。當(dāng)VT2的基極為低電平時(shí),VT2導(dǎo)通,繼電器線圈通電,控制觸點(diǎn)閉合;當(dāng)VT2的基極為高電平時(shí),VT2截止,繼電器線圈斷電,控制觸點(diǎn)斷開。從而實(shí)現(xiàn)了外部電路控制??刂齐娐啡缦聢D圖2.15繼電器輸出電路圖2.10本章小結(jié)在定時(shí)控制器設(shè)計(jì)中,選擇ATMEL公司生產(chǎn)的型號為AT89S51的單片機(jī)。該單片機(jī)與MCS-51系列又增加了WTD、ISP等功能,物美價(jià)廉,經(jīng)濟(jì)實(shí)用,并且使用起來更加方便。定時(shí)控制器的硬件電路原理圖如圖2.16所示,與電子時(shí)鐘比較,多了4個(gè)LED數(shù)碼管,位驅(qū)動(dòng)電路芯片采用8位驅(qū)動(dòng)器的2803芯片,顯示器與單片機(jī)的接口是通過P0、P2二個(gè)并行端口與74LS48、UNL2803相連接組成。用P0口輸出段碼信號BCD碼,P2口輸出位碼信號值。VT1、R3組成蜂鳴器控制電路。VT4、R6、R7組成DISP小數(shù)點(diǎn)驅(qū)動(dòng)電路。由DS1307芯片產(chǎn)生標(biāo)準(zhǔn)時(shí)間,通過讀DS1307獲得。外部電路采用繼電器控制,多個(gè)繼電器并聯(lián)實(shí)現(xiàn)多路家用電器的控制。 圖2.16硬件電路原理圖第3章單片機(jī)應(yīng)用系統(tǒng)的軟件設(shè)計(jì)定時(shí)控制器程序設(shè)計(jì)包括主程序設(shè)計(jì),當(dāng)前時(shí)間調(diào)整子程序的設(shè)計(jì),定時(shí)時(shí)間輸入子程序設(shè)計(jì),LED動(dòng)態(tài)掃描子程序設(shè)計(jì),讀時(shí)鐘子程序設(shè)計(jì)等等。主程序流程圖如下圖所示:圖3.1程序流程圖結(jié)論基于單片機(jī)的家庭定時(shí)控制器的設(shè)計(jì)致力于對多路家用電器進(jìn)行定時(shí)開關(guān)控制,實(shí)現(xiàn)一個(gè)控制器可以控制多路用電設(shè)備,同時(shí)還具有時(shí)鐘校準(zhǔn)、時(shí)間顯示、報(bào)警等功能。該系統(tǒng)的硬件設(shè)計(jì)包含以下幾個(gè)模塊:按鍵輸入電路、時(shí)鐘與復(fù)位電路、蜂鳴器電路、LED顯示器及驅(qū)動(dòng)電路、繼電器電路、時(shí)鐘/日歷電路。此設(shè)計(jì)通過按鍵調(diào)整當(dāng)前時(shí)間并設(shè)定定時(shí)時(shí)間,并通過DS1307顯示當(dāng)前時(shí)間,設(shè)定定時(shí)時(shí)間后,LED顯示倒計(jì)時(shí),當(dāng)定時(shí)時(shí)間到時(shí),斷開繼電器并發(fā)出報(bào)警。設(shè)計(jì)克服了操作復(fù)雜,只能控制一個(gè)電器,定時(shí)時(shí)間誤差大和定時(shí)時(shí)間短的缺點(diǎn)。具備了操作簡單,可同時(shí)控制多個(gè)電器,定時(shí)時(shí)間精確,定時(shí)時(shí)間長等優(yōu)點(diǎn)。但同時(shí)還存在的問題是,對繼電器同時(shí)進(jìn)行既開又關(guān)的動(dòng)作存在一定的困難,可通過進(jìn)一步的編程進(jìn)行控制。附錄初始化程序ORG 0000H LJMP CHSH ;設(shè)置主程序入口 ORG 0003HLJMP INTA ;設(shè)置INT0中斷服務(wù)程序入口ORG 000BHLJMP T0_SEV ;設(shè)置T0中斷服務(wù)程序入口ORG 0013H LJMP INTB ;設(shè)置INT1中斷服務(wù)程序入口ORG 0030HCHSH: MOV SP,#60H ;初始化程序,設(shè)置堆棧MOV A,#00H ;A寄存器清0 MOV 0H, A ;存儲(chǔ)單元清0 MOV 31H, A MOV 32H, A MOV 33H, A MOV 34H, A MOV 35H, A CLR 26H CLR 27H CLR 28H CLR RS0 ;設(shè)置0工作區(qū) CLR RS1 MOV TMOD, #01H ;計(jì)數(shù)器初始化 MOV TH0, #0ECH MOV TL0, #78H MOV TCON, #10H MOV IE, #8FH ;開中斷2.主程序MAIN: MOV 22H, #04H MOV 23H, #08H MOV 25H, #01 MOV 26H, #02 MOV 27H, #05LP2: MOV R1, 22H MOV R2, 23H LCALL OSC_Q ;啟動(dòng)晶振RT: MOV R1, 22HMOV R2, 23HLCALL READ ;讀時(shí)間 LCALL BCDP26H: JNB 26H, P28H JNB 27H, RTNT: MOV R2, 34H CJNE R2, #0, J34HMOV R2, 35H CJNE R2, #0, J35H ;判斷定時(shí)時(shí)間到否 SETB SDA ;時(shí)間到,斷開繼電器 SETB 28H ;開蜂鳴器,發(fā)出報(bào)警 CLR SCL CLR 26H SJMP BBJ34H: DEC 34H ;定時(shí)時(shí)間倒計(jì)時(shí) SJMP BBJ35H: DEC 35HMOV 34H, #59SJMP BBP28H: JB 8H, NT1 SJMP RTNT1: JB 27H, SCLH SJMP RTP36H: MOV R2, 36H CJNE R2, #59, J36H CLR 28H SETB SCLMOV 36H, #00H SJMP BBJ36H: INC 36HBB: CLR 27H LJMP RT3.二進(jìn)制樹轉(zhuǎn)換成BCD碼子程序BCD: MOV R7, #03 ;二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼MOV R1, #40H MOV R0, #2AHBCD1: MOV A, @R0 ANL A, #0F0H SWAP AMOV @R1, A INC R1 MOV A, @R0 ANL A, #0FH MOV @R1,A INC R1 DEC R0 DJNZ R7, BCD1 RET4.調(diào)整當(dāng)前時(shí)間子程序INTA: PUSH APUSH BPUSH PSWMOV 31H, #08H ;(31H)=08HMOV 29H, #00H ;(29H)=00HLP0: JB P1.5, NEXT0 ;判斷P1.5鍵,無鍵按下轉(zhuǎn)NEXT0LCALL DELAY1 ;有鍵按下,延時(shí)1msJB P1.5, LP0 ;判斷是否松開,否,再判斷LP1: JNB P1.5, LP1 ;是,轉(zhuǎn)LP0INC 29H ;P1.5松開后,(29H)+1MOV 30H, #1HSJMP LO1NEXT0:JBSCL,L1 ;判斷SCL鍵,無鍵按下轉(zhuǎn)NEXT0LCALL DELAY1 ;有鍵按下,延時(shí)1msJB SCL, NEXT0LD1: JNB SCL, LD1MOV 29H, #0MOV 30H, #1DJNZ 31H, LO1 ;是,(31H)-1SJMP LLLO1: MOV A, 31HCJNE A, #08H, LO2 ;是否時(shí)針十位?否,轉(zhuǎn)LO2MOV A, 29HCJNE A, #03H, LA1 ;十位大于3嗎?否,轉(zhuǎn)LA1MOV 29H, #D0H ;是的,清零LA1: MOV 40H, 29H;(29H)→(40H)SJMP L1 ;轉(zhuǎn)L1LO2: MOV A, 31HCJNE A, #07H, LO3 ;是否時(shí)針個(gè)位?否,轉(zhuǎn)LO3MOV A, 40HCJNE A, #2, A1MOV A, 29HCJNE A, #4, LA2MOV 29H, #0SJMP LA2A1: MOV A, 29H CJNE A, #0AH, LA2 ;是大于9?否,轉(zhuǎn)LA2 MOV 29H, #00H ;(29H)清零LA2: MOV 41H, 29H ;(29H)→(41H)SJMP L1 ;轉(zhuǎn)到L1LO3: MOV A, 31HCJNE A, #06H, LO4 ;是分針十位嗎?否,轉(zhuǎn)LO4MOV A, 29HCJNE A, #06H, LA3 ;大于6?否,轉(zhuǎn)LA3MOV 29H, #00H ;(29H)清零LA3: MOV 42H, 29H ;(29H)→(42H) SJMP L1 ;轉(zhuǎn)L1LO4: MOV A, 29H CJNE A, #0AH,LA4 ;分針個(gè)位大于9?否,轉(zhuǎn)LA4 MOV 29H, #00H ;(29H)清零LA4: MOV 43H, 29H ;(29H)→(43H)L1: MOV A, 31HCJNE A, #04H, LP0 ;(31H)=0返回,否則轉(zhuǎn)LP0LL: MOV A, 40H ANL A, #0FH SWAP AADD A, 41HMOV 32H, AMOV A, 42HANL A, #0FHSWAP AADD A, 43HMOV 33H, APUSH PSWCLR RS0CLR RS1POP PSWPOP PSWPOP BPOP ASETB EX0CLR TR0MOV TH0, #0FFHMOV TL0, #00HSETB TR0SETB ET0MOV R1, 26HMOV R2, 25HMOV R0, 32HLCALL WRITE ;設(shè)置時(shí)間RETI5.數(shù)碼管掃描顯示子程序T0_SEV: PUSH A ;LED定時(shí)掃描程序PUSH PSW ;保護(hù)現(xiàn)場SETB RS1 ;RS1、RS2=11HSETB RS0 ;選擇3組工作寄存器CLR TR0 ;停止T0定時(shí)控制器CLR ET0 ;停止T0中斷ETB EA ;關(guān)中斷MOV R2, #08H ;設(shè)置顯示器位數(shù)MOV R0, #40H ;設(shè)置段碼首地址MOV R1, #80H ;設(shè)置位碼首地址GO_ON: MOV A, R2 ;送顯示位數(shù)到ACJNE A, 31H,NO_FLASH;判斷是否閃爍位?否,轉(zhuǎn)移到NO_FLASHDJNZ 30H, FLASH ;是閃爍位,轉(zhuǎn)移到FLASHNO_FLASH: MOV P2, @R1 ;送位碼到P2口MOV P0, @R1 ;將段碼送到P0口LCALL DELAY1 ;調(diào)延時(shí)子程序FLASH: INC R0 ;段碼地址+1INC R1 ;位碼地址+1DJNZ R2, GO_ON ;判斷8位都顯示完否;沒完繼續(xù)顯示下位MOV P2, #00H ;8位都顯示完后,關(guān)顯示器MOV TH0, #0ECCHMOV TL0, #78H ;重置T0計(jì)數(shù)初值POP PSWPOP A ;恢復(fù)現(xiàn)場SETB ET0 ;允許T0中斷SETB TR0 ;啟動(dòng)T0開始定時(shí)SETB EA ;開中斷RETI ;中斷返回DELAY1: MOV R3, #02H ;延時(shí)1ms子程序AGAIN: MOV R4, #F9HDELAY: DJNZ R3, AGAIN RET6.定時(shí)時(shí)間輸入程序INTB: SETB P1.5SETB SCLCLR EX0CLR EX1SETB EAPUSH APUSH BPUSH PSWMOV 31H, #04H ;(31H)=04HMOV 29H, #00H ;(29H)=00HLP0B:JBP1.5,NEXTB;判斷P1.5鍵,無鍵按下轉(zhuǎn)NEXT0LCALL DELAY1 ;有鍵按下,延遲1msJB P1.5, LP0B ;判斷是否松開,否,轉(zhuǎn)LP0LP1B:JNBP1.5,LP1B;判斷是否松開,否,再判斷INC 29H ;P1.5松開后,29H+1MOV 30H, #1HSJMP LO1BNEXTB:JBSCL,L1B;判斷SCL鍵是否按下,否,轉(zhuǎn)NEXT0LCALL DELAY1 ;有鍵按下,延遲1msJB SCL, NEXTB ;是否松開?否,轉(zhuǎn)LP0LD1B: JNB SCL, LD1BMOV 29H, #0 ;是否松開?否,轉(zhuǎn)LD1,再判斷MOV 30H, #1DJNZ 31H, LO1B ;是,(31H)-1SJMP LLBLO1B: MOV A, 30HCJNE A, #04H, LO2BMOV A, 29HCJNE A, #06H, LA1BMOV 29H, #00HLA1B: MOV 44H, 29H ;(29H)→(44H)SJMP L1BLO2B: MOV A, 31HCJNE A, #03H, LO3BMOV A, 29HCJNE A, #0AH, LA2BMOV 29H, #0SJMP LA2BLA2B: MOV 45H, 29H ;(29H)→(45H)SJMP L1BLO3B: MOV A, 31HCJNE A, #02H, LO4B ;是否分針十位?否,轉(zhuǎn)LO4MOV A, 29HCJNE A, #06H, LA3BMOV 29H, #00HLA3B: MOV 46H, 29HSJMP L1BLO4B: MOV A, 29HCJNE A, #0AH, LA4B ;分針個(gè)位大于9?否,轉(zhuǎn)LA4 MOV 29H, #00HLA4B: MOV 47H, 29H ;(29H)→(47H)L1B: MOV A, 31HCJNE A, #00H, LP0B ;31H=0返回,否則轉(zhuǎn)LP0LLB: MOV A, 44HMOV B, #10MUL ABADD A, 45HMOV 35H, AMOV A, 46HMOV B, #10MUL ABADD A, 47HMOV 34H, APOP PSWPOP BPOP ACLR TR0MOV TH0, #0FFHMOV TL0, #00HSETB TR0CLR SDARETIEND致謝本學(xué)位論文是在張金池教授的悉心指導(dǎo)下完成的,從論文選題到完成論文都浸透了恩師的大量心血和精力,導(dǎo)師淵博的知識(shí)、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和求實(shí)精神、忘我的工作作風(fēng)、學(xué)術(shù)上的遠(yuǎn)見和生活上的平易近人,時(shí)刻激勵(lì)著學(xué)生,是學(xué)生畢生學(xué)習(xí)的榜樣。值此論文完成之際,特向?qū)熤乱哉\摯的感激和無盡的敬意!在這次設(shè)計(jì)中,使自己多年來所學(xué)的理論知識(shí)與實(shí)踐做到有機(jī)結(jié)合,進(jìn)一步深化鞏固自己所學(xué)的理論知識(shí)。當(dāng)然在設(shè)計(jì)過程中,還存在不少的問題,其主要上自己對大學(xué)四年所學(xué)的知識(shí)掌握不是十分牢固,這給設(shè)計(jì)帶來一定的困難。更重要的是重新認(rèn)識(shí)了自己,兵書上說,知己知彼,百戰(zhàn)不殆,可見一個(gè)連自己都不了解的人,將來如何適應(yīng)社會(huì),大學(xué)就如同一個(gè)煉鋼爐,鐵在爐子里面是不斷降低碳元素的百分比,當(dāng)它出爐的時(shí)候我們不再稱呼它為鐵,而是鋼。我們在里面也正是剔除雜質(zhì),重新認(rèn)識(shí)自己和完善自己的過程,當(dāng)我們離開校園的時(shí)候也是我們出爐的時(shí)刻。這個(gè)過程是苦的,只要我們堅(jiān)持下去說不定也會(huì)成為特種鋼,蘇軾也曾說,古之成大事者,不惟有超世之才,亦有堅(jiān)忍不拔之志。老師在這個(gè)過程中充當(dāng)了煉鋼師的角色,發(fā)揮著無與倫比的作用。在課題研究中,得到了課題組全體同志的關(guān)心和幫助。與他們進(jìn)行了多次有益的探討和學(xué)術(shù)交流,得到了許多啟發(fā)。對于他們的支持和幫助表示誠摯的謝意!最后,向所有給予我關(guān)心和幫助的領(lǐng)導(dǎo)、老師、親人、同學(xué)和朋友再次表示衷心的感謝!?。⒖嘉墨I(xiàn)[1]胡健等.單片機(jī)原理及接口技術(shù)實(shí)踐教程.北京:機(jī)械工業(yè)出版社.2004[2]韓志軍等.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)——入門向?qū)c設(shè)計(jì)實(shí)例.北京:機(jī)械工業(yè)出版社.2005[3]薛永毅等.新型電源電路應(yīng)用實(shí)例.北京:電子工業(yè)出版社,2002[4]丁志剛,李剛民編.單片微型計(jì)算機(jī)原理與應(yīng)用.北京:電子工業(yè)出版社,1990.5[5]林克明,石昭祥.Z8高性能單片微機(jī)原理與應(yīng)用.中國科學(xué)技術(shù)出版社,1994[6]李朝清.單片機(jī)原理及接口技術(shù)[M].北京航空航天大學(xué)出版社,1996[7]何立民.單片機(jī)應(yīng)用文集[M].北京:北京航空航天大學(xué)出版社,1991[8]李建忠.單片機(jī)原理及應(yīng)用.西安電子科技大學(xué)出版社,2002[9]范立南.單片機(jī)微型計(jì)算機(jī)控制系統(tǒng)設(shè)計(jì)[M].人民郵電出版社[10]付家才.單片機(jī)控制工程技術(shù)[M].化學(xué)工業(yè)出版社.2004[11]劉文濤.單片機(jī)應(yīng)用開發(fā)實(shí)例[M].清華大學(xué)出版社.2005[12]趙文博.單片機(jī)語言程序設(shè)計(jì)[M].人民郵電出版社.2005[13]萬文略.單片機(jī)原理及應(yīng)用[M].重慶大學(xué)出版社.2004[14]王秀山.單片機(jī)基礎(chǔ)[M].北京航空航天大學(xué)出版社.2003[15]張洪潤.單片機(jī)應(yīng)用技術(shù)及教程[M].清華大學(xué)出版社.2001[16]陳忠華.單片機(jī)原理及應(yīng)用技術(shù)[M].高等教育出版社.2004[17]劉源.單片機(jī)實(shí)用教程[M].北京航空航天大學(xué)出版社[18]黃繼昌.傳感器工作原理及應(yīng)用實(shí)例[M].人民郵電出版社.1998[19]陳杰.傳感器與檢測技術(shù)[M].高等教育出版社.2002[20]郭亨禮.傳感器實(shí)用電路[M].上??茖W(xué)技術(shù)出版社.1992[21]高曉蓉.傳感器技術(shù)[M].西南交通大學(xué)出版社.2003基于C8051F單片機(jī)直流電動(dòng)機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動(dòng)監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動(dòng)控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動(dòng)找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動(dòng)力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺(tái)控制器的研制基于單片機(jī)的軟起動(dòng)器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動(dòng)檢測儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機(jī)單片機(jī)控制系統(tǒng)的研制基于單片機(jī)的數(shù)字磁通門傳感器基于單片機(jī)的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機(jī)的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機(jī)控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機(jī)的多生理信號檢測儀基于單片機(jī)的電機(jī)運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)Pico專用單片機(jī)核的可測性設(shè)計(jì)研究基于MCS-51單片機(jī)的熱量計(jì)基于雙單片機(jī)的智能遙測微型氣象站MCS-51單片機(jī)構(gòu)建機(jī)器人的實(shí)踐研究基于單片機(jī)的輪軌力檢測基于單片機(jī)的GPS定位儀的研究與實(shí)現(xiàn)基于單片機(jī)的電液伺服控制系統(tǒng)用于單片機(jī)系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機(jī)的時(shí)控和計(jì)數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機(jī)和CPLD的粗光柵位移測量系統(tǒng)研究單片機(jī)控制的后備式方波UPS提升高職學(xué)生單片機(jī)應(yīng)用能力的探究HYPERLINK"/detail.htm?299
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 30137-2024電能質(zhì)量電壓暫升、電壓暫降與短時(shí)中斷
- 2024版泥水作業(yè)班組承包協(xié)議書
- 二零二五年度股權(quán)收益權(quán)轉(zhuǎn)讓合同范本與收益分配3篇
- 二零二五年航空航天零部件制造合同協(xié)議模板2025版3篇
- 二零二五年金融產(chǎn)品居間服務(wù)協(xié)議范本3篇
- 二零二五年度智能化設(shè)備技術(shù)入股合作協(xié)議范本3篇
- GRC材質(zhì)2024裝飾構(gòu)件定制合作協(xié)議版B版
- 二零二五版汽車租賃轉(zhuǎn)讓與保險(xiǎn)責(zé)任合同2篇
- 2024混凝土施工勞務(wù)分包合同
- 2024年跨區(qū)域生態(tài)環(huán)境保護(hù)合作協(xié)議
- 上海車位交易指南(2024版)
- 醫(yī)學(xué)脂質(zhì)的構(gòu)成功能及分析專題課件
- 新疆塔城地區(qū)(2024年-2025年小學(xué)六年級語文)部編版期末考試(下學(xué)期)試卷及答案
- 2024年9月時(shí)事政治試題帶答案
- 汽車供應(yīng)商審核培訓(xùn)
- 高技能人才培養(yǎng)的策略創(chuàng)新與實(shí)踐路徑
- 《計(jì)算機(jī)網(wǎng)絡(luò) 》課件第1章
- 1《地球的表面》說課稿-2024-2025學(xué)年科學(xué)五年級上冊教科版
- GB/T 44764-2024石油、石化和天然氣工業(yè)腐蝕性石油煉制環(huán)境中抗硫化物應(yīng)力開裂的金屬材料
- 自動(dòng)化招聘筆試試題及答案
- 重慶市主城四區(qū)2025屆高一物理第一學(xué)期期末聯(lián)考試題含解析
評論
0/150
提交評論