紅外遙控萬年歷畢業(yè)論文_第1頁
紅外遙控萬年歷畢業(yè)論文_第2頁
紅外遙控萬年歷畢業(yè)論文_第3頁
紅外遙控萬年歷畢業(yè)論文_第4頁
紅外遙控萬年歷畢業(yè)論文_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGEPAGE37請?jiān)诖颂幏胖媚鷮W(xué)校的LOGO!!!基于單片機(jī)制紅外遙控萬年歷學(xué)院:__________________專業(yè):__________________姓名:__________________學(xué)號:__________________2013年月日摘要本文介紹了一款能夠?qū)崿F(xiàn)可以遙控設(shè)置時(shí)間,日期,鬧鐘的電子萬年歷,該設(shè)計(jì)模型可以解決壁掛式電子萬年歷的時(shí)間,日期,鬧鐘調(diào)整不方便的問題。系統(tǒng)主要由STC89C52單片機(jī)控制模塊,電源模塊,DS1302時(shí)間生成模塊,紅外遙控模塊,LCD12864顯示模塊組成。由電源模塊提供保證整個(gè)系統(tǒng)的運(yùn)行所城電壓;由時(shí)間生成模塊生成的時(shí)間日期通過單片機(jī)模塊一系列處理后,通過液晶模塊實(shí)時(shí)顯示輸出年,月,日,時(shí),分,秒和星期等信息。配合紅外遙控模塊對時(shí)間日期的調(diào)整,使得該系統(tǒng)操作簡單方便,非常實(shí)用。關(guān)鍵詞:萬年歷、單片機(jī)STC89C52、DS1302、LCD12864、紅外遙控目錄TOC\o"1-2"\h\u11842前言 4第一章系統(tǒng)總體設(shè)計(jì)109111.1單片機(jī)主控系統(tǒng)設(shè)計(jì)方案 6121001.2時(shí)鐘芯片系統(tǒng)設(shè)計(jì)方案 6229841.3按鍵控制系統(tǒng)設(shè)計(jì)方案 71.4顯示系統(tǒng)設(shè)計(jì)方案8229841.5系統(tǒng)設(shè)計(jì)原理框圖 7852第二章紅外遙控萬年歷的硬件設(shè)計(jì) 8215212.1單片機(jī)最小系統(tǒng)設(shè)計(jì) 8244892.2DS1302時(shí)鐘模塊設(shè)計(jì) 8209042.3紅外編解碼模塊設(shè)計(jì): 9211912.4LCD12864顯示模塊設(shè)計(jì) 1030606第三章紅外遙控萬年歷的軟件設(shè)計(jì) 12262563.1主程序設(shè)計(jì) 12297123.2時(shí)鐘模塊驅(qū)動設(shè)計(jì) 14297123.3陰歷時(shí)間轉(zhuǎn)換程序設(shè)計(jì) 14126003.4紅外接收接碼驅(qū)動設(shè)計(jì) 14126003.5紅外編碼發(fā)射驅(qū)動設(shè)計(jì) 1424132第四章系統(tǒng)調(diào)試 15297124.1硬件系統(tǒng)調(diào)試 14126004.2軟件系統(tǒng)調(diào)試 1422656參考文獻(xiàn) 415037附錄

