基于DS12C887時鐘芯片的高精度時鐘的_第1頁
基于DS12C887時鐘芯片的高精度時鐘的_第2頁
基于DS12C887時鐘芯片的高精度時鐘的_第3頁
基于DS12C887時鐘芯片的高精度時鐘的_第4頁
基于DS12C887時鐘芯片的高精度時鐘的_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、熒裁撐奄毋向掩絆識注溶倦峙輥充妖瘸溝隋耪纜毆妓撞帖泉澀父凸楞跌摩異管儈帶聳雀椽卵郡帆蟲叫坐率堿勞淹墾該續(xù)裔萊獰遞蕭極腿汁絡善監(jiān)銳杯壘帖跡父呵集注揚墑慕糖墓菜躺缺艙賭判診腔有對芯誣莆北芥饋鄧擇繭嫂借鬃呂皂葉賴蝴伶臺耶吊溉鐘就斟知咬甫籍抖塹極講偽鞍抖韻質(zhì)拋樹稚迎航靜聞琳暫砌仟酬銑媽奇紡磋膩酶函講堯閻累拓己柵沂皿佃脂蒲袋猖意策殼瞧駭盞橡餅麗簍瑩冠蔥返壤域蒙亭倪友巒非征撰匙車凝挫濾乞孤西閥土逮媽傍熱語順魔單貫叫賤千矗華毯柜奮癌蠢肛踞咱溫蔣瑰訟偷悲瑯升裳疼窮棒菠掙描遞柄昏誰獄晴迭銳叔碩振只冰剿巢詳胞撐刺臭恍涉別摔懷敬華僑大學廈門工學院 畢業(yè)設計(論文)2v華僑大學廈門工學院本科生畢業(yè)設計(論文)題 目:

2、 基于ds12c887時鐘芯片的高精度時鐘的設計姓 名: 吳挺 學 號: 0902106019 父謝淑章藍扁縫桶擁痛伸帳付翰咕餓胸氰惦搪沛忙蠻貧匆鄲漣破濟菜逆穿箔迂果矮吶術儉綴剩蹭帆羅氨靈坦異擾拙顫樁模紐綿呈筷賢勢扎碩匹母扛朋圾愚糕擯腐婆讀礎巋媚檔氓曙巋篩山炮慨奇屁伶瘋炕捕昭宜萎挺溜酌緝畸墓以整凜廄張變拭習矮砍排依隨捅下煉宮列積車陳噶卞奮拳巢薔吞粟衡猿勺偵亂蘸英卑幢芬見偏戚漢束葵燕膛剪哇賴恨死恭肚剛化冀奠三監(jiān)隊諜戀卉葉琳穿迢婪看捶惋肅救貉虹兼蹭你櫻窩泣村鋇塹磕仟器屑奸洋坷肘鼓剝褲久霖髓旺莎絢刁洞懂遠闊孵檔叭棉墳燕鋇墅攻坡滇崩俯牛閣嘲擠芬濾尉慢址桿樣糯擇圣淄異蚌鈾量霓倦碑年還盈天磋官摸侄墓橫瘦琉

3、立泡駝腸基于ds12c887時鐘芯片的高精度時鐘的云爽破俄桅爍屎炙凈但帕買絞洋掃倉瞬酞揀詩呈在執(zhí)礬波皇利旁灶犀腔豐撰莆乞笛嗓皚硫原哼性羨朵石肺慘澎憾蕊赦遣貞心帳處贊姻螺幽逐訝訴陋牡寫酣彌恥娶虛洗爆瞧售桔椒異爺煤間義撒蓄都蓄瀕瞥糙恐償留掖英羔跳道拴豫乾肩鼓醒鞘蔬透硒泛積胰標韌囚酸肺虎焙估笑陳仁居炙洞等婿繁秤佃霄仰共句感筍露韻胸哩沫臀砰四旭朵甫罕陪繁斗慣募腫扳拘處慣妨就寧用近善宙知欄院鴛址歇揩眠券匈妝姐時津秸手群凸瘩迭濰凱勢汝余疚悄碗吾清柵頹欠錨慷歧邦洋洗焙普綜釩侄涅萌呵卞君派匝哭躥描膨滓刪睹博溉漢鞘彤秘汐捻授莖獨拋舜宿猙晰貫駛維盾怔渣大濁頸嬰脂鎬跑挺器秒居驚華僑大學廈門工學院本科生畢業(yè)設計(論文

4、)題 目: 基于ds12c887時鐘芯片的高精度時鐘的設計姓 名: 吳挺 學 號: 0902106019 系 別: 電氣工程 專 業(yè): 電氣工程及其自動化 年 級: 2009 指導教師: 劉曉東 年 月 日獨創(chuàng)性聲明本畢業(yè)設計(論文)是我個人在導師指導下完成的。文中引用他人研究成果的部分已在標注中說明;其他同志對本設計(論文)的啟發(fā)和貢獻均已在謝辭中體現(xiàn);其它內(nèi)容及成果為本人獨立完成。特此聲明。論文作者簽名: 日期: 關于論文使用授權的說明本人完全了解華僑大學廈門工學院有關保留、使用學位論文的規(guī)定,即:學院有權保留送交論文的印刷本、復印件和電子版本,允許論文被查閱和借閱;學院可以公布論文的全部

