亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于AT89S52單片機(jī)的電子萬(wàn)年歷設(shè)計(jì)與實(shí)現(xiàn)

        2014-10-27 19:42:04李楊
        無(wú)線互聯(lián)科技 2014年9期

        李楊

        摘 要:本設(shè)計(jì)以AT89S52單片機(jī)為核心,構(gòu)成單片機(jī)控制電路,結(jié)合DS1302時(shí)鐘芯片和24C02FLASH存儲(chǔ)器,顯示陽(yáng)歷年、月、日、星期、時(shí)、分、秒和陰歷年、月、日,在顯示陰歷時(shí)間時(shí),能標(biāo)明是否閏月,同時(shí)完成對(duì)它們的自動(dòng)調(diào)整和掉電保護(hù),全部信息用液晶顯示。人機(jī)接口由三個(gè)按鍵來(lái)實(shí)現(xiàn),用這三個(gè)按鍵對(duì)時(shí)間、日期可調(diào),并可對(duì)鬧鈴開(kāi)關(guān)進(jìn)行設(shè)置。軟件控制程序?qū)崿F(xiàn)所有的功能。整機(jī)電路使用+5V穩(wěn)壓電源,可穩(wěn)定工作。

        關(guān)鍵詞:AT89S52;DS1302;HD61202;HY12864

        1 引言

        在日新月異的21世紀(jì)里,家用電子產(chǎn)品得到了迅速發(fā)展。許多家電設(shè)備都趨于人性化、智能化,這些電器設(shè)備大部分都含有CPU控制器或者是單片機(jī)。本文設(shè)計(jì)的電子萬(wàn)年歷屬于小型智能家用電子產(chǎn)品。本設(shè)計(jì)基于AT89S52單片機(jī)、DS1302時(shí)鐘芯片、24C02FLASH存儲(chǔ)器和HY-12864液晶顯示器等主要芯片,顯示陽(yáng)歷年、月、日、星期、時(shí)、分、秒和陰歷年、月、日,在顯示陰歷時(shí)間時(shí),能標(biāo)明是否閏月,同時(shí)完成對(duì)它們的自動(dòng)調(diào)整和掉電保護(hù),全部信息用液晶顯示。

        2 系統(tǒng)總體設(shè)計(jì)

        本設(shè)計(jì)以AT89S52單片機(jī)為核心,構(gòu)成單片機(jī)控制電路,結(jié)合DS1302時(shí)鐘芯片和24C02FLASH存儲(chǔ)器,顯示陽(yáng)歷年、月、日、星期、時(shí)、分、秒和陰歷年、月、日,在顯示陰歷時(shí)間時(shí),能標(biāo)明是否閏月,同時(shí)完成對(duì)它們的自動(dòng)調(diào)整和掉電保護(hù),全部信息用液晶顯示。人機(jī)接口由三個(gè)按鍵來(lái)實(shí)現(xiàn),用這三個(gè)按鍵對(duì)時(shí)間、日期可調(diào),并可對(duì)鬧鈴開(kāi)關(guān)進(jìn)行設(shè)置。

        按照系統(tǒng)設(shè)計(jì)功能的要求,確定設(shè)計(jì)系統(tǒng)由主控模塊、時(shí)鐘模塊、存儲(chǔ)模塊、鍵盤(pán)接口模塊、顯示模塊和鬧鈴模塊共6個(gè)模塊組成?;谝陨戏治?,系統(tǒng)設(shè)計(jì)框架如下所示。

        3 系統(tǒng)硬件設(shè)計(jì)

        根據(jù)系統(tǒng)設(shè)計(jì)的總體要求,本系統(tǒng)的硬件組成部分包括控制芯片,時(shí)鐘電路,存儲(chǔ)電路,鍵掃描電路,液晶顯示,鬧鈴電路6個(gè)部分。

        3.1 器件選擇

        考慮到體積、成本、市場(chǎng)等一系列因素,控制芯片最終選用STC89C52RC。其為增強(qiáng)型的8位8051單片機(jī),有8KB的可反復(fù)擦寫(xiě)EEPROM和512字節(jié)的RAM,無(wú)需外擴(kuò),代碼改寫(xiě)方便,滿足系統(tǒng)軟件設(shè)計(jì)要求;有內(nèi)置“看門(mén)狗”電路,3個(gè)16位定時(shí)/計(jì)數(shù)器,4個(gè)外部中斷,滿足系統(tǒng)硬件設(shè)計(jì)要求。

        時(shí)鐘電路采用DS1302作為記錄測(cè)控系統(tǒng)中的數(shù)據(jù)記錄,其軟硬件設(shè)計(jì)簡(jiǎn)單,時(shí)間記錄準(zhǔn)確,可以免了連續(xù)記錄的大工作量,也避免了定時(shí)記錄的盲目性,給連續(xù)長(zhǎng)時(shí)間的測(cè)量、控制系統(tǒng)的正常運(yùn)行及檢查都來(lái)方便。

        顯示器部分是由HD61202液晶顯示控制驅(qū)動(dòng)器和HY12864液晶顯示器組成的。HD61202液晶顯示控制驅(qū)動(dòng)器是一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器,它可直接與8位微處理器相連,它可與HD61203配合對(duì)液晶屏進(jìn)行行、列驅(qū)動(dòng);HY-12864是使用HD61202作為列驅(qū)動(dòng)器,同時(shí)使用HD61203作為行驅(qū)動(dòng)器的液晶模塊。

        3.2 系統(tǒng)原理圖

        4 系統(tǒng)軟件設(shè)計(jì)

        4.1 陽(yáng)歷程序的設(shè)計(jì)

        因?yàn)槭褂昧藭r(shí)鐘芯片DS1302,陽(yáng)歷程序可以從DS1302各寄存器中讀出年、周、月、日、[小]時(shí)、分、秒等數(shù)據(jù),再處理即可。在首次對(duì)DS1302進(jìn)行操作之前,必須進(jìn)行初始化,然后從DS1302中讀出數(shù)據(jù),再經(jīng)過(guò)處理,送給顯示緩沖單元。陽(yáng)歷程序流程圖見(jiàn)圖3所示。

        4.2 時(shí)間調(diào)整程序設(shè)計(jì)

        調(diào)整時(shí)間用三個(gè)調(diào)整按鈕,一個(gè)作為移位、控制用,一個(gè)作為加用,一個(gè)作為退出調(diào)整和鬧鈴開(kāi)關(guān)用。分別定義為控制按鈕、加按鈕、退出按鈕。在調(diào)整時(shí)間過(guò)程中,要調(diào)整的位與別的位應(yīng)該有區(qū)別,所以增加了閃爍功能,即調(diào)整的位一直在閃爍,直到調(diào)整下一位。閃爍原理就是,讓要調(diào)整的一位每隔一定的時(shí)間熄滅一次,例如間隔時(shí)間為50ms。利用定時(shí)器計(jì)時(shí),當(dāng)達(dá)到50ms溢出時(shí),就送給該位熄滅符,在下一次溢出時(shí),再送正常顯示的值,不斷交替,直到調(diào)整該位結(jié)束。此時(shí)送正常顯示值給該位,再進(jìn)入下一位調(diào)整閃爍程序。時(shí)間調(diào)整程序流程圖如圖4所示。

        4.3 陰歷陽(yáng)歷程序設(shè)計(jì)

        陰歷程序的實(shí)現(xiàn)是要靠陽(yáng)歷日期來(lái)推算的。推算方法是,根據(jù)陽(yáng)歷當(dāng)前日期在一年中的天數(shù)來(lái)計(jì)算陰歷日期。陽(yáng)歷一個(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é)和陽(yáng)歷元旦相差的天數(shù)也用一個(gè)字節(jié)表示??偣灿?字節(jié)就可以存儲(chǔ)一年中任何一天陽(yáng)歷和陰歷的對(duì)應(yīng)關(guān)系的有關(guān)數(shù)據(jù),例如2004年的陰歷和陽(yáng)歷對(duì)應(yīng)關(guān)系如圖5所示。

        2004年的春節(jié)和元旦差21天,這樣2004年的信息表示為:21,42H,52H,21H。其中表示12個(gè)月大小信息的字節(jié),第4位和第7位不用,第1個(gè)字節(jié)為十進(jìn)制,其它的都為十六進(jìn)制。按此方法,50年的陽(yáng)歷和陰歷對(duì)應(yīng)關(guān)系表總共使用200字節(jié)。圖6為計(jì)算陽(yáng)歷中任何一天在該年中為第幾天的程序流程圖。

        計(jì)算出陽(yáng)歷總天數(shù)后,就可以根據(jù)它來(lái)推算陰歷日期。推算方法是,先用總天數(shù)減去春節(jié)和元旦的日差,如果結(jié)果為1,則該天正好是春節(jié)(因?yàn)榇汗?jié)在元旦之后,在計(jì)算春節(jié)和元旦的日差時(shí),假設(shè)元旦為0天,春節(jié)為n天,則日差為n。而前面計(jì)算的陽(yáng)歷總天數(shù)是該天在該年中的第幾天,是以元旦為1而得到的,與計(jì)算春節(jié)和元旦日差的這樣方法相比,其數(shù)值少了1,所以要在原來(lái)本應(yīng)該以0作為該天就是春節(jié)的依據(jù)的基礎(chǔ)上加1,所以以1作為該天是春節(jié)的標(biāo)志);如果結(jié)果小于1,則陰歷應(yīng)該是陽(yáng)歷的前一年;如果結(jié)果大于1,說(shuō)明陽(yáng)歷和陰歷為同一年。再根據(jù)查表所得的該年的陰歷的閏年和大小月的信息,就可以推算出該天的陰歷日期了。圖5-4為由總天數(shù)推算出陰歷日期的程序流程圖。

        5 系統(tǒng)運(yùn)行結(jié)果及評(píng)估

        設(shè)計(jì)完成后,給系統(tǒng)上電,液晶顯示屏顯示結(jié)果如圖8所示。

        調(diào)節(jié)10K電位器R4可調(diào)整液晶顯示屏的亮度。調(diào)整到合適亮度后,按控制按鈕,光標(biāo)會(huì)從陽(yáng)歷年位開(kāi)始閃爍,進(jìn)入設(shè)定調(diào)整狀態(tài)。此時(shí)按加按鈕,當(dāng)前數(shù)字就可改變。按一次,數(shù)字加1;若長(zhǎng)按,則數(shù)字連續(xù)加。此時(shí),調(diào)整的位一直在閃爍,直到再次按光標(biāo)移動(dòng)控制位,光標(biāo)跳到下一位閃爍。調(diào)整順序依次為:陽(yáng)歷年、月、日,陰歷年、月、日,時(shí)、分、秒,鬧鈴時(shí)、分。當(dāng)全部參數(shù)調(diào)整完畢后,按退出按鈕,光標(biāo)停止閃爍,退出設(shè)定調(diào)整狀態(tài);當(dāng)再次按下此按鈕,鬧鈴顯示“開(kāi)”;當(dāng)?shù)谌伟聪麓随I,鬧鈴顯示“關(guān)”。若當(dāng)前月為閏月,則屏幕左下角會(huì)顯示“閏月”;若不是閏月,則無(wú)顯示。

        調(diào)試分為硬件調(diào)試和軟件調(diào)試。硬件調(diào)試主要是檢測(cè)硬件電路是否有短路、斷路、虛焊等。DS1302的硬件電路很簡(jiǎn)單,只通過(guò)3根線與單片機(jī)相連,很容易檢測(cè),主要是檢查其引腳,如晶振和電源等是否接好。另外可以通過(guò)軟件來(lái)調(diào)試硬件,如為了測(cè)試顯示電路連接是否正確,可以編寫(xiě)一個(gè)簡(jiǎn)單的顯示程序來(lái)測(cè)試它。接下來(lái)可進(jìn)行軟件調(diào)試,可以編寫(xiě)只含DS1302的計(jì)時(shí)和讀寫(xiě)程序、顯示程序,測(cè)試DS1302是否正常工作。最后調(diào)試時(shí)間調(diào)整程序和陰歷推算程序。

        6 結(jié)論

        本設(shè)計(jì)硬件電路較簡(jiǎn)單,所用器件較少,電路中使用了AT89S52單片機(jī)、DS1302時(shí)鐘芯片、24C02FLASH存儲(chǔ)器和HY-12864液晶顯示器等主要芯片,實(shí)現(xiàn)了預(yù)計(jì)功能。

        在對(duì)芯片的管腳功能和用法有充分的了解后,根據(jù)設(shè)計(jì)要求設(shè)計(jì)硬件電路,包括單片機(jī)控制電路、時(shí)鐘電路、存儲(chǔ)電路、鍵盤(pán)掃描電路、顯示電路和鬧鈴電路。然后通過(guò)軟件編程,實(shí)現(xiàn)了對(duì)年、月、日、時(shí)、分、秒、星期、閏年和陰歷的自動(dòng)調(diào)整,用按鍵進(jìn)行控制,用液晶模塊進(jìn)行顯示,并具有鬧鈴功能。

        電子萬(wàn)年歷可以正常顯示時(shí)間并進(jìn)行時(shí)間調(diào)整,完成了預(yù)期要實(shí)現(xiàn)的目標(biāo)??梢宰鳛橐院蠹矣没蛘呱逃玫漠a(chǎn)品,有很好的應(yīng)用前景。

        [參考文獻(xiàn)]

        [1]吳金戌,沈慶陽(yáng).8051單片機(jī)實(shí)踐與應(yīng)用.北京:清華大學(xué)出版社,2003.12,26-38.

        [2]何立民.單片機(jī)應(yīng)用文集.北京:北京航空航天大學(xué)出版社,1991,53-72.

        [3]公茂法.單片機(jī)人機(jī)接口實(shí)例集.北京:北京航空航天大學(xué)出版社,1998.2,32-59.

        [4]何立明.單片機(jī)高級(jí)教程——應(yīng)用與設(shè)計(jì).北京:北京航天航空大學(xué)出版社,2000.4,149-173.

        [5]李廣弟,朱月秀.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,2001.8,36-85.

        [6]樓然苗,李光飛.MCS-51系列單片機(jī)設(shè)計(jì)實(shí)例,北京:北京航天航空大學(xué)出版社,2001.3,75-83.

        日韩精品无码中文字幕电影| 亚洲肥婆一区二区三区| 亚洲av综合av一区| 天天噜日日噜狠狠噜免费| 亚洲精品成人网久久久久久| 无码中文字幕久久久久久| 久久精品国产亚洲综合av| 欧美不卡一区二区三区 | 国产成人精品无码片区在线观看| a级毛片免费观看网站| 91视频爱爱| 亚洲一区二区日韩精品| 久久99精品久久久久久琪琪| 国产精品无码一区二区三区免费| 国产国拍亚洲精品福利| 日本亚洲视频免费在线看| 97人妻人人做人碰人人爽| 乱中年女人伦av| av网页在线免费观看| 日本国产亚洲一区二区| 亚洲av之男人的天堂网站| 久久国产影视免费精品| 婷婷久久亚洲中文字幕| 青青草原亚洲| 日本a级特黄特黄刺激大片| 青青草视频原手机在线观看| 熟女中文字幕一区二区三区| 中国内射xxxx6981少妇| 午夜福利不卡无码视频| 日韩美腿丝袜三区四区| 日产学生妹在线观看| 无码电影在线观看一区二区三区| 少妇呻吟一区二区三区| 天天躁日日躁狠狠躁欧美老妇小说| 国农村精品国产自线拍| 视频一区二区三区中文字幕狠狠 | 亚洲国产人成自精在线尤物| 国产 精品 自在 线免费| 日产精品久久久久久久蜜臀| 中国老太老肥熟女视频| 国产乱码精品一区二区三区久久|