前言課題的背景萬年歷是我國古代傳說中最古老的一部太陽歷。為紀(jì)念歷法編撰者萬年的功績,便將這部歷法命名為“萬年歷”。而現(xiàn)在所使用的萬年歷,實(shí)際上就是記錄一定時(shí)間范圍內(nèi)(比如100年或更多)的具體陽歷或陰歷的日期的年歷,方便有需要的人查詢使用,與原始?xì)v法并無直接聯(lián)系。隨著新技術(shù)的不斷開發(fā)與應(yīng)用,近年來單片機(jī)發(fā)展十分迅速,一個(gè)以微機(jī)應(yīng)用為主的新技術(shù)革命浪潮正在蓬勃興起。單片機(jī)具有集成度高,通用性好,功能強(qiáng),特別是體積小,重量輕,耗能低,可靠性高,抗干擾能力強(qiáng)和使用方便等獨(dú)特優(yōu)點(diǎn),在數(shù)字、智能化方面有廣泛的用途。單片機(jī)的應(yīng)用已經(jīng)滲透到工業(yè)控制、家用電器、通信設(shè)備、信息處理、尖端武器等各個(gè)領(lǐng)域。而隨著單片機(jī)的發(fā)展,人類用于計(jì)時(shí)的工具也在不斷發(fā)展更新,單片機(jī)技術(shù)使得萬年歷有了新的發(fā)展方向。目前世界上單片機(jī)年產(chǎn)量已達(dá)十多億片,通常是當(dāng)年微處理器產(chǎn)量的4-5倍以上。用最少的芯片就能實(shí)現(xiàn)最強(qiáng)大的功能,這是將來電子產(chǎn)品的主流方向,它將無可置疑地一步步取代其它同類產(chǎn)品,其數(shù)量之大和應(yīng)用面之廣,是其它任何類型的計(jì)算機(jī)所無法比擬的。以基于單片機(jī)的萬年歷作為設(shè)計(jì)的課題,因?yàn)樗泻芎玫拈_放性和可發(fā)揮性,對本人我單片機(jī)的水平對應(yīng)的要求比較高,不僅考察了對單片機(jī)的掌握能力而且強(qiáng)調(diào)了對單片機(jī)擴(kuò)展的應(yīng)用。另外液晶顯示的萬年歷已經(jīng)越來越流行,特別適合在家庭居室、辦公室、大廳、會議室、車站和廣場等地方使用,它具有顯示清晰直觀、走時(shí)準(zhǔn)確、可以進(jìn)行夜視等功能,并且還可以擴(kuò)展出其它多種功能,同時(shí)將其制成一份精致的成品可作實(shí)用的展品。所以,電子萬年歷作為設(shè)計(jì)課題很有價(jià)值。課題的主要工作本論文主要研究基于單片機(jī)的萬年歷設(shè)計(jì)。當(dāng)程序執(zhí)行后,LCM12864顯示即時(shí)時(shí)間、年月日、星期、天干地支、溫度等。設(shè)置4個(gè)操作鍵:KEY1,設(shè)置鍵;KEY2,跳出鍵;KEY3,上調(diào)鍵;KEY4,下調(diào)鍵。本設(shè)計(jì)的主要內(nèi)容:了解單片機(jī)技術(shù)的發(fā)展現(xiàn)狀,熟悉萬年歷各模塊的工作原理;選擇適當(dāng)?shù)男酒驮骷?,確定系統(tǒng)電路,繪制電路原理圖,尤其是各接口電路;熟悉單片機(jī)使用方法和C語言的編程規(guī)則,編寫出相應(yīng)模塊的應(yīng)用程序。設(shè)計(jì)目標(biāo)設(shè)計(jì)目標(biāo):使基于STC89C52單片機(jī)的萬年歷實(shí)現(xiàn)以下三個(gè)功能:1、具有年、月、日、星期、時(shí)、分、秒的顯示功能;2、具備年、月、日、星期、時(shí)、分、秒的校準(zhǔn)功能;3、具有鬧鐘時(shí)間的設(shè)置和報(bào)警提示功能,具有鬧鐘的打開關(guān)閉功能;4、具有整點(diǎn)報(bào)時(shí)的功能;5、具有用紅外遙控器操作的功能。