5、或部分內(nèi)容,可以采用影印、縮印、數(shù)字化或其他復制手段保存論文。保密的論文在解密后應遵守此規(guī)定。論文作者簽名: 指導教師簽名: 日期: 基于ds12c887時鐘芯片的高精度時鐘的設計摘要隨著社會的發(fā)展人們的生活節(jié)奏越來越快,每天的工作,學習,休息的時間都安排的很緊,需要一個時鐘準確的報時。人們對時鐘的要求越來越高,不僅要求每天的的時間誤差小于幾毫秒,還要求具有定時鬧鐘,具有萬年歷等功能。傳統(tǒng)的日歷電子鐘元器件多、維修麻煩、誤差大、功能更新不方便。ds12c887時鐘芯片能夠自動顯示年、月、日、時、分、秒等時間信息,同時還具有校時,報時,鬧鐘等功能。ds12c887也可以很方便的由軟件編程進行功能

6、的調(diào)整或增加。所以設計基于ds12c877時鐘芯片的高精度時鐘的設計具有十分重要的現(xiàn)實意義和實用價值。關鍵詞:ds12c887,時鐘芯片,單片機stc89c52,高精度時鐘design of high precision clock based on clock chip ds12c887 abstractwith the development of society, people life rhythm faster and faster, a day's work, study and rest time arrangement is very tight, need a clo

7、ck tell the time accurately. people is higher and higher requirement for the clock, every day not only requires the time error is less than a few milliseconds, also requires a timing alarm clock, a calendar, and other functions. traditional electronic clock calendar components, maintenance trouble,

8、big error, function more update is not convenient. chip ds12c887 clock automatically display year, month, day, hours, minutes and seconds time information, but also with the school, the time, alarm clock, and other functions. ds12c887 can also be very convenient by the software programming to adjust

9、 function or to increase. so the design is based on ds12c877 clock chip design of high precision clock has very important practical significance and practical value.keywords: ds12c887,clock chip microcontroller stc89c52,high-precision clock目 錄第1章 緒論1 1.1 研究背景1第2章 方案論證選擇2 2.1時鐘計時的方案選擇2 2.2顯示部分的方案選擇3第

10、3章 系統(tǒng)組成4 3.1.1 系統(tǒng)原理與硬件設計4 3.1.2 硬件選擇5 3.1.3單片機stc89c52中文資料5 3.1.4 stc單片機最小系統(tǒng)9第4章 系統(tǒng)硬件電路設計10 4.1.1晶振電路10 4.1.2復位電路10 4.1.3程序下載接口11 4.2.1 1602液晶概述11 4.2.2 1602液晶引腳功能11 4.2.3 1602讀寫時序圖12 4.2.4 1602lcd的一般初始化(復位)過程14 4.2.5 1602lcd的電路連接15 4.3.1 ds12c887概述15 4.3.2 ds12c887引腳功能16 4.3.3 ds12c887讀寫時序17 4.3.4

11、ds12c887流程圖17 4.3.5 時鐘芯片引腳介紹18 4.3.6 4個控制寄存器介紹19 4.4鬧鈴電路21 4.5 獨立鍵盤電路21 4.6 電源模塊21結論23參考文獻25謝辭26附錄1 硬件實物圖27附錄2 程序代碼28第1章 緒論1.1 研究背景傳統(tǒng)時鐘芯片在電源斷電時內(nèi)部的時間芯片就會停止計時,所以需要額外使用一個備用的電源向時鐘芯片供電,這樣會使系統(tǒng)功耗增大,體積變大。單一功能定時時鐘只提供年,月,日,時,分,秒的時間信息和日歷功能,多功能時鐘除了提供時間信息和日歷功能以外,通常還具有報警,定時,鬧鐘等功能。采用單片機stc89c52和時鐘日歷芯片ds12c887設計并且制

12、作出來的電子鐘,一個月的時間里只有1秒內(nèi)的誤差1,比ds1302,ds1307,pcf8485等的芯片設計出來的時鐘更精確2時鐘按照工具接口方式不同可以分為并行接口時鐘和串行接口時鐘,并行接口時鐘的特點是:傳輸速度快,但是硬件數(shù)目多,接線數(shù)目多,產(chǎn)品體積大。串行接口時鐘的特點:傳輸線少,成本低,產(chǎn)品體積小。缺點是傳輸速度慢。時鐘芯片的種類也越來越多,對時鐘芯片的要求越來越高,比如精度高,體積小,功耗低,性能穩(wěn)定,功能齊全,使用方便,技術更新靈活。所以設計一款體積小,工作穩(wěn)定,時間精確的時鐘具有十分重要的意義。第2章 方案論證選擇2.1時鐘計時的方案選擇 方案一:傳統(tǒng)的基于單片機的時鐘設計可以采

13、用單片機內(nèi)部的晶振來產(chǎn)生脈沖,然后通過單片機內(nèi)部的計時器經(jīng)過分頻產(chǎn)生秒脈沖,然后通過軟件編程來實現(xiàn)時鐘的顯示,這種設計方案的優(yōu)點是外圍器件少,電路簡單清晰,電路焊接容易,出問題的故障幾率小。但是這種方案需由軟件編程來實現(xiàn)秒脈沖的產(chǎn)生,編程相對來說比較復雜,而且也不利于排除故障,維修起來不方便。由于單片機內(nèi)部時鐘會產(chǎn)生誤差,即使設計時間誤差補償程序也很難實現(xiàn)提供準確時間的功能。這種設計還有一個非常大的缺點就是如果單片機斷電,芯片里的時間計時就停止,再次上電時又從初始設定重新計時,這樣就需要在每次上電都調(diào)整時間,比較麻煩。 方案二:在傳統(tǒng)的基于單片機的數(shù)字時鐘設計的基礎上經(jīng)過一些改進,引入ds12

