




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1 設(shè)計(jì)任務(wù)和方案1.1設(shè)計(jì)任務(wù)(一)設(shè)計(jì)題目:萬年歷(二)設(shè)計(jì)目的與任務(wù):學(xué)生通過理論設(shè)計(jì)和實(shí)物制作解決相應(yīng)的實(shí)際問題,鞏固和運(yùn)用在單片機(jī)技術(shù)中所學(xué)的理論知識和實(shí)驗(yàn)技能,掌握單片機(jī)應(yīng)用系統(tǒng)的一般設(shè)計(jì)方法,提高設(shè)計(jì)能力和實(shí)踐動手能力,為以后從事電子電路設(shè)計(jì)、研發(fā)電子產(chǎn)品打下良好的基礎(chǔ)。本次設(shè)計(jì)要能夠顯示年、月、日、時(shí)、分、秒、星期;其次,能對年、月、日、時(shí)、分、秒、星期進(jìn)行修改。1.2功能要求說明這次項(xiàng)目共設(shè)定了十五個(gè)功能鍵,其中s1gn鍵至s8gn鍵分別進(jìn)入相應(yīng)的功能模塊;s10gn鍵可以顯示此日是否有節(jié)日,是什么節(jié)日;s11gn鍵對選中的時(shí)間變量進(jìn)行減一;s12gn鍵對選中的時(shí)間變量進(jìn)行加
2、一;s13gn鍵為退出鍵;s14gn鍵對所要修改的時(shí)間變量進(jìn)行移位選擇;s15gn鍵按下,即可對要修改的時(shí)間變量進(jìn)行修改,同時(shí)在要修改的地方用游標(biāo)顯示;s16gn鍵為確認(rèn)鍵。只有當(dāng)修改鍵按下時(shí)才能對時(shí)間進(jìn)行修改,當(dāng)時(shí)間修改完成后,按下節(jié)日鍵即可顯示此日是什么節(jié)日,再按下確認(rèn)鍵即可以顯示時(shí)間。1.3設(shè)計(jì)總體方案及工作原理說明1.3.1主控制器的選擇與比較方案(1):采用cpld作為主控制器, 由于cpld具有強(qiáng)大的資源,使用方便靈活,易于進(jìn)行功能擴(kuò)展,特別是結(jié)合了eda,可以達(dá)到很高的效率。此方案邏輯電路復(fù)雜,且靈活性不高,不利于各種功能的擴(kuò)展。方案(2):基于at89s52單片機(jī)來實(shí)現(xiàn)系統(tǒng)的控
3、制, 控制外圍電路進(jìn)行時(shí)鐘顯示,鍵盤控制和液晶顯示,此系統(tǒng)控制靈活,能很好地滿足本題的基本要求。由于本學(xué)期我們開設(shè)了單片機(jī)這門課程,并且我在暑假期間參加單片機(jī)培訓(xùn)時(shí)使用的也是at89s52單片機(jī)這塊芯片,因此對這塊芯片還是比較了解,故在此采用這塊芯片作為主控制器。1.3.2時(shí)鐘方案的選擇與比較方案(1):at89s52單片機(jī)內(nèi)部帶有定時(shí)/計(jì)數(shù)功能,此定時(shí)功能是通過對外部晶振的脈沖進(jìn)行計(jì)數(shù),從而達(dá)到計(jì)時(shí)功能,只要使用11.0592的晶振就能實(shí)現(xiàn)零誤差的計(jì)時(shí),因此可以利用此功能實(shí)現(xiàn)計(jì)時(shí),但因?yàn)橹挥袉我坏挠?jì)時(shí)功能要實(shí)現(xiàn)“萬年歷”的功能需要較復(fù)雜的程序,而且如果單片機(jī)掉電無法繼續(xù)進(jìn)行計(jì)時(shí),所以使用不便
4、。方案(2):ds1302是美國dallas公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)ram,采用spi三線接口與cpu進(jìn)行通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號和ram數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小與31天時(shí)可以自動調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.55.5v。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。利用單片機(jī)強(qiáng)大的控制功能就可實(shí)現(xiàn)實(shí)時(shí)計(jì)時(shí)的功能,而且消耗的系統(tǒng)資源少,程序簡單。綜合上述兩種方案,宜采用方案(2)實(shí)現(xiàn)實(shí)時(shí)計(jì)時(shí)功能。1.3.3按鍵模塊方案的選擇與比較方案(
5、1): 矩陣式鍵盤,行線的一端通過上拉電阻與單片機(jī)的p1口線的高四位相連,列線的一端也通過上拉電阻與單片機(jī)的p1口線低四位相連。矩陣式鍵盤結(jié)構(gòu)性好,使用于按鍵較多時(shí)的情況。方案(2):獨(dú)立式鍵盤, 每個(gè)按鍵的電路是獨(dú)立的,都有單獨(dú)一根數(shù)據(jù)線輸出鍵的通斷狀態(tài)。單片機(jī)一條i / o口線對應(yīng)一個(gè)按鍵。獨(dú)立式鍵盤結(jié)構(gòu)簡單,易于編程,適用本實(shí)驗(yàn)按鍵較少的情況。由于這次設(shè)計(jì)中,使用的功能鍵比較多,若采用獨(dú)立式鍵盤占有的i/o口比較多,所以在這里采用行列式鍵盤。1.3.4顯示模塊方案的選擇與比較方案(1):采用液晶顯示,液晶顯示是一種被動式的顯示器,即液晶本身并不發(fā)光,而是利用液晶經(jīng)過處理后能改變光線通過的
6、特性,而達(dá)到白底黑字的目的。液晶顯示功耗低,抗干擾能力強(qiáng),顯示信息豐富等特點(diǎn)。方案(2):數(shù)碼管是利用發(fā)光二極管的特性組合而成數(shù)字顯示器件,通過控制相應(yīng)的二極管的狀態(tài)顯示相應(yīng)的數(shù)字。要使數(shù)碼管正常顯示就得有驅(qū)動電路驅(qū)動相應(yīng)的段碼,數(shù)碼管的現(xiàn)實(shí)方式可分為靜態(tài)顯示和動態(tài)顯示,靜態(tài)顯示方式只適合顯示單個(gè)的數(shù)字,因此本設(shè)計(jì)應(yīng)采用動態(tài)顯示方式。由于動態(tài)顯示方式利用的是人眼視覺暫留的特性,掃描的時(shí)間應(yīng)不大于20毫秒,占用系統(tǒng)資源大,而且顯示的個(gè)數(shù)和字型有限,在本設(shè)計(jì)中不易采用。 由于此次要顯示的內(nèi)容比較多,故采用液晶作為顯示界面??傮w的設(shè)計(jì)原理圖如圖1.1所示圖1.1 原理框圖2 萬年歷的硬件系統(tǒng)的設(shè)計(jì)2
7、.1 硬件系統(tǒng)各模塊功能簡要介紹 該萬年歷主要由單片機(jī)最小系統(tǒng)、行列式鍵盤模塊、液晶顯示電路模塊、ds1302時(shí)鐘電路模塊和led指示燈電路模塊組成。各模塊的功能如下:(1)單片機(jī)最小系統(tǒng)由at89s52單片機(jī)、時(shí)鐘電路和復(fù)位電路構(gòu)成。at89s52是一種低功耗、高性能cmos8位微控制器,具有8k在系統(tǒng)可編程flash存儲器。時(shí)鐘電路由一個(gè)12mhz的石英晶體振蕩器和兩個(gè)33pf的的電容組成振蕩電路和分頻電路。復(fù)位電路采用上電復(fù)位和按鍵復(fù)位結(jié)合的方式對電路進(jìn)行復(fù)位,主要是通過rst引腳送入單片機(jī)。單片機(jī)最小系統(tǒng)為整個(gè)電路的核心。(2)矩陣式鍵盤模塊在鍵盤中按鍵數(shù)量較多時(shí),為了減少i/o口的占
8、用,通常將按鍵排列成矩陣形式,如圖1所示。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個(gè)按鍵加以連接。這樣,一個(gè)端口(如p1口)就可以構(gòu)成4*4=16個(gè)按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤,而直接用端口線則只能多出一鍵(9鍵)。由此可見,在需要的鍵數(shù)比較多時(shí),采用矩陣法來做鍵盤是合理的。 矩陣式結(jié)構(gòu)的鍵盤顯然比直接法要復(fù)雜一些,識別也要復(fù)雜一些,上圖中,列線通過電阻接正電源,并將行線所接的單片機(jī)的i/o口作為輸出端,而列線所接的i/o口則作為輸入。這樣,當(dāng)按鍵沒有按下時(shí),所有的輸出端都是高電平,代表無鍵按
9、下。行線輸出是低電平,一旦有鍵按下,則輸入線就會被拉低,這樣,通過讀入輸入線的狀態(tài)就可得知是否有鍵按下了。(3)液晶顯示電路模塊這次使用的是12864液晶芯片,接在單片機(jī)p0口。通常所說的12864lcd顯示塊是所說的點(diǎn)陣液晶顯示模塊,就是由128*64個(gè)液晶顯示點(diǎn)組成的一個(gè)128列*64行的陣列,所以也就叫成了12864。每個(gè)顯示點(diǎn)都對應(yīng)著有一位二進(jìn)制數(shù),0表示滅,1表示亮。存儲這些點(diǎn)陣信息的ram被稱為顯示數(shù)據(jù)存儲器。如果要顯示某個(gè)圖形或漢字就是將相應(yīng)的點(diǎn)陣信息寫入到對應(yīng)的存儲單元中。圖形或漢字的點(diǎn)陣信息是由自己設(shè)計(jì),這時(shí)候問題的關(guān)鍵是顯示點(diǎn)在液晶屏上的位置與其在存儲器中的地址之間的關(guān)系。
10、顯示點(diǎn)在64*64液晶屏上的位置由列號(line,063)與行號(line,063)確定。512*8 bits ram中某個(gè)存儲單元的地址由頁地址(xpage,07)和列地址(yaddress,063)確定。每個(gè)存儲單元存儲8個(gè)液晶點(diǎn)的顯示信息。(4)ds1302電路模塊ds1302是美國dallas公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)ram,采用spi三線接口與cpu進(jìn)行通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號和ram數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小與31天時(shí)可以自動調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.55.5v。采用雙電源供電
11、(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。各引腳的功能為:vcc1:備用電池端;vcc2:5v電源。當(dāng)vcc2vcc1+0.2v時(shí),由vcc2向ds1302供電,當(dāng)vcc2 vcc1時(shí),由vcc1向ds1302供電。sclk:串行時(shí)鐘,輸入; i/o:數(shù)據(jù)輸入輸出口;ce/rst:復(fù)位腳、x1、x2 是外接晶振腳 (32.768khz的晶振)地(gnd)圖2.1ds1302引腳圖(5)led指示燈電路模塊單片機(jī)p3.2口線上經(jīng)過一個(gè)470的電阻與led燈的陰極相連接,led燈的陽極接正五伏電壓。470的電阻起限流的作用。led指示燈電路模塊主要用來指
12、示用違規(guī)操作發(fā)生。2.2 電路原理圖、pcb圖和元器件布局圖protel原理圖、pcb圖以及元器件布局圖分別見附錄1附錄2與附錄3。 2.3 元器件清單 元器件清單見附錄4。3 萬年歷軟件系統(tǒng)的設(shè)計(jì)3.1 使用的單片機(jī)資源的情況萬年歷用到了單片機(jī)的定時(shí)器的功能,定時(shí)器1采用工作方式1并以中斷方式工作;在數(shù)據(jù)的顯示時(shí)采用的是查表的方法,因此需要將表格、數(shù)據(jù)存到單片機(jī)的程序存儲器中去;用到了波特率發(fā)生器與ds1302相連本設(shè)計(jì)采用矩陣式鍵盤,鍵盤直接接在p1口上且按鍵的結(jié)果存貯在單片機(jī)的內(nèi)部數(shù)據(jù)存儲器里面。用到的液晶顯示器接到了單片機(jī)的p0口線上和p3口線上。ds1302接在單片機(jī)p3口線上。 3
13、.2 各模塊功能簡要介紹 該搶答器所用的軟件模塊有定時(shí)器模塊、按鍵模塊、液晶顯示模塊、時(shí)鐘芯片模塊。(1)定時(shí)器模塊選擇定時(shí)器1,設(shè)置定時(shí)器定時(shí)方式為方式1以中斷方式工作,設(shè)置定時(shí)時(shí)間為50ms。(2)按鍵模塊采用矩陣式鍵盤,共用15個(gè)按鍵對電路進(jìn)行控制和操作,分別為s1gn至s8gn來控制選擇相應(yīng)功能模塊。s10gn顯示相應(yīng)的節(jié)日;s11gn、s12gn、分別對時(shí)間變量進(jìn)行減與加法處理;s13gn退出鍵、s14gn為移動修改變量鍵、s15gn為修改鍵s16gn為退出鍵。(3)液晶顯示模塊液晶初始時(shí)顯示1.萬年歷2.點(diǎn)陣屏3.頻率計(jì)4.密碼鎖5.信號源6.電壓表7.溫度計(jì)8.計(jì)算器;進(jìn)入萬年歷
14、界面后顯示初始時(shí)間2008年2月19日12時(shí)20分10秒星期四。(3)時(shí)鐘模塊ds1302有自帶的時(shí)間且比較精確。因此只要學(xué)會如何去讀取,以及如何向其寫入數(shù)據(jù),即可利用其內(nèi)部時(shí)鐘。3.3 程序的流程框圖(1)主程序流程框圖如圖3.1所示。圖3.1 主程序流程框圖(2)萬年歷功能流程框圖 萬年歷流程框圖如圖3.2所示。圖3.2 萬年歷功能流程框圖(3)萬年歷修改函數(shù)程序流程框圖萬年歷修改程序流程框圖如圖3.3所示。圖3.3 修改函數(shù)程序流程框圖(4)修改天數(shù)程序流程框圖修改天數(shù)程序流程框圖如圖3.4所示。圖3.4 修改天數(shù)程序流程框圖(5)顯示節(jié)日程序流程框圖顯示節(jié)日程序流程框圖如圖3.5所示。
15、圖3.5 顯示節(jié)日程序流程框圖3.4程序清單見附錄5。4 萬年歷設(shè)計(jì)結(jié)論、仿真結(jié)果和教學(xué)建議4.1 設(shè)計(jì)結(jié)論和使用說明(1)設(shè)計(jì)結(jié)論通過對單片機(jī)進(jìn)行外接鍵盤和液晶顯示器及ds1302時(shí)鐘芯片的操作以及加上硬件電路和軟件設(shè)計(jì)相結(jié)合,實(shí)現(xiàn)了對萬年歷的年、月、日、時(shí)、分、秒、星期的顯示,并能人為的對年、月、日、時(shí)、分、秒、星期進(jìn)行修改,同時(shí)還可以顯示出相應(yīng)的節(jié)日。但其上電時(shí)顯示 湖南 工學(xué)院 , 自本0801 ,made in china , 文 亮 ,閃爍三次后顯示1.萬年歷2.點(diǎn)陣屏3.頻率計(jì)4.密碼鎖5.信號源6.電壓表7.溫度計(jì)8.計(jì)算器;進(jìn)入萬年歷界面后顯示初始時(shí)間2008年2月19日12
16、時(shí)20分10秒星期四。4.2 仿真結(jié)果在仿真時(shí)用要兩個(gè)軟件,第一個(gè)是keil,第二個(gè)是proteus,本次仿真是將兩個(gè)軟件結(jié)合起來進(jìn)行的。運(yùn)用keil軟件用來編譯和調(diào)試程序,運(yùn)用ptoteus軟件來仿真。這次設(shè)計(jì)已在keil中調(diào)試成功并運(yùn)行無誤,但在ptoteus仿真軟件中沒有找到合適的仿真模型,因此沒有仿真運(yùn)行結(jié)果。但是在實(shí)物上運(yùn)行結(jié)果完全正常無誤,特此用手機(jī)將運(yùn)行結(jié)果拍攝下來,如下圖所示圖4.1 萬年歷界面圖圖4.2 萬年歷初始時(shí)間圖圖4.3 節(jié)日顯示結(jié)果圖圖4.4 節(jié)日顯示結(jié)果圖4.3設(shè)計(jì)體會本次我設(shè)計(jì)的萬年歷已經(jīng)能夠完成任務(wù),達(dá)到了設(shè)計(jì)要求。這次設(shè)計(jì)的巧妙之處就在于我編寫了許多函數(shù),把
17、每一個(gè)功能分塊做成一個(gè)一個(gè)的子函數(shù),再去調(diào)用這些子函數(shù),因此使讀者很容易讀懂,且為今后在做類似方面課程設(shè)計(jì)提供了方便之處。其次我編寫的顯示節(jié)日的功能也比較新穎,這個(gè)想法是我在網(wǎng)上查找如何將陽歷轉(zhuǎn)換為陰歷時(shí)無意中發(fā)現(xiàn)的,這是在一份c語言的課程設(shè)計(jì)中看到這個(gè)想法的,我在結(jié)合自己對硬件的了解成功的實(shí)現(xiàn)了這一功能,覺得無比的欣慰。我所用的實(shí)物板子的電路雖然不是自己設(shè)計(jì)的,是在暑假培訓(xùn)時(shí)按照老師給我的原理圖自己制作的pcb板,在暑期的兩個(gè)月培訓(xùn)過程中我已經(jīng)基本掌握了其硬件設(shè)計(jì)原理,并懂得了如何去使用這些功能模塊,我的硬件設(shè)計(jì)與軟件設(shè)計(jì)能力也得到了一定程度的提高。在這次課程設(shè)計(jì)中我本來還想加上鬧鈴功能,但
18、由于時(shí)間的關(guān)系未能完成,以后我會更加努力完善其功能。4.4教學(xué)建議在我的印象中王老師總是對我們嚴(yán)格的要求,好像片刻也不能讓我們放下學(xué)習(xí)的腳步,雖然我們覺得很累,正是在您這種嚴(yán)格的要求下我們才能真正的學(xué)到知識。王老師你一直在向我們灌輸勤實(shí)踐的思想對我們的學(xué)習(xí)帶來了很大的幫助,我們用我們辛勤的奮斗學(xué)到了許多書本上沒有的但很實(shí)用的知識,我覺得王老師應(yīng)該繼續(xù)向下一屆學(xué)生灌輸這種思想?yún)⒖嘉墨I(xiàn)1馬忠梅,籍順心,張凱,馬巖.單片機(jī)的c語言應(yīng)用程序設(shè)計(jì)m.北京:北京航空航天大學(xué)出版社,2006ma zhongmei,j, zhang kai, mayan. mcu c language program des
19、ign m .beijing: beijing aerospace university press, 20062李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)m.北京:北京航空航天大學(xué)出版社,2007 li guangdi, zhuyuexiu, leng zuqi. microcontroller m .beijing: beijing university of aeronautics and press, 2007 致 謝在這里我要感謝王老師這段時(shí)間對我的悉心教誨,這段時(shí)間我確實(shí)學(xué)到了很多實(shí)用的知識,同時(shí)經(jīng)過不斷的實(shí)踐操作,我也加深了對理論的理解。正是在這學(xué)期的單片機(jī)學(xué)習(xí)過程中我的硬件設(shè)計(jì)能力與軟
20、件設(shè)計(jì)能力有了相當(dāng)大程度提高,在這里我感覺學(xué)到了正真的知識,我對今后就業(yè)也充滿了信心,真心的感謝王老師對我的幫助!附 錄1圖1原理圖圖2矩陣式鍵盤附 錄2 圖1加液晶最小系統(tǒng)pcb頂層圖圖2加液晶最小系統(tǒng)pcb底層圖圖3矩陣式鍵盤pcb圖附 錄3圖1布局圖附 錄4 表4.1 元器件清單元件名稱型號數(shù)量/個(gè)用途單片機(jī)at89s521控制核心時(shí)鐘芯片ds13021實(shí)時(shí)時(shí)鐘晶振12mhz1晶振電路晶振32.768khz1時(shí)鐘電路電容33pf2晶振電路電解電容10uf/25v1復(fù)位電路矩陣式鍵盤4*416按鍵/復(fù)位電路電阻1k1電源指示電路電阻5.1k1復(fù)位電路電阻2202限流/復(fù)位電路滑動變阻器50
21、k1lcd12864背光調(diào)節(jié)三極管90121蜂鳴器電路發(fā)光二極管紅色1電源指示電路蜂鳴器有源蜂鳴器1蜂鳴器電路紐扣電池cr2025/3v1時(shí)鐘電路紐扣電池座cr20251時(shí)鐘電路排座間距2.54mm16顯示電路lcdlcd128641顯示電路排針間距2.54mm2電源接口電容1041電源接口電源插座1提供+5v電源附 錄5 /* 描述: * at89s52液晶演示 數(shù)據(jù)p0,控制p1 * 功能: * 萬年歷 * 技術(shù)支持: * 湖南工學(xué)院 * * * */#include #include #define uchar unsigned char#define uint unsigned int
22、/*引腳定義區(qū)*/#define lcd_data p0 /*數(shù)據(jù)口*/sbit lcd_rs = p30; /*寄存器選擇輸入*/ sbit lcd_rw = p31; /*液晶讀/寫控制*/sbit lcd_en = p35; /*液晶使能控制*/sbit lcd_psb = p32; /*串/并方式控制*/sbit lcd_rst = p37; /*液晶復(fù)位引腳*/sbit le=p36; /*373引腳*/sbit l1 =p37;/*ds1302引腳*/sbit sck=p32;/*ds1302引腳*/sbit scl= p33;/*ds1302引腳*/sbit rst=p34; /
23、*ds1302引腳*/*變量定義區(qū)*/uchar key;uchar keyy;uchar keyx=0;uchar q=0;uchar i;uchar f_50ms;uchar f_x=0;uchar tmp;uchar tmp2;char p;uchar ar;uchar ar0;uchar leap=1;/*/bit readrtc_flag;bit timer;/*/#define delaynop(); _nop_();_nop_();_nop_();_nop_();/*字符數(shù)組定義區(qū)*/* *開機(jī)界面顯示字符*/uchar code dis1 = 湖南 工學(xué)院 ;uchar cod
24、e dis2 = 自本0801 ;uchar code dis3 = made in china ;uchar code dis4 = 文 亮 ;/*菜單顯示字符*/uchar code dis5 = 1.萬年歷2.點(diǎn)陣屏;uchar code dis6 = 3.頻率計(jì)4.密碼鎖;uchar code dis7 = 5.信號源6.電壓表;uchar code dis8 = 7.溫度計(jì)8.計(jì)算器;/*/uchar code dis19 = 今天無節(jié)日 ;uchar code dis20 = 元旦快了 ;uchar code dis21 = 世界麻風(fēng)日 ;uchar code dis22 = 春節(jié)
25、快樂 ;uchar code dis23 = 元宵節(jié)快樂 ;uchar code dis24 = 青龍節(jié) ;uchar code dis25 = 世界濕地日 ;uchar code dis26 = 明天情人節(jié)了 ;uchar code dis27 = 情人節(jié)快樂了 ;uchar code dis28 = 國際海豹日 ;uchar code dis29 = 全國愛耳日 ;uchar code dis30 = 明天是結(jié)婚紀(jì)念日;uchar code dis31 = 3.8 結(jié)婚紀(jì)念日 ;uchar code dis32 = 植樹節(jié) ;uchar code dis33 = 國際警察日 ;uchar
26、code dis34 = 消費(fèi)者權(quán)益日 ;uchar code dis35 = 國際航海日 ;uchar code dis36 = 世界森林日 ;uchar code dis37 = 世界水日 ;uchar code dis38 = 世界氣象日 ;uchar code dis39 = 世界防治結(jié)核病日;uchar code dis40 = 愚人節(jié) 小心上當(dāng);uchar code dis41 = 世界衛(wèi)生日 ;uchar code dis42 = 復(fù)活節(jié) ;uchar code dis43 = 黑色星期五 ;uchar code dis44 = 端午節(jié)快樂 ;uchar code dis45 =
27、 勞動節(jié)快了 ;uchar code dis46 = 五四青年節(jié) ;uchar code dis47 = 世界紅十字日 ;uchar code dis48 = 國際護(hù)士節(jié) ;uchar code dis49 = 近日注意母親節(jié) ;uchar code dis50 = 國際家庭日 ;uchar code dis51 = 世界無煙日 ;uchar code dis52 = 國際兒童節(jié) ;uchar code dis53 = 世界環(huán)境日 ;uchar code dis54 = 國際禁毒日 ;uchar code dis55 = 全國愛眼日 ;uchar code dis56 = 近日注意父親節(jié) ;u
28、char code dis57 = 近日注意父親節(jié) ;uchar code dis58 = 乞巧節(jié)中國情人節(jié);uchar code dis59 = 中元節(jié)快樂 ;uchar code dis60 = 香港回歸記念日 ;uchar code dis61 = 抗日戰(zhàn)爭記念日 ;uchar code dis62 = 世界人口日 ;uchar code dis63 = 中秋節(jié)快樂 ;uchar code dis64 = 八一建軍節(jié) ;uchar code dis65 = 中國男子節(jié) ;uchar code dis66 = 抗戰(zhàn)勝利記念日 ;uchar code dis67 = 今日重陽節(jié) ;uchar
29、 code dis68 = 中國教師節(jié) ;uchar code dis69 = 九一八事變記念;uchar code dis70 = 國際愛牙日 ;uchar code dis71 = 世界旅游日 ;uchar code dis72 = 中國國慶節(jié) ;uchar code dis73 = 世界動物日 ;uchar code dis74 = 聯(lián)合國日 ;uchar code dis75 = 明天國際教師節(jié) ;uchar code dis76 = 國際教師節(jié) ;uchar code dis77 = 世界青年節(jié) ;uchar code dis78 = 世界學(xué)生節(jié) ;uchar code dis79
30、= 世界艾滋病日 ;uchar code dis80 = 明晚平安夜 ;uchar code dis81 = 今晚平安夜 ;uchar code dis82 = 圣誕快樂 ;uchar code dis83 = 明日新年 ;uchar code dis84 = 凌晨 ;uchar code dis85 = 早晨 ;uchar code dis86 = 上午 ;uchar code dis87 = 中午 ;uchar code dis88 = 下午 ;uchar code dis89 = 晚上 ;uchar code dis90 = 夜晚 ;uchar code dis91 = 深夜 ;/*萬年
31、歷顯示字符*/uchar code yejingtable = 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39/*,0x03,0x2d*/;/0-9uchar l_tmpdate7 = 10, 20, 12, 19, 2, 4, 8;/秒分時(shí)日月周年08-05-15 12:00:00/ 0 1 2 3 4 5 6/ 秒,分,時(shí),日,月 ,周, 年uchar l_tmpdisplay14;code uchar write_rtc_address7 = 0x80,0x82,0x84,0x86,0x88,0x8a,0x8c; /秒分時(shí)日月周年 最低
32、位讀寫位code uchar read_rtc_address7 = 0x81,0x83,0x85,0x87,0x89,0x8b,0x8d; uchar code dis11 = (時(shí)分秒年月日星期);uchar code dis121 = (修改);uchar code dis12 = (一二三四五六七);uchar code dis122 = (確認(rèn));uchar code dis423 = 退出;uchar code dis123 = 鬧鐘;uchar code dis124 = 鬧鐘設(shè)定;/*/uchar panduan(year)if(l_tmpdate6%4=0&l_tmpdate
33、6%100!=0)|year%400=0)leap=1;elseleap=0;return(leap);/*/* */* 延時(shí)函數(shù) */* */*/void delay(int ms) while(ms-) uchar i; for(i=0;i150;i+) _nop_(); _nop_();_nop_();_nop_(); /*/* */*檢查lcd忙狀態(tài) */*lcd_busy為1時(shí),忙,等待。lcd-busy為0時(shí),閑,可寫指令與數(shù)據(jù)。 */* */*/bit lcd_busy()bit result=0;lcd_rs =0;lcd_rw =1; lcd_en =1; delaynop(
34、);result = (bit)(p0&0x80); lcd_en = 0; return(result); /*/* */*寫指令數(shù)據(jù)到lcd */*rs=l,rw=l,e=高脈沖,d0-d7=指令碼。 */* */*/void writecommand(uchar cmd)/*寫指令數(shù)據(jù)到lcd*/ while(lcd_busy();/*只有不忙的時(shí)候才能寫指令*/ lcd_rs = 0; lcd_rw = 0; lcd_en = 0; _nop_(); _nop_(); p0 = cmd;/*cmd代表指令*/ delaynop(); lcd_en = 1; delaynop(); lc
35、d_en = 0; /*/* */*寫顯示數(shù)據(jù)到lcd */*rs=h,rw=l,e=高脈沖,d0-d7=數(shù)據(jù)。 */* */*/ void writedata(uint dat)/*寫顯示數(shù)據(jù)到lcd*/ while(lcd_busy();/*只有不忙的時(shí)候才能寫顯示數(shù)據(jù)*/ lcd_rs = 1; lcd_rw = 0;lcd_en = 1;_nop_(); _nop_(); p0 = dat;/*dat代表顯示數(shù)據(jù),是8位的二進(jìn)制數(shù)*/_nop_(); _nop_(); lcd_en = 0; /*/* */* lcd初始化設(shè)定 */* */*/void lcd_init() lcd_psb = 1; /并口方式 lcd_rst = 0; /液晶復(fù)位 delay(3); lcd_rst = 1; / delay(3); delay(5); writecommand(0x30); /基本指令操作 delay(5); writecommand(0x0c); /顯示開,關(guān)光標(biāo) delay(5); writecommand(0x01); /清除lcd的顯示內(nèi)容 delay(5);/*/* */* 設(shè)定顯示位置 */* */*/void lcd_pos(uchar x,uchar y)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全服務(wù)培訓(xùn)課件
- 農(nóng)業(yè)種植行業(yè)農(nóng)作物收成風(fēng)險(xiǎn)免責(zé)合同
- 2025年開封市住房公積金管理中心招聘考試筆試試題【答案】
- 理財(cái)知識培訓(xùn)課件
- 人物介紹卡課件模板下載
- 小區(qū)農(nóng)業(yè)信息化服務(wù)平臺建設(shè)合同
- 定目標(biāo)培訓(xùn)課件
- 市場推廣及合作合同協(xié)議書
- 紅河州二模數(shù)學(xué)試卷
- 2026版《全品高考》選考復(fù)習(xí)方案生物02 第二單元 細(xì)胞的結(jié)構(gòu)與物質(zhì)的運(yùn)輸06 微專題2 主動運(yùn)輸?shù)姆绞?含答案
- 電商品牌代理權(quán)專屬合作協(xié)議范本
- 踢拳教學(xué)課件
- 幼兒園中班下家長會課件
- 2025北京市職業(yè)病防治院第二批招聘19人筆試參考題庫附答案解析
- 人民警察法試題及答案
- 2025年高考數(shù)學(xué)全國新課標(biāo)Ⅱ卷試卷評析及備考策略(課件)
- 《鐵路技術(shù)管理規(guī)程》(普速鐵路部分)
- 深基坑開挖危險(xiǎn)源辨識及控制措施
- 大班藝術(shù)活動:《有趣的線條》
- 變電站直流系統(tǒng)講解PPT通用課件
- 市屬事業(yè)單位新一輪崗位聘用工作手冊
評論
0/150
提交評論