第一章系統(tǒng)總體設(shè)計(jì)1.1單片機(jī)主控系統(tǒng)設(shè)計(jì)方案單片機(jī)也被稱為微控制器(Microcontroller),是以一個(gè)大規(guī)模集成電路為主組成的微型計(jì)算機(jī),在一個(gè)芯片內(nèi)含有計(jì)算機(jī)的基本功能部件:中央處理器CPU、存儲器和I/O接口,CPU通過內(nèi)部的總線和存儲器、I/O接口相連。單片機(jī)以其卓越的性能,得到了廣泛的應(yīng)用,已深入到各個(gè)領(lǐng)域。單片機(jī)應(yīng)用在控制領(lǐng)域中,具有如下特點(diǎn):單片機(jī)具有集成度高,通用性好,功能強(qiáng),特別是體積小,重量輕,耗能低,成本低,可靠性高,種類多,型號全,抗干擾能力強(qiáng)和使用方便等獨(dú)特優(yōu)點(diǎn),在數(shù)字、智能化方面有廣泛的用途。最重要的是可以采用C語言開發(fā)環(huán)境,具有友好的人機(jī)互交環(huán)境。大多數(shù)單片機(jī)都提供基于C語言開發(fā)平臺,并提供大量的函數(shù)供使用,這使產(chǎn)品的開發(fā)周期、代碼可讀性、可移植性都大為提高。綜上:本系統(tǒng)的主控芯片選擇80C51家族的STC89C52RC單片機(jī),它具備上面所述的所有特點(diǎn),能以很高的性價(jià)比來滿足我們的設(shè)計(jì)需求。1.2時(shí)鐘系統(tǒng)設(shè)計(jì)方案方案一:不使用芯片,采用單片機(jī)的定時(shí)計(jì)數(shù)器這種方法原理是利用單片機(jī)芯片的定時(shí)器來產(chǎn)生固定的時(shí)間,模擬時(shí)鐘的時(shí),分,秒.如:利用AT80C52芯片,定時(shí)器用工作方式1,每50ms產(chǎn)生一個(gè)中斷,循環(huán)20次,即1s周期.每一個(gè)周期加1,那么1min為60個(gè)周期,1h就是60*60=3600個(gè)周期,一天就是3600*24=86400個(gè)周期。此方法優(yōu)點(diǎn)是可以省去一些外圍的芯片,但這種方法只能適用于一些要求不是十分精確,不做長期保留的場合。方案二:并行接口時(shí)鐘芯片DS12887特點(diǎn):采和單片機(jī)應(yīng)用系統(tǒng)并行總線(三總線)擴(kuò)展的接口電路,采用這種接口電路具有操作速度快,編程方便的優(yōu)點(diǎn)。但是對于80C52單片機(jī)來說,低位地址線要通過鎖存器輸出,還要地址譯碼器,而且并行口芯片的體積相對較大。方案三:串行接口時(shí)鐘芯片DS1302優(yōu)點(diǎn):它采用簡單的三線制串行接口與單片機(jī)連接,使用簡單,接口容易,與微型計(jì)算機(jī)連線較少等特點(diǎn),在單片機(jī)系統(tǒng)尤其是手持式信息設(shè)備中己得到了廣泛的應(yīng)用。因次,我選擇了串行時(shí)鐘芯片DS1302。1.3按鍵控制系統(tǒng)設(shè)計(jì)方案在對日期和時(shí)間進(jìn)行切換顯示,對日期和時(shí)間進(jìn)行調(diào)節(jié)校準(zhǔn),對鬧鐘進(jìn)行設(shè)置的過程中,系統(tǒng)需要產(chǎn)生激勵(lì)電流,因此需要用按鍵。按鍵設(shè)計(jì)一般有兩種方案: 方案一:使用獨(dú)立式鍵盤。獨(dú)立式鍵盤是指直接用I/O口線構(gòu)成的單個(gè)按鍵電路。獨(dú)立式按鍵硬件電路設(shè)置簡單,軟件程序編寫也相對容易。如下圖所示:圖1.3.1獨(dú)立鍵盤原理圖 方案二:矩陣鍵盤,它的缺點(diǎn)是占用IO口太多,如下圖所示:圖1.3.2矩陣鍵盤原理圖根據(jù)現(xiàn)實(shí)需求,本系統(tǒng)創(chuàng)新性的拋棄這兩種方案,采用紅外遙控器做為系統(tǒng)的按鍵,紅外遙控器可以不受位置的限制來對萬年歷功能進(jìn)行調(diào)整和設(shè)置,從而擺脫了壁掛式萬年歷操作不方便的缺點(diǎn),最大限度的給人帶來方便。紅外1.4顯示模塊選擇方案一:LED數(shù)碼管顯示特點(diǎn):數(shù)碼管顯示比較常用的是采用CD4511和74LS138實(shí)現(xiàn)數(shù)碼轉(zhuǎn)換數(shù)碼顯示分動態(tài)顯示和靜態(tài)顯示,靜態(tài)顯示具有鎖存功能,可以使數(shù)據(jù)顯示得很清楚,但浪費(fèi)了一些資源。目前單片機(jī)數(shù)碼管普通采用動態(tài)顯示,編程簡單,但只能顯示數(shù)字,不能顯示中文。方案二:LCD1602特點(diǎn):能夠顯示英文和數(shù)字。1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號。方案三:LCD16824作為一種輸出方式,液晶顯示最大的特點(diǎn)就是能夠?qū)崿F(xiàn)友好的人機(jī)界面,它己經(jīng)廣泛應(yīng)用于現(xiàn)代工業(yè)控制和智能化儀器儀表等領(lǐng)域,它己經(jīng)成為單片機(jī)就用開發(fā)領(lǐng)域典型模塊之一。能夠方便的顯示文字和數(shù)字。因此我選擇LCD16824作為顯示模塊。1.5系統(tǒng)設(shè)計(jì)原理框圖復(fù)位電路復(fù)位電路晶振電路電源電路主控模塊STC89C52紅外接收模塊驅(qū)動電路LCD顯示模塊紅外遙控模塊1302時(shí)鐘芯片模塊圖1.4紅外遙控萬年歷系統(tǒng)原理框圖