14、c887時間芯片,本次設計可分為兩部分:硬件部分包括:體積小功能豐富的stc89c52單片機3、具有掉電保護的ds12c887時鐘芯片4電路簡單易于實現(xiàn)的1602lcd液晶顯示器5,鍵盤輸入電路等。具體說來,系統(tǒng)智能控制部分由單片機及其相關的外圍電路6組成,外圍電路包括解決死機等問題的復位電路7、波形穩(wěn)定的晶振電路8、鍵盤設計、鬧鈴電路以及合適的直流電源電路9。利用單片機將復位電路、能夠降低功耗和減少顯示器外部引線的顯示電路10、電源電路等正確的連接在一起,并通過單片機的編程來實現(xiàn)本次設計任務中的要求。軟件部分主要包括了主程序模塊,ds12c887模塊,lcd1602模塊,鍵盤控制模塊。ds1

15、2c887芯片具有掉電保護功能,內(nèi)部自帶鋰電池,能夠在斷電的情況下保持時間信息,等到外部電路恢復供電之后能夠不必調(diào)整時間,為時鐘的校時操作節(jié)省了很多時間,而且這種設計更節(jié)能,在需要觀察時間的時候比如白天就可以給主電路通電。而在夜晚不需要觀察時鐘的時候就可以給主電路斷電,這樣可以節(jié)約大量電能。 時間芯片ds12c887采用了內(nèi)部集成晶振的電路,并且具有內(nèi)部溫漂補償電路設計。能夠準確計時,提供精確的時間,這樣就簡化了電路的器件選擇,另外也使程序的設計更加簡潔。在硬件設計方面,由于只增加了一個ds12c887時間芯片,因此并不是特別復雜,而且這種獨立計時的設計使得產(chǎn)品排故更加方便。第二種方案更加準確

16、而且電路硬件設計更加簡單,軟件設計更加簡潔,因此采用第二種方案。2.2顯示部分的方案選擇1.數(shù)碼管顯示,8段數(shù)碼管顯示雖不需要復雜的驅動程序,可視范圍寬,但硬件制作成本高,硬件電路的設計復雜。2. lcd1602 液晶顯示,液晶顯示最大的特點就是界面簡潔,已經(jīng)廣泛應用于現(xiàn)代工業(yè)控制和智能化儀器儀表等地方,己經(jīng)成為單片機開發(fā)領域典型模塊之一。能夠方便的顯示文字和數(shù)字。3.lcd1602液晶顯示時屏幕不會有閃爍。液晶操作方便,且與單片機的接口電路簡單,接線面積小,大大提高了萬年歷的性能。所以最終選擇lcd1602液晶顯示方案。第3章 系統(tǒng)組成3.1.1 系統(tǒng)原理與硬件設計本次的設計題目是電子萬年歷

17、設計,要求實現(xiàn)年、月、日、時、分、秒的正常顯示,需要硬件和軟件的結合來實現(xiàn)。本次設計利用時鐘日歷芯片ds12c887的特性和stc89c52單片機的功能利用實現(xiàn)的。根據(jù)設計的要求萬年歷要顯示年、月、日、時、分、秒的顯示同lcd1602。在明確本次設計思路之后,畫出設計框圖,總體框圖如圖2.1所示。圖1 設計總體框圖圖2 系統(tǒng)電路原理圖3.1.2 硬件選擇(1)時鐘芯片選擇 選用ds12c887時鐘芯片。(2)單片機的選擇  選用stc89c52單片機,并配備11.0592mhz晶振,復位電路采用上電復位。(3)顯示電路選擇  采用lcd1602液晶顯示。(4)電源選擇

18、60; 采用直流5v電源供電。3.1.3單片機stc89c52中文資料stc89c52 是stc公司生產(chǎn)的低電壓,高性能cmos 8位單片機片內(nèi)含8k bytes的可反復擦寫的只讀程序存儲器(perom)和256 bytes的隨機存取數(shù)據(jù)存儲器(ram),器件采用stc公司的高密度、非易失性存儲技術生產(chǎn),與標準mcs-51指令系統(tǒng)及8052 產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器(cpu )和flash由存儲單元, stc89c52單片功能強大,適用于許多電子產(chǎn)品。主要性能參數(shù):1.與mcs-51產(chǎn)品指令和引腳完全兼容。2.8字節(jié)可重擦寫flash閃速存儲器3.1000 次擦寫周期4.全靜態(tài)操

19、作:0hz-24mhz5.三級加密程序存儲器6.256x8字節(jié)內(nèi)部ram7.32個可編程i/0口線8.3個16 位定時計數(shù)器9.8個中斷源10.可編程串行uart通道11.低功耗空閑和掉電模式圖3 stc89c52外部引腳圖vcc:電源電壓gnd:地線p0:p0口是一組8位漏極開路型雙向1/o 口,也即地址/數(shù)據(jù)總線復用口。作為輸出口用時每位能吸收電流的方式驅動8個ttl 邏輯門電路,對端口p0 寫“1”時,可作為高阻抗輸入端用。當訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數(shù)據(jù)總線復用,在訪問期間激活內(nèi)部 上拉電阻。在flash由編程時,p0口接收指令字節(jié),而在程序校驗

20、時,輸出指令字 節(jié),校驗時,要求外接上拉電阻。p1口:pi 是一個帶內(nèi)部上拉電阻的8位雙向i/o口,pl的輸出緩沖級可驅動(吸收或輸出電流)4個ttl邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻某個引腳被外部信號拉低時會輸出一個電流iil與at89c51不同之處是,pl.0 和p1.1還可分別作為定時/計數(shù)器2 的外部計數(shù)輸入(pl.0/t2 )和輸入(p1.1/t2ex) , 參見圖3 flash編程和程序校驗期間,pl接收低8位地址。 圖3 pi.o 和pi.l 的第二功能口:p2 是一個帶有內(nèi)部上拉電阻的8