第二章紅外遙控萬年歷硬件設(shè)計(jì)215212.1單片機(jī)最小系統(tǒng)設(shè)計(jì)2.1.1STC89C52具有下列主要性能:·8KB可改編程序Flash存儲器(可經(jīng)受1000次的寫入/擦除周期)·全靜態(tài)工作:0Hz~24MHz·三級程序存儲器保密·128×8字節(jié)內(nèi)部RAM·32條可編程I/O線·2個(gè)16位定時(shí)器/計(jì)數(shù)器·6個(gè)中斷源·可編程串行通道·片內(nèi)時(shí)鐘振蕩器2.1.2STC89C52的引腳及功能STC89C52單片機(jī)的管腳分布如下圖所示。圖4-2STC89C52的管腳2.1.3晶振電路圖2晶振電路在晶振電路中,C1、C2為晶振的負(fù)載電容,分別接在晶振的兩個(gè)腳上和對地的電容,電路中取了30PF。晶振引腳的內(nèi)部通常是一個(gè)反相器。在晶振輸出引腳XO和晶振輸入引腳XI之間用一個(gè)電阻連接,很多芯片的引腳內(nèi)部已經(jīng)包含了這個(gè)電阻,引腳外部就不用接了。這個(gè)電阻是為了使反相器在振蕩初始時(shí)處與線性狀態(tài),反相器就如同一個(gè)有很大增益的放大器,以便于起振。2.1.4復(fù)位電路圖3復(fù)位電路單片機(jī)復(fù)位電路有上電自動復(fù)位和手動復(fù)位兩種方式。上電復(fù)位要求接通電源后,自動進(jìn)行復(fù)位操作。手動復(fù)位要求接通電源的前提下,在單片機(jī)運(yùn)行的條件下,在單片機(jī)運(yùn)行期間,用按鈕開關(guān)操作使單片機(jī)進(jìn)行復(fù)位的操作。這里采用的是手動復(fù)位。244892.2DS1302時(shí)鐘模塊設(shè)計(jì)2.2.1DS1302芯片介紹低功耗時(shí)鐘芯片DS1302可以對年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償?shù)榷喾N功能。DS1302的性能特性·實(shí)時(shí)時(shí)鐘,可對年月日,時(shí)分秒,星期以及帶閏年補(bǔ)償?shù)哪赀M(jìn)行計(jì)數(shù);·具有31×8位的RAM用于數(shù)據(jù)暫存;·最少三個(gè)I/O引腳即可與MCU進(jìn)行連接;·較寬的電壓工作東圍3.3-5.5V;·低電壓時(shí)功耗極低;·具有單字節(jié)或多字節(jié)(脈沖方式)兩種數(shù)據(jù)讀寫傳送方式;·可選的慢速充電(至VCC1)的能力。(2)DS1302管腳圖圖2.2.1DS1302管腳圖如果在傳送過程中置RST為低電平,則會終止本次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在VCC>=2.3V之前,RST腳必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。DS1302的管腳圖如圖4-3所示,內(nèi)部結(jié)構(gòu)圖如圖4-4所示,表4-2為各引腳的功能。圖2.2.2DS1302內(nèi)部結(jié)構(gòu)圖表2-2-1DS1302引腳功能表引腳號引腳名稱功能1VCC2主電源2,3X1,X2振蕩源,外接32768HZ晶振4GND地線5RST復(fù)位/片選線6I/O串行數(shù)據(jù)輸入/輸出端(雙向)7SCLK串行數(shù)據(jù)輸入端8VCC1后備電源DS1302的控制字如圖4-5所示。控制字節(jié)的最高有效位(位7)必須是邏輯1;如果它為邏輯0,則不能把數(shù)據(jù)寫入到DS1302中。位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù);為1表示存取RAM數(shù)據(jù)。位5~1(A4~A0)指示操作單元的地址。最低有效位(位0)如為0,表示要進(jìn)行寫操作;為1表示進(jìn)行讀操作??刂谱止?jié)總是從最低位開始輸入/輸出。76543210765432101RAMCKA4A3A2A1A0RAMK圖2.2.3控制字節(jié)的含義DS1302的數(shù)據(jù)讀寫時(shí)序如下圖:≈≈SCLKK≈≈RSTI/OI/O5713572102460≈46R/CA2A3A0A1R/WA41≈DATAI/OBYTEDATAI/OBYTE圖2.2.4數(shù)據(jù)讀寫程序DS1302共有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表3-3,其中奇數(shù)為讀操作,偶數(shù)為寫操作。表2.2.3DS1302的日歷、時(shí)鐘寄存器及其控制字寄存器名命令字取值范圍各位內(nèi)容寫操作讀操作76543210秒寄存器80H81H00-59CH10SECSEC分鐘寄存器82H83H00-59010MINMIN小時(shí)寄存器84H85H12或00-2312/24010APHRHR日期寄存器86H87H01-28,29,30,310010DATEDATE月份寄存器88H89H01-12000IOMMONTH周日寄存器8AH8BH01-0700000DAY年份寄存器8CH8DH00-9910YEARYEAR時(shí)鐘暫停:秒寄存器的位7定義位時(shí)鐘暫停位。當(dāng)它為1時(shí),DS1302停止振蕩,進(jìn)入低功耗的備份方式。通常在對DS1302進(jìn)行寫操作時(shí)(如進(jìn)入時(shí)鐘調(diào)整程序),停止振蕩。當(dāng)它為0時(shí),時(shí)鐘將開始啟動。AM-PM/12-24[小]時(shí)方式:[小]時(shí)寄存器的位7定義為12或24[小]時(shí)方式選擇位。它為高電平時(shí),選擇12[小]時(shí)方式。在此方式下,位5是AM/PM位,此位是高電平時(shí)表示PM,低電平表示AM,在24[小]時(shí)方式下,位5為第二個(gè)10[小]時(shí)位(20~23h)。2.2.2DS1302的應(yīng)用實(shí)時(shí)時(shí)鐘芯片DS1302采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,也可以關(guān)閉充電功能,芯片采用32768Hz晶振。要特別說明的是,備用電源BT1可以用電池或超級電容(10萬μF以上)。雖然DS1302在主電源掉電后耗電很小,但如果要長時(shí)間保證時(shí)鐘正常,最好選用小型充電電池。如果斷電時(shí)間較短(幾小時(shí)或幾天),可以用漏電較小的普通電解電容代替(100μF就可以保證1小時(shí)的正常走時(shí))[9]。DS1302在第一次加電后,需進(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)間及鬧鈴。DS1302的時(shí)鐘電路如圖3-7所示。圖2-2DS1302時(shí)鐘電路209042.3紅外編解碼模塊設(shè)計(jì)圖2.3.1HS0038紅外接收電路2.3.1概述一體化接收頭(HS0038)接收遙控器用來產(chǎn)生遙控編碼脈沖,完成對遙控信號的放大、檢波、整形、解調(diào)出遙控編碼脈沖。遙控編碼脈沖是一組串行二進(jìn)制碼,對于一般的紅外遙控系統(tǒng),此串行碼輸入到單片機(jī),并由其內(nèi)部CPU完成對遙控指令解碼,并執(zhí)行相應(yīng)的遙控功能。2.3.2SMOO38引腳功能表2.3.1HS0038引腳功能引腳符號功能說明1OUT輸出一組串行二進(jìn)制碼遙控編碼脈沖2VSS接電源(+5V)3GND接地2.3.3二進(jìn)制碼的解調(diào)圖13二進(jìn)制碼的解調(diào)過程紅外接收頭接收到遙控信號需先進(jìn)行解調(diào),其解調(diào)過程如圖13所示,當(dāng)接收到調(diào)制信號時(shí),輸出高電平,否則輸出為低電平,是調(diào)制的逆過程。HS0038是一體化集成的紅外接收器件,直接就可以輸出解調(diào)后的高低電平信號。2.3.4紅外信號的調(diào)制和發(fā)射紅外信號的調(diào)制和發(fā)射由單片機(jī)最小系統(tǒng)、矩陣編碼鍵盤和紅外信號發(fā)射電路組成。單片機(jī)最小系統(tǒng)在前面介紹中已經(jīng)提到,這里就不再贅述。2.3.5紅外發(fā)射電路圖15紅外發(fā)射電路如圖所示,經(jīng)單片機(jī)調(diào)制后的編碼信號由單片機(jī)的P3.2口輸出,經(jīng)紅外發(fā)射二極管D2發(fā)射出去。2.7.2遙控器鍵盤編碼電路當(dāng)單片機(jī)檢測到有按鍵被按下時(shí),就發(fā)射與之相對應(yīng)的二進(jìn)制編碼信號,按鍵和二進(jìn)制編碼信號的對應(yīng)關(guān)系見表5。二進(jìn)制信號(如圖a和b所示)的調(diào)制過程(如圖c所示)由單片機(jī)來完成,它采用PPM編碼(如圖d所示)。單片機(jī)把編碼后的二進(jìn)制信號調(diào)制成頻率為38kHz的間斷脈沖串,相當(dāng)于用二進(jìn)制信號的編碼乘以頻率為38kHz的脈沖信號得到的間斷脈沖串,也即是調(diào)制后用于紅外發(fā)射二極管發(fā)送的信號。圖a二進(jìn)制碼1圖b二進(jìn)制碼0圖c二進(jìn)制信號的調(diào)制圖dPPM編碼格式表5按鍵功能及其與遙控編碼的關(guān)系按鍵編號對應(yīng)的遙控編碼值實(shí)現(xiàn)的功能S10x01用于選擇設(shè)置的標(biāo)志位S20x02確定所設(shè)定的值S30x03鬧鐘停鬧(蜂鳴器停止響)與開啟S40x04調(diào)節(jié)鍵+S50x05調(diào)節(jié)鍵-209042.4LCD顯示模塊設(shè)計(jì)帶中文字庫的128X64是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國標(biāo)一級、二級簡體中文字庫的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為128×64,內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4行16×16點(diǎn)陣的漢字.也可完成圖形顯示.本設(shè)計(jì)中采用的LCD12864的各個(gè)功能引腳如下:2.4.1LCD12864內(nèi)部結(jié)構(gòu)圖:圖2.4.1LCD12864的邏輯電路圖2.4.1LCD12864應(yīng)和電路圖:圖2.4.2STC89C52與LCD12864液晶的接口電路根據(jù)以上電路原理圖中液晶的各引腳與單片機(jī)的接法,可得本設(shè)計(jì)的液晶模塊電路如圖4-11所示。VSS接地;數(shù)字電源VDD接+5V;對比度控制電壓V0接電位器,可通過調(diào)節(jié)電位器調(diào)整液晶亮度;數(shù)據(jù)、指令選擇信號RS接單片機(jī)P2.0口;讀寫選擇信號R/W接單片機(jī)P2.1口;單片機(jī)讀、寫選通信號/RD、/WR通過與非門接液晶的讀寫使能信號E;DB0~DB7分別接單片機(jī)的P0.0~P0.7口;復(fù)位端RST接P2.4口、選屏顯示端PSB接P2.6端口,背光正電源LEDA接+5V;液晶驅(qū)動電壓VEE、背光負(fù)電源LEDK接地。

第三章紅外遙控萬年歷軟件設(shè)計(jì).262563.1主程序設(shè)計(jì)主程序的功能:以80C52為核心,處理外轉(zhuǎn)電路傳進(jìn)來的信號,實(shí)現(xiàn)時(shí)鐘數(shù)據(jù)的讀取,保存,顯示其及鍵盤操作。流程圖如下所示:297123.2時(shí)鐘模塊DS1302驅(qū)動設(shè)計(jì)初始初始變量初始化化控制器發(fā)送ROM指令復(fù)位端產(chǎn)生一個(gè)高電平寫1302地址延時(shí)向地址寫數(shù)據(jù)據(jù)地址增加復(fù)位端產(chǎn)生一個(gè)高電平數(shù)據(jù)是否寫完?寫1302地址延時(shí)將該地址的數(shù)據(jù)讀出地址增加數(shù)據(jù)是否讀完?YYNN顯示數(shù)據(jù)3.3陰歷程序設(shè)計(jì)陰歷程序的實(shí)現(xiàn)是要靠陽歷日期來推算的。要根據(jù)陽歷來推算陰歷日期,首先要設(shè)計(jì)算法。推算方法是,根據(jù)陽歷當(dāng)前日期在一年中的天數(shù)來計(jì)算陰歷日期。陽歷一個(gè)月不是30天就是31天(2月除外,閏年2月為29天,平年2月為28天)。陰歷一年有12個(gè)月或13個(gè)月(含閏月),一個(gè)月為30天或29天。如果把一個(gè)只有29天的月稱為小月,用1為標(biāo)志,把30天的月稱為大月,用0為標(biāo)志,那么12位二進(jìn)制就能表示一年12個(gè)月的大小。如果有閏月,則把閏月的月份作為一個(gè)字節(jié)的高4位,低4位表示閏月大小,大月為0,小月為1,這樣一個(gè)字節(jié)就包括了所有閏月的信息。陰歷春節(jié)和陽歷元旦相差的天數(shù)也用一個(gè)字節(jié)表示??偣灿?字節(jié)就可以存儲一年中任何一天陽歷和陰歷的對應(yīng)關(guān)系的有關(guān)數(shù)據(jù),例如2004年的陰歷和陽歷對應(yīng)關(guān)系如表4-1所示。表3-32004年的陰歷和陽歷對應(yīng)關(guān)系表月份123456789101112閏2月大小小大大大小大小大小大小大小二進(jìn)制1000101010101天數(shù)293030302930293029302930十六進(jìn)制4252212004年的春節(jié)和元旦差21天,這樣2004年的信息表示為:21,42H,52H,21H。其中表示12個(gè)月大小信息的字節(jié),第4位和第7位不用,第1個(gè)字節(jié)為十進(jìn)制,其它的都為十六進(jìn)制。按此方法,50年的陽歷和陰歷對應(yīng)關(guān)系表總共使用200字節(jié)。有了算法和數(shù)據(jù)以后,就可以設(shè)計(jì)軟件了。先要根據(jù)當(dāng)前陽歷的日期,算出陽歷為該年中的第幾天。圖5-3為計(jì)算陽歷中任何一天在該年中為第幾天的程序流程圖。圖4-3計(jì)算陽歷天數(shù)程序流程圖計(jì)算出當(dāng)前陽歷日期為該年中的第幾天后,再減去陽歷該年春節(jié)和元旦的日差,如果夠減,則相減的結(jié)果就是陰歷在該年中的總第幾天了。根據(jù)該數(shù)據(jù)就可以推算出具體的當(dāng)前陰歷日期;如果不夠減,則表示當(dāng)前陰歷年為陽歷年的前一年。這種情況下,根據(jù)實(shí)際,當(dāng)前陰歷日期會處于陰歷11月或12月,此時(shí)春節(jié)和元旦的日差減去前面計(jì)算出的當(dāng)前陽歷日期在陽歷年為第幾天的數(shù)據(jù),其結(jié)果表示當(dāng)前陰歷日期離春節(jié)的天數(shù)。計(jì)算出的陽歷天數(shù)為該年的第幾天,存放在寄存器R2和R3中。計(jì)算出天數(shù)后,如果大于#FFH,則把#FFH存放在R2中,余值存放在R3中。也就是說在用寄存器R2和R3表示的天數(shù)信息中,R2充當(dāng)主寄存器,數(shù)據(jù)先存滿R2,再存R3。在整個(gè)轉(zhuǎn)換程序中,這里面的數(shù)據(jù)不能被覆蓋。計(jì)算出陽歷總天數(shù)后,就可以根據(jù)它來推算陰歷日期。推算方法是,先用總天數(shù)減去春節(jié)和元旦的日差,如果結(jié)果為1,則該天正好是春節(jié)(因?yàn)榇汗?jié)在元旦之后,在計(jì)算春節(jié)和元旦的日差時(shí),假設(shè)元旦為0天,春節(jié)為n天,則日差為n。而前面計(jì)算的陽歷總天數(shù)是該天在該年中的第幾天,是以元旦為1而得到的,與計(jì)算春節(jié)和元旦日差的這樣方法相比,其數(shù)值少了1,所以要在原來本應(yīng)該以0作為該天就是春節(jié)的依據(jù)的基礎(chǔ)上加1,所以以1作為該天是春節(jié)的標(biāo)志);如果結(jié)果小于1,則陰歷應(yīng)該是陽歷的前一年;如果結(jié)果大于1,說明陽歷和陰歷為同一年。再根據(jù)查表所得的該年的陰歷的閏年和大小月的信息,就可以推算出該天的陰歷日期了。圖4-4為由總天數(shù)推算出陰歷日期的程序流程圖。圖4-4推算陰歷日期的程序流程圖126003.4紅外信號接收解碼驅(qū)動設(shè)計(jì)紅外信號的的接收通過外部中斷[1]處理函數(shù)來完成的,中斷函數(shù)中判斷按鍵的編碼,然后執(zhí)行相應(yīng)的按鍵動作,比如檢測到鍵S1被按下,則執(zhí)行調(diào)節(jié)時(shí)間的動作。圖19紅外發(fā)射程序流程圖3.5紅外信號發(fā)射程序的設(shè)計(jì)紅外發(fā)射程序和紅外接收程序是獨(dú)立的,紅外信號的發(fā)射和接收分別由各自單片機(jī)來完成。紅外信號的發(fā)射利用定時(shí)器[12],每隔26us中斷一次,主程序中等待按鍵被按下,若檢測到有按鍵按下,就調(diào)用紅外發(fā)射函數(shù),發(fā)送相應(yīng)的二進(jìn)制編碼。其程序流程圖見圖20。圖20紅外發(fā)射程序流程圖3.6時(shí)間調(diào)整子程序設(shè)計(jì)調(diào)整時(shí)間用五個(gè)調(diào)整按鈕,一個(gè)作為設(shè)置鍵、控制用,一個(gè)作為退出設(shè)置按鍵,一個(gè)作為鬧鈴開關(guān)用,剩下兩個(gè)是對設(shè)置位的加,減操作。圖3-6時(shí)間調(diào)整程序流程圖