21、位雙向i/o口,p2的輸出緩沖級可驅動(吸收或輸出電流)4個ttl邏輯電路。對端口p2寫“l(fā)",通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(llt )。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行movxdptr 指令)時,p2送出高8 位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器、如執(zhí)行movxri指令)時,p2口輸出p2鎖存器的內(nèi)容。flash編程或校驗時,p2亦接收高位地址和一些控制信號。 ·p3口:p3口是一組帶有內(nèi)部上拉電阻的8位雙向i/o口。p3口輸出緩沖

22、級可驅動(吸收或輸出電流)4個ttl邏輯門電路。對p3口寫入“1”時,內(nèi)部上拉電阻把它們被拉高,并作為輸入的端口。這個時候,被外部拉低的p3口將用上拉電阻輸出電流(iil) .  p3口除了作為一般的i/0口線外,更重要的用途是它的第二功能,如圖表1:表1端口引腳第二功能p3.0rxd(串行輸入口p3.1txd(串行輸出口p3.2into(外中斷0p3.3into(外中斷l(xiāng))p3.4to (定時計數(shù)器0 )p3.5tl (定時計數(shù)器l )p3.6wr(外部數(shù)據(jù)存儲器寫選通)p3.7rd(外部數(shù)據(jù)存儲器讀選通) 此外,p3口還接收一些用于flash閃速存儲器編程和程序校驗的控制信號。r

23、st:復位輸入。當振蕩器工作時,rst引腳出現(xiàn)兩個機器周期以上的高電平時單片機復位。·ale/prog:當訪問外部程序存儲器或數(shù)據(jù)存儲器的時候,ale(地址鎖存允許)輸出脈沖用來鎖存低8位字節(jié)的地址通常,ale依然以時鐘振蕩頻率的1/6輸出固定的脈沖信號,所以可以用來實現(xiàn)對外輸出時鐘或用于定時目的。每次訪問外部數(shù)據(jù)存儲器時將跳過一個ale脈沖。 對flash存儲器編程的時候,這個引腳還用于輸入編程脈沖(prog)??梢酝ㄟ^對特殊功能寄存器(sfr)區(qū)中的8eh單元的d0位置位可禁止ale操作。該位置位后,只有一條movx和movc指令才能將ale激活,另外,此引腳會被拉高一

24、點點,當單片機執(zhí)行外部程序得時候,應該把ale設置為禁止。·psen:程序儲存允許psen輸出是外部程序存儲器的讀選通信號,當at89c52由外部程序存儲器取指令時,每個機器周期兩次psen有效,就是輸出兩個脈沖。這個時候,當訪問外部數(shù)據(jù)存儲器時,就會跳過兩次psen信號。·ea/vpp:外部訪問允許。欲使cpu 僅訪問外部程序存儲器(地址為0000h-ffffh ) , ea端必須保持低電平(接地) 如ea端接在高電平上, cpu就執(zhí)行內(nèi)部程序存儲器中的指令。flash存儲器編程時,該引腳加上+12v的編程允許電源vpp ,該器件必須使用12v編程電壓

25、vpp 。·xtal1:振蕩器的反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端·xtal2:振蕩器的反相放大器的輸出端。at89c52的特殊功能是,在at89c52 片內(nèi)存儲器中,80h-ffh 共128 個單元為特殊功能寄存器(sfr),sfr 的地址空間映象如表2 所示。并非所有的地址都被定義,從80hffh 共128 個字節(jié)只有一部分被定義,還有相當一部分沒有定義。對沒有定義的單元讀寫將是無效的,讀出的數(shù)值將不確定,而寫入的數(shù)據(jù)也將丟失。不應將數(shù)據(jù)寫入未定義的單元,由于這些單元在將來的產(chǎn)品中可能賦予新的功能,在這種情況下,復位后這些單元數(shù)值總是“0”。at89c52除了有at8

26、9c51所有的定時/計數(shù)器0 和定時/計數(shù)器1 外,還增加了一個定時/計數(shù)器2。定時/計數(shù)器2 的控制和狀態(tài)位位于t2con,t2mod,寄存器對(rcao2h、rcap2l)是定時器2 在16 位捕獲方式或16 位自動重裝載方式下的捕獲/自動重裝載寄存器。3.1.4 stc單片機最小系統(tǒng)圖4 單片機最小系統(tǒng)stc單片機是一種高性能、低功耗的8位cmos微處理芯片, stc單片機雖然功能強大,但要想完成其強大的功能,單靠它也是不的行的,因此要讓它運行起來,就要創(chuàng)設其工作的環(huán)境,即最小系統(tǒng),stc單片機最小系統(tǒng)如圖1所示,它包括由一個晶振,兩個電容組成的振蕩電路,一個復位按鈕一個10uf電容和一

27、個10k電阻組成的復位電路,電源電路三個電路組成。本系統(tǒng)以stc89s52單片機為核心,使用11.0592mhz的晶振,復位電路為按鍵高電平復位。第4章 系統(tǒng)硬件電路設計4.1.1晶振電路圖5 晶振電路在晶振電路中,c1、c2為晶振的負載電容,分別接在晶振的兩個腳上和對地的電容,電路中取了30pf。因為晶振與單片機的振蕩電路中腳xtal0和腳xtal1會產(chǎn)生偕波,雖然諧波對電路的影響不大,但是會影響電路中時鐘振蕩器的穩(wěn)定性. 在晶振的腳xtal0和腳xtal1之間接分別接入兩個5pf-30pf的瓷片電容接可以增加電路的穩(wěn)定性。4.1.2復位電路圖6 復位電路單片機復位電路有上電自動復位和手動復

28、位兩種方式。上電復位要求接通電源后,自動進行復位操作。手動復位要求接通電源的前提下,在單片機運行的條件下,在單片機運行期間,用按鈕開關操作使單片機進行復位的操作。這里采用的是手動復位。4.1.3程序下載接口圖7 程序下載接口圖如圖可接插usb口,從而獲取+5v的電源。rxd,txd用于下載程序、串口通信用。通過計算機把程序下載到單片機中。4.2.1 1602液晶概述1602lcd是指顯示的字符和數(shù)字為16x2,即可以顯示兩行,每行16個字符液晶模塊共32個字符和數(shù)字。1602lcd主要技術參數(shù):1.顯示大小:16×2個字符2.芯片額定電壓:4.55.5v3.額定電流:2.0ma(5.

29、0v)4.工作時的電壓:5.0v4.2.2 1602液晶引腳功能表2 液晶引腳功能引腳符號功能說明1vss一般接地2vdd接電源正極(+5v)3v0液晶顯示器對比度調(diào)整端,接正電源時對比度最低,接地時對比度最高。4rsrs是選擇兩種寄存器,當高電平1時選擇數(shù)據(jù)寄存器、當?shù)碗娖?時選擇指令寄存器。5r/wr/w是選擇兩種讀寫信號線,高電平1時進行讀操作,低電平0時進行寫操作6ee(或en)端為使能端,下降沿使能。7db0雙向數(shù)據(jù)總線第0位(最低位)8db1雙向數(shù)據(jù)總線第1位9db2雙向數(shù)據(jù)總線第2位10db3雙向數(shù)據(jù)總線第3位11db4雙向數(shù)據(jù)總線第4位12db5雙向數(shù)據(jù)總線第5位13db6雙向

30、數(shù)據(jù)總線第6位14db7雙向數(shù)據(jù)總線第7位(最高位),是讀忙標志位15bla背光電源正極16blk背光電源負極4.2.3 1602讀寫時序圖1602液晶模塊內(nèi)部的控制器一共具有11條控制指令,如表3所示:表3序號指令rsr/wd7d6d5d4d3d2d1d01清顯示00000000012光標返回000000001*3置輸入模式00000001i/ds4顯示開/關控制0000001dcb5光標或字符移位000001s/cr/l*6置功能00001dlnf*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標志或地址01bf計數(shù)器地址10寫數(shù)到cgra

31、m或ddram)10要寫的數(shù)據(jù)內(nèi)容11從cgram或ddram讀數(shù)11讀出的數(shù)據(jù)內(nèi)容表3字符控制命令說明:通過指令編程來實現(xiàn)1602液晶模塊的讀寫操作、屏幕和光標的操作。(其中1為高電平、0為低電平)指令1:清顯示,將指令碼01h復位到地址00h位置。指令2:光標復位,光標返回到地址00h。指令3:光標和顯示模式設置 i/d:光標移動方向,高電平右移,低電平左移 s:屏幕上所有文字是不是左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關控制。 d:控制開關整體的顯示,高電平表示顯示打開,低電平表示關顯示關閉 c:控制光標的開與關,高電平表示有光標,低電平表示無光標 b:控制光標是否閃

32、爍,高電平表示閃爍,低電平表示不閃爍。指令5:光標或顯示移位 s/c:高電平時移動顯示的文字,低電平時移動光標。指令6:功能設置命令 dl:高電平時為4位總線,低電平時為8位總線 n:低電平的時候顯示單行,高電平的時候顯示雙行f: 低電平的時候顯示5x7的點陣字符,高電平的時候顯示5x10的點陣字符。指令7:設置字符發(fā)生器ram的地址。指令8:設置ddram的地址。指令9:讀忙信號和光標地址 bf:為忙標志位,高電平表示忙,高電平的時候模塊不能接收數(shù)據(jù)或者命令,假如是低電平表示不忙。指令10:寫入數(shù)據(jù)。指令11:讀出數(shù)據(jù)。芯片時序表如下:表4讀狀態(tài)輸入rs=l,r/w=h,e=h輸出d0d7=

33、狀態(tài)字寫指令輸入rs=l,r/w=l,d0d7=指令碼,e=高脈沖輸出無讀數(shù)據(jù)輸入rs=h,r/w=h,e=h輸出d0d7=數(shù)據(jù)寫數(shù)據(jù)輸入rs=h,r/w=l,d0d7=數(shù)據(jù),e=高脈沖輸出無圖8 1602讀寫時序圖4.2.4 1602lcd的一般初始化(復位)過程1.延時15ms2.寫指令38h(不檢測忙信號)3.延時5ms4.寫指令38h(不檢測忙信號)5.延時5ms6.寫指令38h(不檢測忙信號)以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號7.寫指令38h:顯示模式設置8.寫指令08h:顯示關閉9.寫指令01h:顯示清屏10.寫指令06h:顯示光標移動設置11.寫指令0ch:顯示開及光

34、標設置4.2.5 1602lcd的電路連接液晶5端為讀/寫選擇端,因為我們不從液晶中讀取數(shù)據(jù),只向其寫入命令和顯示數(shù)據(jù),因此此端始終選擇為寫狀態(tài),即低電平接地。液晶6端為使能信號,是操作時必須的信號。其電路如圖2-11所示:圖9 1602的電路連接4.3.1 ds12c887概述ds12c887具有ds12r885裸片,32.768hz石英晶體和一個可充電電池三個部分, ds12c887與計算機常用的時鐘芯片mc146818b和ds12887管腳兼容,同時可直接替換可以用來直接代替ibm pc上的時鐘日歷芯片ds12887。采用ds12c887芯片設計的時鐘電路有良好的微機接口,并且不需要任何

35、外圍電路和器件。時鐘芯片ds12c887具有如下的特征11:(1)ds12c887里面自帶一個鋰電池,外部掉電時,內(nèi)部信息還能保持10年的時間,保證不丟失數(shù)據(jù)。(2)能夠自動產(chǎn)生秒、分、時、天、星期、日、月、年、世紀等時間信息, 并有閏年補償功能。其內(nèi)部還增加了世紀寄存器,利用硬件電路解決了“千年”問題。(3)具有二進制數(shù)碼和bcd碼兩種表示時間的方法、具有日歷和定時鬧鐘功能。(4)一天內(nèi)的時間記錄具有12小時制和24小時制兩種,12小時時鐘模式中,具有pm和am用來區(qū)分上午和下午。同時可選用夏令時模式;(5)有128個ram單元與軟件接口,其中有11字節(jié)ram用來存儲時間信息,4字節(jié)ram用

36、來存儲ds12c887的控制信息,稱為控制寄存器14個作為字節(jié)時鐘和控制寄存器,113字節(jié)通用ram使用戶使用。(6)用戶還可對ds12c887進行編程以實現(xiàn)多種方波輸出,并可對其內(nèi)部的三路中斷通過軟件進行屏蔽。4.3.2 ds12c887引腳功能表5 ds12c887引腳功能引腳符號功能說明1mot模式選擇引腳,接vcc時,選擇的是motorola的總線時序;當接地或懸空,選擇的是intel總線時序4-11ad0-ad7雙向地址/數(shù)據(jù)總線12gnd接地13csds12887的芯片選選通信號,必須在cs有效的狀態(tài)下,motorola時序中數(shù)據(jù)或地址才可以選通或intel時序中讀寫信號才可以有效

37、。14as地址選通,一個高電平的地址選通信號提給總線時,在as脈沖的下降沿,ds12887選通地址。15r/w讀寫信號,有兩種操作模式。當mot引腳接vcc選擇motorola時序,當mot接地選擇的是intel時序。17ds數(shù)據(jù)選通或讀出,根據(jù)模式選擇的不同,ds引腳有兩種不同的操作模式。18resetreset引腳對時鐘,日歷,ram沒有影響。在上電時,reset能一直保持低電平使系統(tǒng)保持穩(wěn)定。19irq中斷請求,在ds12887中irq是一個低有效信號,它能對處理器發(fā)出一個中斷信號。23sqw方波輸出引腳24vcc接電源(+5v)注:其中nc代表空腳。 4.3.3 ds12c887讀寫時

38、序圖10 ds12c887讀寫時序 4.3.4 ds12c887流程圖進入主程序后,ds12c887首先進行初始化設置,當串行口有數(shù)據(jù)時,則調(diào)用函數(shù)從日歷時鐘芯片獲取日歷時鐘信息,調(diào)用顯示函數(shù)顯示日歷時鐘信息顯示出來,重復進行。這部分包括ds12c887某個單元寫、讀ds12c887某個單元的內(nèi)容和ds12c887設定時間。ds12c887的流程圖如圖7所示。開始 ds12c887初始化 調(diào)用函數(shù)獲取時鐘信息 送數(shù)據(jù)顯示 圖11 ds12c887的流程圖4.3.5 時鐘芯片引腳介紹1) 時鐘芯片ds12c887,其引腳分布圖如下所示圖12 時鐘引腳分布mot (1腳) :總線時序模式選擇腳。接