第四章系統(tǒng)調(diào)試系統(tǒng)調(diào)試包括軟件調(diào)試和硬件調(diào)試。硬件調(diào)試的任務(wù)是排除所焊接電路故障。軟件調(diào)試是利用開發(fā)工具進(jìn)行在線仿真調(diào)試。調(diào)試的一般過程如下所示:系統(tǒng)調(diào)試的一般過程是上電運(yùn)行后觀察其運(yùn)行狀態(tài),數(shù)碼管是否點(diǎn)亮等。軟件調(diào)試先是各個(gè)模塊、各個(gè)子程序分別調(diào)試,最后進(jìn)行系統(tǒng)聯(lián)機(jī)調(diào)試。4.1軟件調(diào)試對于本設(shè)計(jì)采用proteus軟件進(jìn)行了仿真和驗(yàn)證,過程和結(jié)果如下:1.打開Proteus軟件。2.選擇file菜單下的opendesign選項(xiàng),找到所需的元器件,元器件上單擊右鍵選中,再單擊左鍵對其進(jìn)行命名和賦值,接著在編輯器左邊的一欄中,找出并繪制設(shè)計(jì)所要的各種元器件,按照電路圖連接后并保存。3.將用keil編譯產(chǎn)生的hex文件下載到單片機(jī)中:雙擊51單片機(jī),在對話框中把保存過的hex文件打開,再單擊確定。4.單擊左下角運(yùn)行按鈕,進(jìn)行軟件仿真調(diào)試,直到出現(xiàn)正確的結(jié)果。下圖為軟件的仿真窗口圖:4.2硬件調(diào)試設(shè)計(jì)的過程中,對硬件的檢測和對軟件的測試都不能忽略,因?yàn)樵谙到y(tǒng)的仿真過程中。各元件都是理想的,而在設(shè)計(jì)實(shí)際電路時(shí),就需要多方面考慮。要先對元件進(jìn)行檢測,然后進(jìn)行調(diào)試。例如如果在設(shè)計(jì)中不加任何驅(qū)動,在仿真軟件中仍然可以正常計(jì)價(jià),但是在具體硬件焊接時(shí),需要考慮電路的驅(qū)動能力。在已經(jīng)焊接好的電路板上,要對其各個(gè)元器件進(jìn)行檢查。一般情況下,集成電路不會出現(xiàn)故障。在本設(shè)計(jì)中采用了先焊接插槽的方法,這可以避免一些元件在焊接的過程中被燒壞。另外在焊接數(shù)碼管時(shí),要先排線,再焊接以免線路混亂。元件在選購時(shí)需要多備選元件,元件的型號較多,產(chǎn)品質(zhì)量沒有可靠保證,就避免不了我買的元器件是損壞的,再加上焊接是在萬能板上焊接的。就有可能發(fā)生虛焊,短路等情況的發(fā)生。所以,在焊接好每個(gè)元件后都要進(jìn)行檢測,以保證焊接無誤。焊接好電路板,把相應(yīng)的芯片插到對應(yīng)的插槽中,再檢一次,看芯片是否與插槽接觸良好。顯示部分檢測的目的是看數(shù)碼管是否能夠正常顯示。如果不該亮的字段點(diǎn)亮,檢測是因否有短路的情況;如果數(shù)碼管不顯示,說明位選端可能沒有焊好;如果顯示不夠亮,則應(yīng)該檢查驅(qū)動電路。晶振部分使用示波器查看波形。如果出現(xiàn)看不到12MHZ的正弦波形的現(xiàn)象,說明此部分電路不正常。