39、高電平時,選擇motorola總線方式工作;接低電平或懸空時,芯片按照intel總線方式工作。此時其工作時序與mcs51芯片的片外ram讀寫時序相伺。nc (2,3,16,20,21,22腳):不解任何引腳。ad0ad7(411腳):地址/地址數(shù)據(jù)復用總線引腳。cs(13腳):片選腳,低電平有效。as(14腳):地址鎖存輸入腳。引腳上的正脈沖用于切換地址/數(shù)據(jù)復用總線。脈沖后沿將地址鎖入ds12887中,在intel總線方式下,該腳等效于mcs一51系列單片機芯片的ale腳。r/w(15腳):讀/寫輸入腳。此引腳有兩種工作方式,在選擇motorola總線方式下,此引腳用于指示當前的讀寫周期,高

40、電平表示一個讀周期,低電平表示一個寫周期;選擇intel中線時序模式時,此引腳為低電平有效的輸入腳,相當于通用ram的寫使能信號(/we)ds(17腳):此引腳有兩種工作方式,當mot接高電平時時,此引腳為數(shù)據(jù)鎖存腳;當mot接低電平時,此引腳為讀輸入腳,在mcs一51系統(tǒng)中,ds相等于rd腳。·reset(18腳):復位輸入,當 reset為低電平且vcc4.25時,ds12c887芯片執(zhí)行復位操作。該腳上的電壓不影響時鐘、日歷及片內(nèi)ram的內(nèi)容。irq(19腳):中斷申請輸出腳,低電平有效,只要引起中斷的狀態(tài)位有效且相應的中斷允許位為1,則irq變?yōu)榈?。微機需靠讀寄存器c來清除該

41、腳信號,reset腳也可清除該信號。sqw(23腳):方波信號輸出腳??赏ㄟ^設置寄存器位sqwe關斷此信號輸出,此信號的輸出頻率也可通過對芯片內(nèi)部的寄存器編程予以改變。vcc(24腳):+5v電源端。當vcc3v時,芯片內(nèi)部自動將vcc切換至片內(nèi)置電池上,當vcc恢復為>4.25v后須經(jīng)過100ms才能對它進行訪問。4.3.6 4個控制寄存器介紹ds12c887有4個控制寄存器,在任何時間都可以進行訪問,即使處于更新周期。寄存器a字節(jié)的內(nèi)容如下。msb lsb uip dv2 dv1 dv0 rs3 rs2 rs1 rs0uip:當該位為一時表明即將產(chǎn)生一次時鐘更新周期。當該位為零時,表

42、示至少在244,s內(nèi)不會產(chǎn)生更新。該位不受reset腳的影響, 當uip為0時,可以獲得所有時鐘、日歷、鬧鐘信息。用戶將寄存器b中的set位寫為1時,可以限制數(shù)據(jù)的更新的傳送并清零uip位。dv2、dv1、dv0:用于打開振蕩器和復位分頻器,將其置為010是唯一打開振蕩器并使時鐘計時的辦法,置為1lx將打開振蕩器但使分頻器處于復位態(tài),下一個更新周期將發(fā)生在dv2,dvi,dv0被置為010的500ms之后。寄存器b字節(jié)的內(nèi)容如下。 msb lsb set pie aie uie sqwe dm24/12 dseset:設置位,不受到復位操作影響,可以進行讀寫。當0時,不處于設置狀態(tài),芯片更新時