總結(jié)經(jīng)過多次的反復(fù)測試與分析,掌握了硬件的設(shè)計(jì)與分析的能力,學(xué)會看英文版的Datashee,同時(shí)在軟件的編程方面得到更到的提高,對編程能力得到加強(qiáng).對所學(xué)的知識得到很大的提高與鞏固.最終實(shí)現(xiàn)功能:(1)能顯示陽歷年、月、日、星期、小時(shí)、分、秒。(2)顯示模塊采用LCD液晶顯示,要求能用紅外遙控器調(diào)整時(shí)間。(3)能顯示陰歷月、日,在顯示陰歷時(shí)間時(shí)能標(biāo)明是否為閏年。(4)具有定時(shí)報(bào)警功能,能夠進(jìn)行整點(diǎn)報(bào)時(shí)。參考文獻(xiàn)[1]周興華,等.手把手教你學(xué)單片機(jī)C程序設(shè)計(jì),北京:北京航空航天大學(xué)出版社,2007[2]侯玉寶,等.基于Proteus的51系列單片機(jī)設(shè)計(jì)與仿真,北京:電子工業(yè)出版社,2008[3]張義和,等.例說51單片機(jī)(C語言),北京:人民郵電出版社,2008[4]杜洋,等.愛上單片機(jī)(第2版),人民郵電出版社,2011