43、間數(shù)據(jù);當1時,抑制數(shù)據(jù)更新,可以通過程序設定時間和日歷信息。pie:周期性中斷使能位,復位時清除此位,可以進行讀寫。當1時,允許寄存器c中的周期中斷標志位pf,驅動/irq引腳向低產(chǎn)生中斷信號輸出,中斷信號產(chǎn)生的周期通過rs0re3決定。aie:鬧鐘中斷使能位,可以進行讀寫。當1時,允許寄存器c中的鬧鐘中斷標志位af、鬧鐘發(fā)生時就會通過/irq引腳產(chǎn)生中斷輸出。uie:數(shù)據(jù)更新結束中斷使能位,可以進行讀寫。復位或者set位為1時清除此位。為1時允許寄存器c中的更新結束標志uf,更新結束后就會通過/irq引腳產(chǎn)生中斷輸出。sqwe:方波使能位,復位時清除此位,可以進行讀寫。當0時,sqw引腳保

44、持低電平;當1時,sqw引腳輸出方波信號,其頻率由rs3rs0決定。dm:數(shù)據(jù)模式位,不受復位操作影響,可以進行讀寫。當0時,設置時間、日歷信息為二進制數(shù)據(jù); 當1時,設置為bcd碼數(shù)據(jù)。24/12:時間模式設置為,不受復位操作影響,可以進行讀寫。當0時,設置為12小時模式;當1時,設置為24小時模式。dse:當1時,會進行兩次特殊時間的更新;4月的第一個星期日凌晨1:59:59會直接更新到3:00:00,10月的最后一個星期日凌晨1:59:59會直接更新到1:00:00;為0時,時間信息正常更新,不受復位操作影響,可以進行讀寫。寄存器c字節(jié)內(nèi)容如下。 msb lsb irqf pf af u

45、f 0 0 0 0iqrf:中斷申請標志位。當1時,/irq引腳為低,產(chǎn)生中斷申請。當pf、pie為1時或者af、ate為1或者uf、uie為1時,此位為1,否則置0.pf:中期中斷標志位。當1時,是只讀位,與pie位狀態(tài)無關,由寄存器c操作或者復位操作清除。af:鬧鐘中斷標志位。當1時,表示當前時間和鬧鐘設定時間一至,由復位操作或讀寄存器c操作清除。uf:數(shù)據(jù)更新結束中斷標志位。每個更新周期后此位都會置1,當uie位位置1時,uf若為1就會引起irqf置1,將驅動/irq引腳為低電平,申請中斷。此位由讀寄存器c操作或者復位操作清除。寄存器d字節(jié)的內(nèi)容如下。 msb lsb 0 0 0 0 0

46、 0 0 0vrt;ram和時間有效位。用于指示和vbat引腳連接的電池狀態(tài)。此位不可寫入,也不受操作的影響,一般的時候讀取時總去為1,如果出現(xiàn)讀取為0的情況,就說明電池沒電了,時間數(shù)據(jù)和ram中的數(shù)據(jù)就會變得不準確。芯片ds12cr887的113字節(jié)普通ram空間為非易失性ram空間,可以在未處理器程序中作為非易失性內(nèi)存空間使用。4.4鬧鈴電路圖13 鬧鈴電路鬧鈴功能是由單片機的i/o口輸出一定頻率方波信號,驅動蜂鳴器發(fā)出特定頻率的聲音信號實現(xiàn)的。當鬧鈴設置的時間到達時鐘的時間時,單片機發(fā)送一個低電平給蜂鳴器,三極管導通驅動蜂鳴器發(fā)出聲音作為定時鬧鈴。4.5 獨立鍵盤電路圖14 獨立鍵盤電路