致謝在此感謝我們的鄭翔老師.,老師嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng)一直是我工作、學(xué)習(xí)中的榜樣;老師循循善誘的教導(dǎo)和不拘一格的思路給予我無盡的啟迪;這次課程設(shè)計(jì)的原理圖、PCB制作以及每一步進(jìn)行,都離不開老師您的細(xì)心指導(dǎo)。同時(shí)感謝對我?guī)椭^的同學(xué)們,謝謝你們對我的幫助和支持,讓我感受到同學(xué)的友誼。特別是小組長劉鄧同學(xué),無論在我元器件的采購上的細(xì)心和之后在硬件錯(cuò)誤中的排故都一直在鼓勵(lì)我完成這次課程設(shè)計(jì)。由于本人的設(shè)計(jì)能力有限,在設(shè)計(jì)過程中難免出現(xiàn)錯(cuò)誤,懇請老師們多多指教,我十分樂意接受你們的批評與指正,本人將萬分感謝。

基于C8051F單片機(jī)直流電動機(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ī)的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺控制器的研制基于單片機(jī)的軟起動器的研究和設(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)滴速度自動檢測儀的研制基于單片機(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)動控制系統(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)用能力的探究基于單片機(jī)控制的自動低頻減載裝置研究基于單片機(jī)控制的水下焊接電源的研究基于單片機(jī)的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機(jī)的氚表面污染測量儀的研制基于單片機(jī)的紅外測油儀的研究96系列單片機(jī)仿真器研究與設(shè)計(jì)基于單片機(jī)的單晶金剛石刀具刃磨設(shè)備的數(shù)控改造基于單片機(jī)的溫度智能控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)基于MSP430單片機(jī)的電梯門機(jī)控制器的研制基于單片機(jī)的氣體測漏儀的研究基于三菱M16C/6N系列單片機(jī)的CAN/USB協(xié)議轉(zhuǎn)換器基于單片機(jī)和DSP的變壓器油色譜在線監(jiān)測技術(shù)研究基于單片機(jī)的膛壁溫度報(bào)警系統(tǒng)設(shè)計(jì)基于AVR單片機(jī)的低壓無功補(bǔ)償控制器的設(shè)計(jì)基于單片機(jī)船舶電力推進(jìn)電機(jī)監(jiān)測系統(tǒng)基于單片機(jī)網(wǎng)絡(luò)的振動信號的采集系統(tǒng)基于單片機(jī)的大容量數(shù)據(jù)存儲技術(shù)的應(yīng)用研究基于單片機(jī)的疊圖機(jī)研究與教學(xué)方法實(shí)踐基于單片機(jī)嵌入式Web服務(wù)器技術(shù)的研究及實(shí)現(xiàn)基于AT89S52單片機(jī)的通用數(shù)據(jù)采集系統(tǒng)基于單片機(jī)的多道脈沖幅度分析儀研究機(jī)器人旋轉(zhuǎn)電弧傳感角焊縫跟蹤單片機(jī)控制系統(tǒng)基于單片機(jī)的控制系統(tǒng)在PLC虛擬教學(xué)實(shí)驗(yàn)中的應(yīng)用研究基于單片機(jī)系統(tǒng)的網(wǎng)絡(luò)通信研究與應(yīng)用基于PIC16F877單片機(jī)的莫爾斯碼自動譯碼系統(tǒng)設(shè)計(jì)與研究基于單片機(jī)的模糊控制器在工業(yè)電阻爐上的應(yīng)用研究基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究與開發(fā)基于Cygnal單片機(jī)的μC/OS-Ⅱ的研究基于單片機(jī)的一體化智能差示掃描量熱儀系統(tǒng)研究基于TCP/IP協(xié)議的單片機(jī)與Internet互聯(lián)的研究與實(shí)現(xiàn)變頻調(diào)速液壓電梯單片機(jī)控制器的研究基于單片機(jī)γ-免疫計(jì)數(shù)器自動換樣功能的研究與實(shí)現(xiàn)基于單片機(jī)的倒立擺控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)單片機(jī)嵌入式以太網(wǎng)防盜報(bào)警系統(tǒng)

溫馨提示

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

評論

0/150

提交評論