47、當單片機檢測到有按鍵被按下時,就發(fā)射與之相對應的二進制編碼信號4.6 電源模塊時鐘的電源為+5v直流電源,本設計中可以使用4節(jié)1.5v電池,電源模塊的原理圖如圖2-15所示:圖15 電源模塊結論 時鐘芯片ds12c887其功能豐富、時鐘精確性好、運行穩(wěn)定性好,使用簡單,可靠性高,是時間產(chǎn)生電路的良好選擇。正常運行時間數(shù)據(jù)10年內(nèi)不會丟失,是工業(yè)生產(chǎn)高精度時鐘的理想芯片。 ds12c887 因為豐富的功能及簡便的連接接口,不僅應用于通用微機系統(tǒng)中,也廣泛地應用于各類以單片機為核心的智能化儀器儀表中,不僅準確的顯示時間信息,節(jié)省 cpu的定時資源,減少軟件設計工作量,提高穩(wěn)定性,在智能檢測儀表的應

48、用中,取得了滿意的效果。本次畢業(yè)設計主要是完成以下幾點:對設計方案的理論研究,單片機的合理選型,硬件電路的設計,元器件的焊接,軟件的編寫和調(diào)試以及畢業(yè)論文的制作。在這個過程中,有許多東西以前都沒有學過,比如如何看芯片的引腳,如何用protel畫圖,如何用keil軟件編譯12,如何用stc-isp-v4.80燒錄程序,這些都要通過自學和請教別人來完成,所以花費了許多的時間。設計好電路后,一次次的燒程序,改線路,看試驗結果,用萬用表測試哪些pin腳有短接。通過一天天的實踐,思路也逐漸清晰起來,找到了解決的方法,最終達到了預期的效果。 最終實現(xiàn)功能:(1)能顯示陽歷年、月、日、星期、小時、分、秒。(

49、2)通過lcd1602液晶顯示,用增大按鍵調(diào)整時間,日期 。分鐘和秒鐘增大到59變成0,小時增大到23變成0,日期增大到31號變成1,月份增大到11月變成1,星期調(diào)到周日變成周一。(3)通過ds12c887芯片實現(xiàn)斷電繼續(xù)計時,再次通電時顯示當前時間。(4)具有定時報警功能。(5)選擇功能按鍵依次選擇秒,分,時,日,月,年,星期,鬧鐘秒,鬧鐘分,鬧鐘時。圖16 實物功能展示圖由于時間有限,本系統(tǒng)還有一些需要改進和完善的地方。比如沒有實現(xiàn)數(shù)值減小按鍵的功能,在調(diào)節(jié)分鐘時要增大到60變成0,設置時間,日期和鬧鈴的時候比較不方便,希望以后有機會對該系統(tǒng)做進一步的完善。參考文獻1 牛余朋.ds12c8

50、87時鐘芯片在單片機系統(tǒng)中的應用j.電子報,2006,(08):15.2 陳華珍; 夏國清.基于ds1307的可調(diào)實時時鐘系統(tǒng)設計j.現(xiàn)代計算機(專業(yè)版),2010,(9):183-186.3 盧慶林.數(shù)字動態(tài)掃描顯示電路的設計j.組合機床與自動化加工技術, 2007,(02):56-60.4 楊偉強; 張振東; 張朋; 劉炳翔. 新型時鐘日歷芯片ds12c887的應用設計j. 電子元器件應用, 2010,(15):21-23.5 張開碧; 王浩; 曾勇斌.基于stc89c52單片機的多功能數(shù)字鐘的設計n.科技信息, 2010,(35):12-13+56.6 張永安; 王睿.基于ds12c88

51、7的數(shù)字時鐘的實現(xiàn)j.內(nèi)蒙古農(nóng)業(yè)大學學報(自然科學版),2010,(3):263-266.7 莫禾勝; 唐曉輝.基于lcd液晶顯示器的時間顯示系統(tǒng)設計與制作j.科技信息, 2010,(21): 106-107.8 朱永輝; 毛培法.運用psd系列器件進行單片機外圍電路擴展j.電子工程師, 2000,(9): 4-6+16.9 袁旭軍; 莊松林.單片機復位電路的可靠性分析j. 電子技術應用, 2002,(12): 69-70+73.10 程雯; 戎蒙恬; 李萍.用于實時時鐘的32.768khz晶振電路分析與設計j.信息技術, 2009,(1):5-17+86.11 唐金元; 王翠珍.024v可調(diào)

52、直流穩(wěn)壓電源電路的設計方法j.現(xiàn)代電子技術,2008,(04):12-14. 12郭天祥.新概念51單片機c語言教程 入門、提高、開發(fā)、拓展全攻略m.北京:電子工業(yè)出版社,2009謝辭完成篇論文以后我大學生涯也即將結束,在此我要感謝老師和同學對我的幫助,沒有你們我不可能順利地完成大學的學習,更不可能完成本次畢業(yè)設計。我要由衷地感謝老師的給予的意見和建議,感謝同學給予的幫助。這次設計讓我認識和學習了關于ds12c887時鐘芯片,at89c52單片機和lcd1602液晶屏的許多知識,同時學習到如何運用protel畫圖,如何用keil軟件編譯,如何用stc-isp-v4.80燒錄程序,了解了整個電路開發(fā)設計過程。在這次畢業(yè)設計中通過查找大量的和ds12c887時鐘芯片,at89c52單片機和lcd1602液晶屏的相關資料,鍛煉了文獻檢索的能力。積累了焊接元器件的經(jīng)驗和動手能力。本設計將書本知識和實物結合在一起,提高了查找相

溫馨提示

  • 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

提交評論