版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘要</b></p><p> 在現(xiàn)如今快節(jié)奏的生活中,人們對(duì)于時(shí)間的要求越來(lái)越苛刻,很多時(shí)候都需要對(duì)時(shí)間進(jìn)行規(guī)劃,然后到時(shí)間點(diǎn)就要有時(shí)間提醒,這就必須用到時(shí)鐘提醒裝置,亦可稱(chēng)為打鈴裝置。打鈴裝置有很多種,比如手機(jī)的打鈴系統(tǒng),鬧鐘的機(jī)械打鈴裝置,廣播打鈴系統(tǒng)等等,但是日常生活中見(jiàn)得最多的還是校園的自動(dòng)打鈴系統(tǒng)。在學(xué)校生活中,每天上下課都離不開(kāi)打鈴系統(tǒng)的使用。打
2、鈴器可以為上下課的學(xué)生和老師們提供時(shí)間提醒,有利于師生對(duì)上課和學(xué)習(xí)的合理安排,同時(shí),也可作為一個(gè)提醒學(xué)生們作息時(shí)間的時(shí)間表,讓老師和學(xué)生都能有一個(gè)規(guī)律和科學(xué)的時(shí)間安排。因此,打鈴系統(tǒng)的核心部分也是時(shí)鐘部分,為系統(tǒng)提供時(shí)間基準(zhǔn)。</p><p> 本設(shè)計(jì)主要是針對(duì)適用于校園打鈴系統(tǒng)要求的,其介紹了一種基于單片機(jī)的自動(dòng)打鈴系統(tǒng)的設(shè)計(jì)方法,系統(tǒng)以AT89S51單片機(jī)為控制器,以DS1307時(shí)鐘芯片為系統(tǒng)提供時(shí)間,并在
3、液晶顯示器上顯示,通過(guò)按鍵可以設(shè)定定時(shí)打鈴時(shí)間和打鈴的時(shí)間間隔。系統(tǒng)軟件設(shè)計(jì)采用C語(yǔ)言來(lái)完成,C語(yǔ)言語(yǔ)法簡(jiǎn)潔,使用方便,用于完成軟件設(shè)計(jì)非常方便。本文提出的設(shè)計(jì)方法電路簡(jiǎn)單、成本低廉、實(shí)用性強(qiáng)。</p><p> 關(guān)鍵字:打鈴器、AT89S51單片機(jī)、DS1307、液晶顯示器</p><p><b> Abstract</b></p><p&g
4、t; Now fast-paced life, the time more and more demanding, often need time to plan and then to the point in time there should be reminded, which must be used to clock reminder can also be calledrang the bell device. Rang
5、 the bell device are many, such as the phone rang the bell system, mechanical bell device of the alarm clock, radio bell systems, etc., but in daily life appear or campus automatic bell system. In school life, the last c
6、lass of the day are inseparable from the bell system. The bell c</p><p> This design is mainly for the applicable requirements of the campus bell system, introduced a microcontroller-based automatic bell sy
7、stem design method, the system controller is AT89S51 SCM , the DS1307 clock chip provide the system with time, and the LCD displayed on the monitor button can set the time interval of the timer rang the bell time and ran
8、g the bell. System software design using C language, C language syntax is simple, easy to use, very convenient to be used to complete the software </p><p> Key words: Rang the bell AT89S51 SCM the DS1307
9、 LCD monitors</p><p><b> 目錄</b></p><p><b> 摘要I</b></p><p> AbstractII</p><p><b> 1 緒論3</b></p><p> 1.1 選題目的及意義
10、3</p><p> 1.2 技術(shù)發(fā)展概況3</p><p> 1.3 論文內(nèi)容與結(jié)構(gòu)3</p><p><b> 2 方案設(shè)計(jì)3</b></p><p> 2.1 方案比較與選擇3</p><p> 2.1.1 系統(tǒng)方案選擇3</p><p> 2
11、.1.2 時(shí)鐘芯片選擇3</p><p> 2.1.3 顯示器件選擇3</p><p> 2.2 設(shè)計(jì)方案3</p><p> 3 系統(tǒng)硬件設(shè)計(jì)3</p><p> 3.1 硬件電路圖3</p><p> 3.2 時(shí)鐘電路3</p><p> 3.2.1 DS1307簡(jiǎn)介
12、3</p><p> 3.2.2 時(shí)鐘電路設(shè)計(jì)3</p><p> 3.3 按鍵電路3</p><p> 3.4 單片機(jī)電路3</p><p> 3.4.1 單片機(jī)簡(jiǎn)介3</p><p> 3.4.2 單片機(jī)最小系統(tǒng)電路3</p><p> 3.5 顯示電路3</
13、p><p> 3.6 打鈴電路3</p><p> 4 系統(tǒng)軟件設(shè)計(jì)3</p><p> 4.1 軟件設(shè)計(jì)流程圖3</p><p> 4.2 讀取DS1307時(shí)間程序設(shè)計(jì)3</p><p> 4.3 顯示程序設(shè)計(jì)3</p><p> 4.4 按鍵設(shè)定程序設(shè)計(jì)3</p&g
14、t;<p><b> 5 系統(tǒng)調(diào)試3</b></p><p> 5.1 元件清單3</p><p> 5.2 調(diào)試過(guò)程3</p><p><b> 6 總結(jié)與展望3</b></p><p><b> 致謝3</b></p><
15、;p><b> 參考文獻(xiàn)3</b></p><p><b> 附錄3</b></p><p><b> 附錄一:電路圖3</b></p><p><b> 附錄二:源程序3</b></p><p><b> 1 緒論<
16、;/b></p><p> 1.1 選題目的及意義</p><p> 隨著現(xiàn)代科技的發(fā)展,管理水平的完善,具有自動(dòng)提示功能的打鈴器能夠?yàn)槠髽I(yè)節(jié)省人力資源,減少開(kāi)支,對(duì)做到一體化管理具有很大的幫助。而且自動(dòng)打鈴系統(tǒng)不斷影響著我們的學(xué)習(xí)和生活,它已被廣泛應(yīng)用于各個(gè)學(xué)校中,它能夠?qū)崿F(xiàn)學(xué)校的辦公自動(dòng)化,便于學(xué)校的管理。用單片機(jī)控制的自動(dòng)打鈴器,充分發(fā)揮了體積小,價(jià)格便宜,功耗低可靠性好等
17、特點(diǎn),而且具有可改性,用于學(xué)校作息,方便了廣大師生。目前自動(dòng)打鈴系統(tǒng)的研究和使用已經(jīng)非常普及,之所以選這個(gè)課題就是看在他的成熟性和普遍性。</p><p> 在學(xué)校生活中,每天上下課都離不開(kāi)打鈴器的使用。打鈴器可以為上下課的學(xué)生和老師們提供時(shí)間提醒,同時(shí),也可作為一個(gè)提醒學(xué)生們作息時(shí)間的時(shí)間表,讓大家有一個(gè)時(shí)間意識(shí),形成規(guī)律的生物鐘,對(duì)自身的健康也有很大的好處的。對(duì)于那些上課精力過(guò)于集中、知識(shí)面拓展比較廣的老師
18、的拖堂現(xiàn)象也給了一個(gè)下課時(shí)間提醒,以免耽誤學(xué)生們下一節(jié)課的上課時(shí)間。</p><p> 打鈴器作為一個(gè)提醒人們時(shí)間的設(shè)備,自然離不開(kāi)提供時(shí)間的系統(tǒng),最原始的打鈴器是人工根據(jù)時(shí)間通過(guò)敲鐘來(lái)提醒,隨著技術(shù)的發(fā)展,開(kāi)始有了機(jī)械時(shí)打鈴器。隨著二十世紀(jì)電子技術(shù)的發(fā)展和二十一世紀(jì)半導(dǎo)體技術(shù)和集成電路的發(fā)展,電子技術(shù)開(kāi)始滲入到各行各業(yè),以電子表為主要基礎(chǔ)提供時(shí)間基準(zhǔn)的打鈴器自然也是更新?lián)Q代的更快,現(xiàn)在各種功能更多、使用更先進(jìn)
19、的打鈴器層出不窮,有的還可以以音樂(lè)響鈴代替?zhèn)鹘y(tǒng)的“呤呤”聲,打鈴器更多的向著智能型轉(zhuǎn)變。設(shè)備的智能化離不開(kāi)單片機(jī)的使用。單片機(jī)簡(jiǎn)單的說(shuō)就是一款微型的計(jì)算機(jī),包含中央處理器CUP、隨機(jī)存取存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、I/O口、串行口等部分,可以作為一個(gè)系統(tǒng)的主控制器,將其他部分電路整合到一起組成一個(gè)系統(tǒng),為控制提供智能化。</p><p> 基于以上原因,本課題設(shè)計(jì)了一款基于單片機(jī)的自動(dòng)打鈴系統(tǒng),使用簡(jiǎn)單方便
20、、功能齊全。本次的設(shè)計(jì)重點(diǎn)在于實(shí)現(xiàn)自動(dòng)打鈴系統(tǒng)的基本功能之外,爭(zhēng)取設(shè)計(jì)出亮點(diǎn),出新意,對(duì)我本身是個(gè)不小的挑戰(zhàn),因此對(duì)這個(gè)課題的研究不管是對(duì)于我本身還是對(duì)此項(xiàng)目在科技方面的發(fā)展都是有很重要的意義</p><p> 1.2 技術(shù)發(fā)展概況</p><p> 日晷是最早報(bào)“標(biāo)準(zhǔn)時(shí)”的儀器,它由晷盤(pán)和晷針組成。晷盤(pán)是一個(gè)有刻度的盤(pán),其中央裝有一根與盤(pán)面垂直的晷針,針影隨太陽(yáng)運(yùn)轉(zhuǎn)而移動(dòng)在盤(pán)上的位置
21、。在公元前1400年,出現(xiàn)的漏壺(沙漏或者滴漏)是第一個(gè)擺脫天文現(xiàn)象的計(jì)時(shí)儀器。它是根據(jù)流沙從一個(gè)容器滴漏到另一個(gè)容器的數(shù)量來(lái)計(jì)量時(shí)間的。1400年,第一批機(jī)械鐘開(kāi)始在歐洲流行,其始祖由意大利人喬瓦尼·唐迪于1364年制成,他首次在機(jī)械鐘里引入了輪式鐘擺。1511年,荷蘭人彼得·亨萊茵制成了第一塊懷表,但它只有時(shí)針而沒(méi)有分針和秒針,懷表和鐘的結(jié)構(gòu)其實(shí)是完全一樣的,所不同的是它利用螺旋彈簧制成的發(fā)條驅(qū)動(dòng),從而擺脫了傳統(tǒng)
22、的鐘擺,它靠小巧的“體形”,輕松進(jìn)入人們的口袋。1582年前后,意大利的伽利略發(fā)明了重力擺,1657年,荷蘭的惠更斯把重力擺引入機(jī)械鐘,創(chuàng)立的擺鐘。1728~1759年,英國(guó)的哈里森制造出高精度的標(biāo)準(zhǔn)航海鐘。1775~1780年,英國(guó)的阿諾德創(chuàng)造出精密表用擒縱機(jī)構(gòu)。18~19世紀(jì),鐘表制造業(yè)已逐步實(shí)現(xiàn)工業(yè)化生產(chǎn),并達(dá)到相當(dāng)高的水平。20世紀(jì),隨著電子工業(yè)的飛速發(fā)展,電池驅(qū)動(dòng)鐘、交流電鐘、電機(jī)械表、指針式石英電子鐘表、數(shù)字式石英電子鐘表相
23、繼問(wèn)</p><p> 在我國(guó),東漢元初四年張衡發(fā)明了世界第一架“水運(yùn)渾象”,此后唐高僧一行等人又在此基礎(chǔ)上借鑒改進(jìn)發(fā)明了“水運(yùn)渾天儀”、“水運(yùn)儀象臺(tái)”。至元明之時(shí),計(jì)時(shí)器擺脫了天文儀器的結(jié)構(gòu)形式,得到了突破性的新發(fā)展。機(jī)械鐘表進(jìn)入中國(guó)最早是在公元1601年,意大利傳教士把鳴鐘作為貢品獻(xiàn)給當(dāng)時(shí)的皇帝,揭開(kāi)了中國(guó)人使用機(jī)械時(shí)鐘的序幕。清朝康熙年間,中國(guó)成為世界上最大的鐘表進(jìn)口國(guó)。19世紀(jì)末期,我國(guó)造鐘工藝達(dá)到了一
24、個(gè)嶄新的水平,1875年由上?!懊览A”作坊制造的南京鐘以造型古樸典雅、民族風(fēng)格鮮明和報(bào)時(shí)清脆、走時(shí)準(zhǔn)確而聞名于海內(nèi)外。我國(guó)近代機(jī)械制鐘工業(yè)始于1915年,民族實(shí)業(yè)家李東山開(kāi)辦了中國(guó)時(shí)鐘制造業(yè)的第一家鐘廠,并在1918年自制成功第一批座掛鐘投放市場(chǎng)。新中國(guó)成立后,1955年初在天津成功制造裝配出2只鉆成品手表,從那時(shí)起,結(jié)束了中國(guó)人只能修表、不能制表的歷史。時(shí)至今日,人們已經(jīng)可以通過(guò)測(cè)量原子的周期來(lái)計(jì)時(shí)了。</p><
25、;p> 隨著電子行業(yè)技術(shù)的發(fā)展和電子元器件工藝的精進(jìn),電子技術(shù)開(kāi)始應(yīng)用于各行各業(yè),應(yīng)用電子元器件設(shè)計(jì)的智能電子時(shí)鐘也開(kāi)始流行起來(lái),人們利用電子元器件和微控制器,根據(jù)使用要求可以設(shè)計(jì)出各種功能齊全、使用方便的多功能時(shí)鐘,使其應(yīng)用范圍更廣,實(shí)用價(jià)值更高。80C51同樣如此,從開(kāi)始的無(wú)人問(wèn)津到現(xiàn)在的隨處可見(jiàn),紅綠燈,記分牌,電子秒表,遙控器,電飯煲,電視等只要是電子產(chǎn)品,都會(huì)和芯片有關(guān),其實(shí)芯片并不是什么神秘的高科技,它只是里面裝了一
26、些編好的程序而己.而自動(dòng)打鈴系統(tǒng)是用匯編語(yǔ)言來(lái)編程的一個(gè)系統(tǒng),它能夠讓一個(gè)學(xué)?;蚱髽I(yè)集團(tuán)實(shí)現(xiàn)打鈴自動(dòng)化,總之,一個(gè)需要時(shí)間系統(tǒng)的機(jī)構(gòu)實(shí)現(xiàn)自動(dòng)提醒功能。當(dāng)今時(shí)代是一個(gè)新技術(shù)層出不窮的時(shí)代,在電子領(lǐng)域尤其是自動(dòng)化智能控制領(lǐng)域,傳統(tǒng)的分立元件或數(shù)字邏輯電路構(gòu)成的控制系統(tǒng),正以前所未有的速度被單片機(jī)智能控制系統(tǒng)所取代。單片機(jī)具有體積小、功能強(qiáng)、成本低、應(yīng)用面廣等優(yōu)點(diǎn),可以說(shuō),智能控制與自動(dòng)控制的核心就是單片機(jī)。目前,一個(gè)學(xué)習(xí)與應(yīng)用單片機(jī)的高潮正
27、在工廠、學(xué)校及企事業(yè)單位大規(guī)模地興起。對(duì)于本課題的研究與發(fā)展來(lái)說(shuō),不管是國(guó)內(nèi)或者國(guó)外都已經(jīng)發(fā)展的很成熟了,畢竟相對(duì)于單片機(jī)的飛速發(fā)展來(lái)說(shuō)</p><p> 1.3 論文內(nèi)容與結(jié)構(gòu)</p><p> 本設(shè)計(jì)是以AT89S51單片機(jī)為核心的一款自動(dòng)打鈴系統(tǒng),以時(shí)鐘芯片來(lái)實(shí)現(xiàn)計(jì)時(shí)功能,然后單片機(jī)負(fù)責(zé)將時(shí)間送入顯示電路顯示,整個(gè)系統(tǒng)不是很復(fù)雜,其設(shè)計(jì)主要包括單片機(jī)控制模塊、時(shí)鐘電路和顯示電路三
28、個(gè)模塊的設(shè)計(jì),在設(shè)計(jì)前本人在學(xué)校圖書(shū)館看了很多關(guān)于單片機(jī)方面的書(shū),也在網(wǎng)上查了不少資料,也查閱過(guò)跟此設(shè)計(jì)相似的論文或者期刊,得到了不少啟發(fā)和經(jīng)驗(yàn),對(duì)本人的設(shè)計(jì)工作有很大的幫助,能很好的把握設(shè)計(jì)的整體方向和細(xì)節(jié),論文的結(jié)構(gòu)如下:</p><p> 第二章:系統(tǒng)的設(shè)計(jì)方案,根據(jù)系統(tǒng)所要實(shí)現(xiàn)的功能,確定設(shè)計(jì)的基本方案。</p><p> 第三章:系統(tǒng)的硬件設(shè)計(jì),主要介紹了硬件的電路圖,各模塊
29、電路的設(shè)計(jì),硬件元器件的結(jié)構(gòu),特點(diǎn),引腳功能等。</p><p> 第四章:系統(tǒng)軟件部分的設(shè)計(jì),主要是對(duì)系統(tǒng)的主程序的結(jié)構(gòu)圖和流程圖的解說(shuō)。</p><p> 第五章:系統(tǒng)的調(diào)試,主要是介紹下系統(tǒng)硬件和軟件調(diào)試過(guò)程中的問(wèn)題和解決方案,還有調(diào)試步驟的細(xì)節(jié)問(wèn)題的說(shuō)明。</p><p><b> 第六章:論文總結(jié)。</b></p>
30、<p><b> 2 方案設(shè)計(jì)</b></p><p> 2.1 方案比較與選擇</p><p> 2.1.1 系統(tǒng)方案選擇</p><p> 方案一:采用數(shù)字電路來(lái)搭建,利用555時(shí)基電路構(gòu)成振蕩器產(chǎn)生100Hz頻率的振蕩電路,再通過(guò)分頻器得到1Hz頻率,即產(chǎn)生1秒計(jì)時(shí)時(shí)間,顯示部分通過(guò)鎖存器和驅(qū)動(dòng)芯片將計(jì)時(shí)時(shí)間送入數(shù)碼管
31、顯示。設(shè)計(jì)框圖如圖2-1所示。這種方案電路結(jié)構(gòu)比較復(fù)雜,芯片使用比較多,靈活性不高,而且準(zhǔn)確度不夠精確,不利于系統(tǒng)的擴(kuò)展。而且這種電路中需要使用獨(dú)立式的數(shù)碼管,每一個(gè)數(shù)碼管都需要連接一個(gè)數(shù)據(jù)鎖存器和數(shù)碼管驅(qū)動(dòng)芯片,連接線比較多,制作的過(guò)程中很容易出錯(cuò)。</p><p> 圖2-1 方案一設(shè)計(jì)框圖</p><p> 方案二:采用AT89S51單片機(jī)作為系統(tǒng)控制單元,通過(guò)時(shí)鐘芯片來(lái)實(shí)現(xiàn)計(jì)時(shí)
32、功能,單片機(jī)負(fù)責(zé)將時(shí)間送入顯示電路顯示。設(shè)計(jì)框圖如圖2-2所示。這種方案電路設(shè)計(jì)簡(jiǎn)單,時(shí)間精確,使用方便。而且單片機(jī)的強(qiáng)大功能使得系統(tǒng)方便擴(kuò)展,有利于提高智能性。</p><p> 圖2-2 方案二設(shè)計(jì)框圖</p><p> 綜上所述,本設(shè)計(jì)選用第二種設(shè)計(jì)方案。</p><p> 2.1.2 時(shí)鐘芯片選擇</p><p> 方案一:因
33、為本文設(shè)計(jì)的數(shù)字鐘只需要顯示分鐘和秒,因此可以直接采用單片機(jī)定時(shí)計(jì)數(shù)器提供秒信號(hào),使用程序?qū)崿F(xiàn)分、秒計(jì)數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,實(shí)現(xiàn)的時(shí)間誤差較大,硬件就比較復(fù)雜,穩(wěn)定性低,而且不易控制。所以不采用此方案。</p><p> 方案二:采用DS1307時(shí)鐘芯片實(shí)現(xiàn)時(shí)鐘。DS1307,它是I2C總線接口實(shí)時(shí)時(shí)鐘芯片,可以獨(dú)立于CPU工作,不受CPU主晶振及其電容的影響,且計(jì)時(shí)準(zhǔn)確,月累積誤
34、差一般小于10秒。芯片還具有主電源掉電情況下的時(shí)鐘保護(hù)電路,DS1307的時(shí)鐘靠后備電池維持工作,拒絕CPU對(duì)其讀出和寫(xiě)入訪問(wèn)。同時(shí)還具有備用電源自動(dòng)切換控制電路,因而可在主電源掉電和其它一些惡劣環(huán)境場(chǎng)合中保證系統(tǒng)時(shí)鐘的定時(shí)準(zhǔn)確性。同時(shí),DS1307芯片內(nèi)部還集成有一定容量、具有掉電保護(hù)特性的靜態(tài)RAM,可用于保存一些關(guān)鍵數(shù)據(jù)。所以采用DS1307作為時(shí)鐘芯片。</p><p> 2.1.3 顯示器件選擇<
35、;/p><p> 為了能以十進(jìn)制數(shù)碼直觀地顯示數(shù)字系統(tǒng)的運(yùn)行數(shù)據(jù),目前廣泛使用了七段字符顯示器,或稱(chēng)做七段數(shù)碼管。這種字符顯示器由七段可發(fā)光的線段拼合而成。常見(jiàn)的七段字符顯示器有半導(dǎo)體數(shù)碼管和液晶顯示器兩種。</p><p> 半導(dǎo)體數(shù)碼管的每個(gè)線段都是一個(gè)發(fā)光二極管(Light Emitting Diode,簡(jiǎn)稱(chēng)LED),因而也把它叫作LED數(shù)碼管或LED七段顯示器。半導(dǎo)體數(shù)碼管不僅具有
36、工作電壓低、體積小、壽命長(zhǎng)、可靠性高等優(yōu)點(diǎn),而且響應(yīng)時(shí)間短(一般不超過(guò)0.1us),亮度也比較高,但是只能顯示數(shù)字,顯示內(nèi)容比較受到限制,又過(guò)多的占用單片機(jī)的I/O口。</p><p> 液晶顯示器簡(jiǎn)稱(chēng)LCD,液晶是一種既具有液體的流動(dòng)性又具有光學(xué)特性的有機(jī)化合物,它的透明度和呈現(xiàn)的顏色受外加電場(chǎng)的影響,利用這一特點(diǎn)便可以做成字符顯示器。液晶顯示器最大的優(yōu)點(diǎn)是功耗極小,每平方厘米的功耗在1uW以下。它的工作電壓
37、也很低,在1V以下仍能工作。而且顯示內(nèi)容比數(shù)碼管要豐富。因此,液晶顯示器在電子表以及各種小型、便攜式儀器、儀表中得到了廣泛的應(yīng)用。</p><p> 綜上所述,本設(shè)計(jì)中選用液晶顯示器作為顯示單元器件。</p><p><b> 2.2 設(shè)計(jì)方案</b></p><p> 本設(shè)計(jì)系統(tǒng)框圖如圖2-3所示。系統(tǒng)以AT89S51單片機(jī)為控制器,通
38、過(guò)DS1307來(lái)為系統(tǒng)提供標(biāo)準(zhǔn)時(shí)間,單片機(jī)讀取DS1307時(shí)間后送液晶顯示器顯示,通過(guò)按鍵來(lái)設(shè)置打鈴時(shí)間。當(dāng)打鈴時(shí)間到時(shí),系統(tǒng)實(shí)現(xiàn)蜂鳴器和LED燈聲光提示。系統(tǒng)設(shè)計(jì)框圖如下:</p><p> 圖2-3 系統(tǒng)設(shè)計(jì)框圖</p><p><b> 3 系統(tǒng)硬件設(shè)計(jì)</b></p><p><b> 3.1 硬件電路圖</b&g
39、t;</p><p> 根據(jù)系統(tǒng)設(shè)計(jì)框圖,本設(shè)計(jì)硬件電路主要由時(shí)鐘電路、按鍵設(shè)定電路、單片機(jī)電路、顯示電路和打鈴電路組成,電路原理圖見(jiàn)附錄一所示。</p><p> 系統(tǒng)工作原理:系統(tǒng)時(shí)間由時(shí)鐘芯片DS1307來(lái)提供,單片機(jī)通過(guò)P3口讀取了DS1307的時(shí)間數(shù)據(jù)后,經(jīng)過(guò)處理得到時(shí)間顯示模式的時(shí)鐘數(shù)據(jù),并通過(guò)P2口送液晶顯示器顯示出來(lái)。再通過(guò)掃描P1口是否有按鍵按下,有按鍵按下時(shí),通過(guò)液
40、晶顯示器顯示來(lái)設(shè)置定時(shí)時(shí)間、打鈴時(shí)間間隔,通過(guò)設(shè)定、移位、加數(shù)來(lái)實(shí)現(xiàn)。當(dāng)?shù)竭_(dá)打鈴時(shí)間時(shí),單片機(jī)引腳啟動(dòng)蜂鳴器和LED燈電路工作以聲光形式實(shí)現(xiàn)打鈴功能。</p><p><b> 3.2 時(shí)鐘電路</b></p><p> 3.2.1 DS1307簡(jiǎn)介</p><p> DS1307是I2C總線接口的日歷時(shí)鐘芯片,片內(nèi)有8個(gè)特殊寄存器和56
41、字節(jié)的非易失性RAM,是一種低功耗、BCD碼的8引腳實(shí)時(shí)時(shí)鐘芯片。它的主要特點(diǎn):</p><p> 可對(duì)秒、時(shí)、分、每月的天數(shù)、月份、每周的天數(shù)進(jìn)行計(jì)數(shù),并具有閏年補(bǔ)償功能,記年上線為2100年;</p><p> 56字節(jié)非易失性RAM;</p><p><b> 兩線串行接口;</b></p><p><
42、b> 可編程方波輸出;</b></p><p> 自動(dòng)掉電檢測(cè)和切換電路;</p><p> 在電池備份模式下,功耗小于50nA;</p><p> 工業(yè)級(jí)工作溫度:-40℃-80℃;</p><p> 8引腳DIP和SOIC封裝。</p><p> DS1307的引腳排列如圖3-1所示,
43、引腳說(shuō)明如下: </p><p> X1、X2:接入32.768kHz的石英晶振;</p><p> VBAT:+3V電源輸入;</p><p><b> GND:地;</b></p><p> SDA:數(shù)據(jù)線,輸入輸出數(shù)據(jù),需要外接上拉電阻;</p><p> SCL:時(shí)鐘線,用來(lái)同步
44、數(shù)據(jù);</p><p> SQW/OUT:方波信號(hào)輸出端,可輸出供選擇的頻率方波,1Hz、4 KHz、8K Hz、32K Hz,需外接上拉電阻。</p><p> VCC:+5V電源;</p><p> 圖3-1 DS1307引腳圖</p><p> 3.2.2 時(shí)鐘電路設(shè)計(jì)</p><p> 時(shí)鐘電路如圖3
45、-2所示。時(shí)鐘芯片的SCL引腳和SDA引腳分別由單片機(jī)的P3.1和P3.2引腳控制,單片機(jī)只需按照DS1307的工作時(shí)序來(lái)控制DS1307即可實(shí)現(xiàn)時(shí)間的寫(xiě)入和讀取,其中DS1307的時(shí)鐘端與數(shù)據(jù)端需外接上拉電阻,本設(shè)計(jì)選用5針排阻來(lái)充當(dāng)上拉電阻。</p><p><b> 圖3-2 時(shí)鐘電路</b></p><p><b> 3.3 按鍵電路</b
46、></p><p> 鍵盤(pán)是單片機(jī)應(yīng)用中常用的一種輸入器件,鍵盤(pán)的按鍵有觸點(diǎn)式和非觸點(diǎn)式之分,按接口原理有編碼鍵盤(pán)和非編碼鍵盤(pán)之分。編碼鍵盤(pán)主要用硬件來(lái)實(shí)現(xiàn)對(duì)按鍵的識(shí)別,非編碼鍵盤(pán)是由軟件來(lái)實(shí)現(xiàn)鍵盤(pán)的定義與識(shí)別。常用的按鍵一般為觸點(diǎn)式按鍵,根據(jù)按鍵所連接的單片機(jī)引腳的電平高低來(lái)判斷其是否按下。按功能分,鍵盤(pán)有獨(dú)立按鍵和矩陣按鍵之分,獨(dú)立按鍵每一路按鍵就占用單片機(jī)的一個(gè)控制引腳,單片機(jī)直接獲取其信息;矩陣按
47、鍵將按鍵排成由行和列組成的行列式,通過(guò)確認(rèn)按鍵的行號(hào)和列號(hào)來(lái)確定每一路按鍵,利用少的單片機(jī)引腳控制更多的按鍵。</p><p> 本設(shè)計(jì)中按鍵電路如圖3-3所示,由單片機(jī)的P1口控制按鍵電路。本設(shè)計(jì)中按鍵用于設(shè)定定時(shí)時(shí)間、打鈴時(shí)間間隔,所以只需4路按鍵即可實(shí)現(xiàn)所需功能,采用獨(dú)立式按鍵即可。由于按鍵是機(jī)械式觸點(diǎn),所以在斷開(kāi)或閉合時(shí),一般都有抖動(dòng)產(chǎn)生,雖然這個(gè)抖動(dòng)時(shí)間在我們看來(lái)非常短,但是單片機(jī)執(zhí)行指令的速度為微秒
48、級(jí)別,很容易會(huì)讀取這個(gè)時(shí)間而將其判斷為真正的工作狀態(tài),從而引起誤判。因此,在設(shè)計(jì)中必須考慮到按鍵抖動(dòng)的影響。常用的去抖動(dòng)的方法有兩種:硬件方法和軟件方法。硬件方法一般是加電容或者RS觸發(fā)器;軟件方法是在單片機(jī)在檢測(cè)引腳所連接的按鍵的工作狀態(tài)時(shí)加一個(gè)延時(shí)程序再次確認(rèn),通過(guò)2次的確認(rèn)就可以確保按鍵的工作狀態(tài)不受機(jī)械抖動(dòng)的影響了。</p><p><b> 圖3-3 按鍵電路</b></p
49、><p><b> 3.4 單片機(jī)電路</b></p><p> 3.4.1 單片機(jī)簡(jiǎn)介</p><p> 單片機(jī)是一種集成電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的CPU、RAM、ROM、多種I/O口、中斷系統(tǒng)和定時(shí)器/計(jì)時(shí)器功能集成到一塊芯片上的完善的計(jì)算機(jī)系統(tǒng),它最早是被用在工業(yè)控制領(lǐng)域。由于單片機(jī)在工業(yè)控制領(lǐng)域的廣泛應(yīng)用
50、,為使更多的業(yè)內(nèi)人士、學(xué)生和愛(ài)好者學(xué)習(xí)掌握這門(mén)技術(shù),產(chǎn)生了單片機(jī)開(kāi)發(fā)板。</p><p> 早期的單片機(jī)是8位或4位的,其中最成功的是INTEL的8031單片機(jī),因簡(jiǎn)單可靠而獲得了很大的好評(píng)。此后,在8031的基礎(chǔ)上發(fā)展出了MCS51系列單片機(jī),基于這一系統(tǒng)的單片機(jī)一直到現(xiàn)在還廣泛應(yīng)用著。隨著工業(yè)控制領(lǐng)域要求的提高,開(kāi)始出現(xiàn)了16位的單片機(jī),因性價(jià)比不好并未得到廣泛的應(yīng)用。90年代后期隨著消費(fèi)電子產(chǎn)品的大發(fā)展,
51、單片機(jī)技術(shù)得到了很大的提高,32位機(jī)迅速代替了16位機(jī)進(jìn)入主流市場(chǎng),傳統(tǒng)的8位機(jī)的處理速度也提高了數(shù)百倍,而且價(jià)格也降低了很多,得到了廣泛的應(yīng)用。現(xiàn)在人們生活中幾乎每個(gè)電子產(chǎn)品或機(jī)械產(chǎn)品都或多或少帶有單片機(jī)控制系統(tǒng),智能儀器儀表、醫(yī)療器械、家用電器、兒童玩具等等,汽車(chē)電子中單片機(jī)的應(yīng)用也是非常廣泛,一般汽車(chē)上配備有接近40多個(gè)單片機(jī)系統(tǒng)。</p><p> AT89S51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)
52、器的低電壓、高性能CMOS8位微處理器。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失性存儲(chǔ)器制造技術(shù),與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。主要特性:</p><p> 與MCS-51產(chǎn)品指令系統(tǒng)完全兼容;</p><p> 4K字節(jié)在系統(tǒng)編程(ISP)Flash閃速存儲(chǔ)器;</p><p> 1000次擦鞋周期;&
53、lt;/p><p> 4.0-5.5V的電壓工作范圍;</p><p> 全靜態(tài)工作模式:0Hz-33MHz;</p><p><b> 三級(jí)程序加密鎖;</b></p><p> 128*8字節(jié)內(nèi)部RAM;</p><p> 32個(gè)可編程I/O口線(P1、P2、P3、P4);</p&
54、gt;<p> 2個(gè)16位定時(shí)/計(jì)數(shù)器,可通過(guò)編程實(shí)現(xiàn)4種工作方式;</p><p> 1個(gè)具有6個(gè)中斷源、4個(gè)優(yōu)先級(jí)的中斷潛嵌套結(jié)構(gòu);</p><p> 全雙工UART通道;</p><p> 低功耗空閑和掉電模式;</p><p> 中斷可從空閑模式喚醒系統(tǒng);</p><p> 看門(mén)狗(W
55、DT)及雙數(shù)據(jù)指針;</p><p> 掉電標(biāo)識(shí)和快速編程特性;</p><p> 靈活的在系統(tǒng)編程(ISP字節(jié)或頁(yè)寫(xiě)模式)。</p><p> AT89S51單片機(jī)內(nèi)部主要由9個(gè)部件組成:1個(gè)8位中央處理器;4KBFlash存儲(chǔ)器;128B的數(shù)據(jù)存儲(chǔ)器;32條I/O口線;2個(gè)定時(shí)器/計(jì)數(shù)器;1個(gè)具有6個(gè)中斷源、4個(gè)優(yōu)先級(jí)的中斷嵌套結(jié)構(gòu);用于多處理機(jī)通信、I/
56、O擴(kuò)展或全雙工UART的串行口;特殊功能寄存器;1個(gè)片內(nèi)振蕩器和時(shí)鐘電路。AT89S51系列單片機(jī)完全繼承了MCS-51的指令系統(tǒng),共有111條指令,按其功能可分為五大類(lèi):數(shù)據(jù)傳送類(lèi)指令、算術(shù)運(yùn)算類(lèi)指令、邏輯運(yùn)算類(lèi)指令、控制轉(zhuǎn)移類(lèi)指令、布爾操作。</p><p> 中斷技術(shù)是計(jì)算機(jī)中的重要技術(shù)之一,它既和硬件相關(guān),也和軟件相關(guān),正因?yàn)橛辛恕爸袛唷辈攀沟糜?jì)算機(jī)的工作更加靈活、效率更高。所謂中斷實(shí)際是一個(gè)處理時(shí)間的
57、過(guò)程,這一過(guò)程一般是由計(jì)算機(jī)內(nèi)部或外部某種緊急事件引起并向主機(jī)發(fā)出請(qǐng)求處理的信號(hào),主機(jī)在允許情況下相應(yīng)請(qǐng)求,暫停正在執(zhí)行的程序,保存好“斷點(diǎn)”處的現(xiàn)場(chǎng),轉(zhuǎn)去執(zhí)行中斷處理程序,處理完后自動(dòng)返回到原斷點(diǎn)處,繼續(xù)執(zhí)行原程序。引起中斷的原因,或是能發(fā)出中斷申請(qǐng)的來(lái)源,稱(chēng)為中斷源。AT89S51提供5個(gè)中斷源,即:</p><p> 外部中斷源/INT0:由P3.2輸入;</p><p> 外部
58、中斷源/INT1:由P3.3輸入,I/O設(shè)備中斷請(qǐng)求信號(hào),或掉電故障異常事件中斷請(qǐng)求信號(hào)都可以作為外部中斷源連/INT0、/INT1。</p><p> 定時(shí)器/計(jì)數(shù)器T0溢出中斷:TF0做標(biāo)志,由P3.4輸出;</p><p> 定時(shí)器/計(jì)數(shù)器T1溢出中斷:TF1做標(biāo)志,由P3.5輸出;</p><p> 片內(nèi)串行口產(chǎn)生的中斷:RX、TX。</p>
59、;<p><b> I/O口分配:</b></p><p> P0口(P0.0~P0.7)為雙向8位三態(tài)I/O口,當(dāng)作為I/O口使用時(shí),可直接連接外部I/O設(shè)備。它是地址總線低8位及數(shù)據(jù)總線分時(shí)服用口,可驅(qū)動(dòng)8個(gè)TTL負(fù)載。一般作為擴(kuò)展時(shí)地址/數(shù)據(jù)總線口使用。</p><p> P1口(P1.0~P1.7)的每一位都可以分別定義為輸入線和輸出線(做
60、輸入時(shí),鎖存器必須置1),可驅(qū)動(dòng)4個(gè)TTL負(fù)載。P1口常用作通用I/O口,它是一個(gè)標(biāo)準(zhǔn)的準(zhǔn)雙向口。</p><p> P2口(P2.0~P2.7)為8位準(zhǔn)雙向I/O口,當(dāng)作為I/O口使用時(shí),可直接連接外部I/O設(shè)備。它是地址總線的高8位復(fù)用,可驅(qū)動(dòng)4個(gè)TTL負(fù)載。一般作為擴(kuò)展地址總線的高8為使用。</p><p> P3口(P3.0~P3.7)為8位準(zhǔn)雙向I/O口,是雙功能復(fù)用口,可驅(qū)
61、動(dòng)4個(gè)TTL負(fù)載,能夠?qū)崿F(xiàn)第一功能,可作為通用I/O口。P3口的第二功能定義如表3-1所示:</p><p> 表3-1 P3口第二功能定義</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> ALE/PROG:地址鎖存允許信號(hào)輸出。在CPU訪問(wèn)外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE提供一個(gè)地址
62、鎖存信號(hào),將低8位地址鎖存在片外鎖存器中。在與Flash并行編程/校驗(yàn)期間,該引腳也是編程負(fù)脈沖的輸入端。在正常操作狀態(tài)下,該引腳端口輸出恒定頻率的脈沖。其頻率為晶振頻率的1/6,可用作外部定時(shí)或其他觸發(fā)信號(hào)。如果需要,可通過(guò)SFR的第0位置禁止ALE操作,但ALE的禁止位不影響對(duì)外部存儲(chǔ)器的訪問(wèn)。</p><p> :片外程序存儲(chǔ)器選通信號(hào),低電平有效。當(dāng)AT89S51執(zhí)行來(lái)自外部程序存儲(chǔ)器的指令代碼時(shí),PS
63、EN/每個(gè)機(jī)器周期兩次有效。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN/無(wú)效。</p><p> ?。浩獬绦虼鎯?chǔ)器訪問(wèn)允許信號(hào),低電平有效。當(dāng)接地時(shí),CPU只執(zhí)行片外存儲(chǔ)器中的程序;當(dāng)接Vcc時(shí),CPU首先執(zhí)行片內(nèi)程序存儲(chǔ)器中的程序(0000H~0FFFH),然后自動(dòng)轉(zhuǎn)向執(zhí)行片外程序存儲(chǔ)器中的程序(1000H~FFFFH)。如果程序鎖定位LB1被編程(P),那么值將在復(fù)位時(shí)由片內(nèi)鎖存。在與Flash并行編程/校驗(yàn)期間,該
64、引腳施加12V的編程電壓VPP。</p><p> XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> XTAL2:來(lái)自反向振蕩器的輸出。</p><p> AT89S51引腳圖如圖3-4所示:</p><p> 圖3-4 AT89S51引腳圖</p><p> 3.4.2 單片機(jī)最
65、小系統(tǒng)電路</p><p> 單片機(jī)最小系統(tǒng)由晶振電路和復(fù)位電路組成。電路如圖3-5所示。</p><p> 晶振電路用于產(chǎn)生單片機(jī)工作時(shí)所需要的時(shí)鐘信號(hào),單片機(jī)的指令必須在時(shí)鐘信號(hào)下按照時(shí)序執(zhí)行。晶振電路通常用兩種設(shè)計(jì)方式:內(nèi)部振蕩方式和外部振蕩方式。內(nèi)部振蕩方式是在單片機(jī)的XTAL1和XTAL2引腳外接一個(gè)晶體振蕩器,與單片機(jī)內(nèi)部的振蕩器組成時(shí)鐘信號(hào);外部振蕩方式是在外部將已有的脈
66、沖信號(hào)引入單片機(jī)內(nèi),一般用于使單片機(jī)的時(shí)鐘與外部信號(hào)保持同步。本設(shè)計(jì)選用內(nèi)部振蕩方式,在XTAL1和XTAL2引腳之間連接一個(gè)12MHz的晶振,再分別外接30p的對(duì)地電容。</p><p> 單片機(jī)在啟動(dòng)時(shí)需要復(fù)位,使系統(tǒng)各器件處于初始狀態(tài)。復(fù)位引腳為RST,當(dāng)系統(tǒng)上電后晶振電路穩(wěn)定后,RST引腳有一個(gè)高電平且持續(xù)2個(gè)機(jī)器周期以上,單片機(jī)系統(tǒng)就可以實(shí)現(xiàn)復(fù)位功能。復(fù)位一般有手動(dòng)復(fù)位和上電復(fù)位功能。手動(dòng)復(fù)位是在RS
67、T引腳設(shè)置按鍵,當(dāng)按鍵按下時(shí),RST引腳會(huì)有高電平,即可實(shí)現(xiàn)復(fù)位功能;上電復(fù)位是在RST引腳連接一個(gè)電解電容接至電源,再接一個(gè)電阻接地,系統(tǒng)上電時(shí),電容充電,只要電源的上升時(shí)間不超過(guò)1ms,就可以實(shí)現(xiàn)復(fù)位功能。本設(shè)計(jì)選用按鍵復(fù)位。</p><p> 圖3-5 單片機(jī)最小系統(tǒng)電路</p><p><b> 3.5 顯示電路</b></p><p&
68、gt; LCD1602為字符型液晶顯示器,分為帶背光和不帶背光兩種,主要技術(shù)參數(shù):</p><p> 顯示容量,16×2個(gè)字符;</p><p> 芯片工作電壓,4.5V-5.5V;</p><p> 工作電流,2.0mA;</p><p> 模塊最佳工作電壓,5V;</p><p> 字符尺寸,
69、2.95×4.35mm。</p><p> LCD1602共有16個(gè)引腳,引腳說(shuō)明如下:</p><p> 1腳,VSS,電源地;</p><p> 2腳,VDD,電源正極,接+5V;</p><p> 3腳,VL,液晶顯示偏壓,接正電源時(shí)對(duì)比度較弱,接地時(shí)對(duì)比度最高;</p><p> 4腳,RS
70、,數(shù)據(jù)/命令選擇,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器;</p><p> 5腳,R/W,讀/寫(xiě)選擇,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作,當(dāng)RS和R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù);</p><p> 6腳,E,使能信號(hào),當(dāng)E端由高電平跳變?yōu)榈碗娖綍r(shí),液晶塊執(zhí)行命令;<
71、/p><p> 7-14腳,D0-D7,8位雙向數(shù)據(jù)線;</p><p> 15腳,BLA,背光源正極;</p><p> 16腳,BLK,背光源負(fù)極。</p><p> 本設(shè)計(jì)中顯示電路如圖3-6所示。單片機(jī)的P2口作為L(zhǎng)CD1602的數(shù)據(jù)線端口,P3口控制LCD1602的使能端。單片機(jī)讀取數(shù)據(jù)后,通過(guò)控制LCD1602的讀寫(xiě)端、復(fù)位端
72、和使能端將其設(shè)置為寫(xiě)入數(shù)據(jù)狀態(tài),再將數(shù)據(jù)通過(guò)P2口送入LCD1602實(shí)現(xiàn)顯示功能。</p><p><b> 圖3-6 顯示電路</b></p><p><b> 3.6 打鈴電路</b></p><p> 打鈴電路一般用聲音或音樂(lè)作為提醒,本設(shè)計(jì)選用蜂鳴器和LED燈實(shí)現(xiàn)聲光雙重打鈴功能,電路如圖3-7所示。打鈴時(shí)間
73、到時(shí),單片機(jī)P3.3引腳置高,三極管9013導(dǎo)通,繼而蜂鳴器和LED燈導(dǎo)通,實(shí)現(xiàn)蜂鳴和燈亮打鈴功能。</p><p><b> 圖3-7 打鈴電路</b></p><p><b> 4 系統(tǒng)軟件設(shè)計(jì)</b></p><p> 4.1 軟件設(shè)計(jì)流程圖</p><p> 系統(tǒng)軟件設(shè)計(jì)流程圖如圖4
74、-1所示。</p><p> 圖4-1 軟件設(shè)計(jì)流程圖</p><p> 程序設(shè)計(jì)過(guò)程:首先要定義單片機(jī)的引腳,然后初始化器件,再利用DS1307的讀寫(xiě)時(shí)序讀取時(shí)間數(shù)據(jù)。再利用按鍵進(jìn)入時(shí)間設(shè)定狀態(tài),設(shè)定完時(shí)間后單片機(jī)通過(guò)比較時(shí)間是否到達(dá)設(shè)定的時(shí)間來(lái)確定是否到打鈴時(shí)間,如果達(dá)到打鈴時(shí)間,則控制蜂鳴器響LED燈亮。</p><p> 4.2 讀取DS1307時(shí)間程
75、序設(shè)計(jì)</p><p> DS1307中的時(shí)間寄存器地址編碼為00H-07H,而具有掉電保護(hù)的RAM寄存器的地址編碼為08H-3FH。當(dāng)?shù)刂分羔樦赶騌AM的最后一個(gè)地址3FH時(shí),若進(jìn)行多字節(jié)操作,則地址指針將會(huì)復(fù)位而指向00H,這樣原來(lái)存在00H的數(shù)據(jù)將會(huì)丟失。DS1307的各類(lèi)時(shí)間數(shù)據(jù)均以BCD碼的格式存儲(chǔ)在相應(yīng)的時(shí)間寄存器中,具體分配如表4-1所示:</p><p> 表4-1 D
76、S1307寄存器分配</p><p> 單片機(jī)通過(guò)讀取DS1307相應(yīng)的寄存器字節(jié),可以獲取時(shí)鐘和日歷信息。時(shí)鐘和日歷信息以BCD碼的形式存放在寄存器中,寄存器0的第7位為時(shí)鐘停止位,振蕩器停止工作。由于在初次上電時(shí),所有寄存器的狀態(tài)是不確定的,所以在初始化時(shí)必須將寄存器0中的第7位設(shè)為0。</p><p> DS1307可運(yùn)行在12/24小時(shí)模式下,并由時(shí)間控制器中的相應(yīng)位來(lái)進(jìn)行控制
77、。根據(jù)小時(shí)寄存器的第6位是0還是1,置為1時(shí),是工作于12小時(shí)模式下,此時(shí),小時(shí)寄存器的第5位為AM/PM標(biāo)志。在24小時(shí)模式中,小時(shí)寄存器的第5位和第4位共同組成小時(shí)的十位數(shù)。時(shí)鐘模塊設(shè)計(jì)流程:?jiǎn)纹瑱C(jī)按如下順序?qū)?shù)據(jù)寫(xiě)入到DS1307 寄存器或內(nèi)部RAM 中:</p><p> 1、START 信號(hào)</p><p> 2、寫(xiě)SLA+W(0xd0)字節(jié),DS1307 應(yīng)答(ACK);&
78、lt;/p><p> 3、寫(xiě)1 字節(jié)內(nèi)存地址(在以下第四步寫(xiě)入的第一字節(jié)將存入到DS1307 內(nèi)該地址處,DS1307應(yīng)答);</p><p> 4、寫(xiě)數(shù)據(jù)(可寫(xiě)多個(gè)字節(jié),每一字節(jié)寫(xiě)入后DS1307 內(nèi)部地址計(jì)數(shù)器加一,DS1307 應(yīng)答);</p><p><b> 5、STOP 信號(hào)</b></p><p> 單
79、片機(jī)讀取DS1307子程序流程圖如圖4-2所示:</p><p> 圖4-2 單片機(jī)讀取DS1307子程序流程圖</p><p> 4.3 顯示程序設(shè)計(jì)</p><p> LCD1602的基本操作時(shí)序:</p><p> 讀狀態(tài):輸入:RS=L,RW=H,E=H;輸出:D0-D7=狀態(tài)字。</p><p>
80、寫(xiě)指令:輸入:RS=L,RW=L,D0-D7=指令碼,E=高脈沖;輸出:無(wú)。</p><p> 讀數(shù)據(jù):輸入:RS=H,RW=H,E=H;輸出:D0-D7=數(shù)據(jù)。</p><p> 寫(xiě)數(shù)據(jù):輸入:RS=H,RW=L,D0-D7=數(shù)據(jù),E=高脈沖;輸出:無(wú)。</p><p> LCD1602初始化過(guò)程:延時(shí)15ms;寫(xiě)指令38H(不檢測(cè)忙信號(hào));延時(shí)5ms;寫(xiě)指
81、令38H(不檢測(cè)忙信號(hào));延時(shí)5ms;寫(xiě)指令38H(不檢測(cè)忙信號(hào));以后每次寫(xiě)指令、讀/寫(xiě)數(shù)據(jù)操作均需要檢測(cè)忙信號(hào);寫(xiě)指令38H,顯示模式設(shè)置;寫(xiě)指令08H,顯示關(guān)閉;寫(xiě)指令01H,顯示清屏;寫(xiě)指令06H,顯示光標(biāo)移動(dòng)設(shè)置;寫(xiě)指令0CH,顯示開(kāi)及光標(biāo)設(shè)置。</p><p> LCD有11條控制指令,如表4-2所示。</p><p> 表4-2LCD1602控制指令表</p>
82、<p> LCD1602內(nèi)部自帶有80×8位的RAM緩沖區(qū),RAM地址映射如表4-3所示。</p><p> 表4-3 LCD1602的RAM地址映射表</p><p> LCD1602寫(xiě)操作時(shí)序如圖4-3所示。</p><p> 圖4-3 LCD1602寫(xiě)操作時(shí)序</p><p> 向LCD1602寫(xiě)數(shù)據(jù)程
83、序子程序流程圖如圖4-4所示:</p><p> 圖4-4 向LCD1602寫(xiě)數(shù)據(jù)程序子程序流程圖</p><p> 4.4 按鍵設(shè)定程序設(shè)計(jì)</p><p> 單片機(jī)讀取按鍵的方式有2種:查詢方式和中斷方式。</p><p> 查詢方式是利用單片機(jī)引腳不斷查詢是否有按鍵按下,如果有按鍵按下,利用延時(shí)程序去除抖動(dòng)再次確認(rèn)后,進(jìn)入該按鍵
84、對(duì)應(yīng)的子程序執(zhí)行命令。</p><p> 中斷方式是利用單片機(jī)的外部中斷功能來(lái)檢測(cè)是否有按鍵按下。利用中斷功能可以不用在主程序中不斷的執(zhí)行查詢命令,有中斷產(chǎn)生即有按鍵按下時(shí),再進(jìn)入中斷子程序中進(jìn)行處理。</p><p> 本設(shè)計(jì)選用查詢方式處理按鍵設(shè)定程序。每個(gè)獨(dú)立式按鍵直接接至單片機(jī)引腳,每個(gè)按鍵的鍵值與單片機(jī)端口的8個(gè)引腳的8位二進(jìn)制碼相對(duì)應(yīng)。本設(shè)計(jì)為P1.0-P1.3引腳控制4路
85、按鍵。</p><p> 單片機(jī)控制按鍵子程序流程圖如圖4-5所示:</p><p> 圖4-5 單片機(jī)控制按鍵子程序流程圖</p><p><b> 5 系統(tǒng)調(diào)試</b></p><p><b> 5.1 元件清單</b></p><p> 本設(shè)計(jì)中的硬件制作中所
86、用元器件如表5-1所示。</p><p><b> 表5-1 元件清單</b></p><p><b> 5.2 調(diào)試過(guò)程</b></p><p> 制作調(diào)試過(guò)程中所用儀器有:數(shù)字萬(wàn)用表、電烙鐵,焊錫絲、焊錫膏、剝線鉗、尖嘴鉗、圓口鉗、鑷子,吸錫器等,另外準(zhǔn)備盡量多的導(dǎo)線。</p><p>
87、 制作與調(diào)試過(guò)程如下:</p><p> 1、按照元器件清單準(zhǔn)備好所需要用到的元器件。</p><p> 2、按照電路原理圖焊接硬件電路板,先焊接芯片的底座,再焊接其外圍電路。實(shí)物電路圖如圖5-1所示:</p><p> 圖5-1 實(shí)物電路圖</p><p> 3、編譯軟件程序,將生成的.hex文件燒寫(xiě)入單片機(jī)內(nèi)。</p>
88、<p> 4、給系統(tǒng)上電,液晶顯示器顯示時(shí)間,利用按鍵,可設(shè)置定時(shí)時(shí)間和打鈴時(shí)間間隔。</p><p><b> 圖5-2 時(shí)間顯示</b></p><p> 5、當(dāng)定時(shí)時(shí)間到時(shí),蜂鳴器響,LED燈亮。</p><p> 6、每隔設(shè)置的打鈴時(shí)間間隔,蜂鳴器響,LED燈亮,實(shí)現(xiàn)打鈴功能。</p><p&g
89、t; 經(jīng)上述調(diào)試,系統(tǒng)工作正常,實(shí)現(xiàn)設(shè)計(jì)要求的功能。</p><p><b> 6 總結(jié)與展望</b></p><p> 經(jīng)過(guò)這段時(shí)間的努力,畢業(yè)設(shè)計(jì)也接近了尾聲。本文從選題目的及意義開(kāi)始,介紹了系統(tǒng)的方案設(shè)計(jì),其中提供了兩種設(shè)計(jì)方案,經(jīng)過(guò)互相之間的比較后選擇了簡(jiǎn)單易行的一種方案,后面還列出了其他兩種模塊的設(shè)計(jì)方案,并經(jīng)比較后選擇了合適的方案,然后對(duì)系統(tǒng)的硬件設(shè)
90、計(jì)進(jìn)行了闡述,包括電路圖和元器件的介紹,對(duì)它們實(shí)現(xiàn)的功能和內(nèi)部結(jié)構(gòu)都進(jìn)行了說(shuō)明,接著是軟件部分的設(shè)計(jì),這也是此設(shè)計(jì)的關(guān)鍵部分,有很詳細(xì)的說(shuō)明。</p><p> 本設(shè)計(jì)是針對(duì)學(xué)校的作息時(shí)間而設(shè)計(jì)的一種自動(dòng)打鈴系統(tǒng),但是它同樣可以用于其他的場(chǎng)所,如工廠,生廠車(chē)間等等,它能很好的起到時(shí)鐘提醒的作用,方便了人們的日常生活。在硬件設(shè)計(jì)部分,顯示器件選的是液晶顯示器,它具有功耗和工作電壓低的特點(diǎn),而且它的顯示質(zhì)量高,可視
91、面積大,能很好的達(dá)到設(shè)計(jì)要求,還降低了軟件的編程難度。</p><p> 本設(shè)計(jì)的自動(dòng)打鈴系統(tǒng)還存在不足和缺點(diǎn),主要表現(xiàn)在這些方面:雖然系統(tǒng)能夠很好的實(shí)現(xiàn)打鈴的要求,但是能夠設(shè)定的打鈴時(shí)間只有六個(gè),這是因?yàn)橄虢档途幊虝r(shí)的難度,在不影響其功能的前提下,降低了要求;還有就是其擴(kuò)展性不強(qiáng),后續(xù)的發(fā)展比較困難,制約了系統(tǒng)的升級(jí),在商品競(jìng)爭(zhēng)中沒(méi)什么優(yōu)勢(shì),需要進(jìn)一步的研究和開(kāi)發(fā)。</p><p>
92、 通過(guò)此次畢業(yè)設(shè)計(jì),我對(duì)所學(xué)專(zhuān)業(yè)的知識(shí)有了很好的回顧和實(shí)踐,提高了自己的動(dòng)手和思考能力,這對(duì)我自身的發(fā)展有很大的幫助,同時(shí)在此期間我查閱了很多的書(shū)籍和資料,從中學(xué)到了很多課本上沒(méi)有的知識(shí),拓展了自己的知識(shí)面,如果沒(méi)有前期的準(zhǔn)備工作是沒(méi)法很好的完成此次設(shè)計(jì)的,所以多學(xué)、多看、多想、多動(dòng)手才是學(xué)好知識(shí)的必要素質(zhì),這對(duì)我未來(lái)的發(fā)展和進(jìn)步有著至關(guān)重要的作用。</p><p><b> 致謝</b>
93、</p><p> 回顧這次畢業(yè)設(shè)計(jì)的過(guò)程,感慨良多,收獲頗豐,首先要感謝我的導(dǎo)師,成凌飛老師。在這段時(shí)間里成老師經(jīng)常給提醒我們?cè)谧霎厴I(yè)設(shè)計(jì)過(guò)程中應(yīng)當(dāng)注意的事項(xiàng),并在百忙之中特地抽出時(shí)間為我們講課,講解論文的排版及寫(xiě)作技巧,使我們受益不淺,還不忘督促我們按步驟完成每一項(xiàng)內(nèi)容,可以說(shuō)從畢業(yè)設(shè)計(jì)的開(kāi)始到完成都能看見(jiàn)老師的身影,沒(méi)有老師的辛勤輔導(dǎo)和對(duì)學(xué)生的責(zé)任心就沒(méi)有我現(xiàn)在這樣一篇畢業(yè)論文。同時(shí)我還要感謝大學(xué)四年所有
94、教導(dǎo)過(guò)我的老師,是他們的諄諄教誨給了我大學(xué)四年的專(zhuān)業(yè)知識(shí),在學(xué)習(xí)的道路上,他們就是我的領(lǐng)路人,真的非常感謝,還要感謝陪伴了我四年的每一個(gè)同學(xué),因?yàn)樗麄儯业拇髮W(xué)才不蒼白,因?yàn)樗麄儯业拇髮W(xué)才精彩,也是因?yàn)樗麄?,我的大學(xué)才有意義。</p><p> 畢業(yè)設(shè)計(jì)告一段落了,但是我的人生卻迎來(lái)了另一個(gè)出發(fā)點(diǎn),畢業(yè)并不意味著結(jié)束,它同時(shí)是一個(gè)新的開(kāi)始,我會(huì)帶著老師們的希冀,朋友們的祝福和友誼走得更遠(yuǎn)、更高、更堅(jiān)定,謝謝,
95、謝謝你們?。?!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 張鳳言.電子電路基礎(chǔ).北京高等教育出版社,1995.</p><p> [2] 戴佳,戴衛(wèi)恒,劉博文等.51單片機(jī)C語(yǔ)言應(yīng)用程序設(shè)計(jì)實(shí)例精講.電子工業(yè)出版社,2008.</p><p> [3] 孫江宏等. Protel 99
96、電路設(shè)計(jì)與應(yīng)用.機(jī)械工業(yè)出版社,2001.</p><p> [4] 閻石.數(shù)字電子技術(shù)基礎(chǔ).高等教育出版社,1998.</p><p> [5] 范風(fēng)強(qiáng),蘭嬋麗.單片機(jī)語(yǔ)言C51應(yīng)用實(shí)戰(zhàn)集錦.電子工業(yè)出版社,2001. </p><p> [6]張萌,和湘,姜斌等.單片機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)綜合實(shí)例.清華大學(xué)出版社,2007.</p><p&g
97、t; [7] 張義和.例說(shuō)51單片機(jī)(C語(yǔ)言版),人民郵電出版社,2010.</p><p> [8] 張毅剛, 劉杰. MCS-51單片機(jī)原理及應(yīng)用. 哈爾濱工業(yè)大學(xué)出版社,2004.</p><p> [9] 曹冬,尹成群,何玉鈞等.基于AT89S51的新型打鈴器的研制.現(xiàn)代電子技術(shù),2005,(10):79-81.</p><p> [10] 徐福成.
98、一款人性化的打鈴器.電子制作,2008,(2):36-37.</p><p> [11] 魏建安,龍?,F(xiàn).智能式電子打鈴器的原理與設(shè)計(jì).湖南教育學(xué)院學(xué)報(bào),2000,18(2):49-51. </p><p> [12] 王水富,韓云東,鐘超等.基于8051的自動(dòng)打鈴系統(tǒng)設(shè)計(jì).電腦編程技巧與維護(hù),2009,(17):23-26.</p><p> [13] 顧曙
99、敏.單片機(jī)與串行時(shí)鐘DS1307的接口設(shè)計(jì).現(xiàn)代電子技術(shù),2003,26(14):85-87.</p><p> [14] 王書(shū)杰,陳震.基于校園網(wǎng)絡(luò)的自動(dòng)打鈴系統(tǒng)設(shè)計(jì).科學(xué)技術(shù)與工程,2011,11(31):7804-7807. </p><p> [15] 王娟,魏雄.基于單片機(jī)的多功能定時(shí)打鈴鐘設(shè)計(jì).湖南農(nóng)機(jī),學(xué)術(shù)版,2011,(5):85-86.</p><
100、p> [16] 于永,戴佳,常江.51單片機(jī)C語(yǔ)言常用模塊與綜合系統(tǒng)設(shè)計(jì)實(shí)例精講.北京:電子工業(yè)出版社,2007.</p><p><b> 附錄</b></p><p><b> 附錄一:電路圖</b></p><p><b> 附錄二:源程序</b></p><p
101、> #include<reg51.h></p><p> #include<stdio.h></p><p> #include<intrins.h></p><p> #define uchar unsigned char</p><p> #define uint u
102、nsigned int</p><p> sbit LCD_EN=P3^5;</p><p> sbit LCD_RS=P3^7;</p><p> sbit LCD_RW=P3^6;</p><p> sbit sda=P1^2;</p><p> sbit sclk=P1^1;&l
103、t;/p><p> sbit FMQ=P3^4;</p><p> #define LCD_DATA 1</p><p> #define LCD_COMMAND 0</p><p> #define LCD_PORT P2</p><p> uchar DISP_up[16];&l
104、t;/p><p> uchar DISP_dw[16];</p><p> uchar LCD_NO; </p><p> uchar TBA[]={"0123456789"};</p><p> uchar temp5,count_1,temp6;</p><p> uchar
105、 D1307[3];</p><p> uchar flag;</p><p> uchar time_tab[24];</p><p> uchar t_count;</p><p> uchar key_board_t;</p><p> uchar key_count;</p>
106、<p> uchar save_data[8];</p><p> uchar opt_time;</p><p> /********************************************/</p><p> void delay(uint tt)</p><p><b> {&
107、lt;/b></p><p><b> uchar i;</b></p><p> for(;tt>0;tt--)</p><p><b> {</b></p><p> for(i=0;i<10;i++);</p><p><b>
108、}</b></p><p><b> }</b></p><p> /*********************************************************/</p><p> /*************************************************/</p>
109、<p> bit LCD_BUSY()</p><p><b> {</b></p><p> bit result;</p><p><b> LCD_RS=0;</b></p><p><b> LCD_RW=1;</b></p>&l
110、t;p><b> LCD_EN=1;</b></p><p><b> _nop_();</b></p><p><b> _nop_();</b></p><p> result=(bit)(LCD_PORT&0x80);</p><p><b&g
111、t; LCD_EN=0;</b></p><p> return result;</p><p><b> }</b></p><p> void LCD_Write(uchar dat,uchar type)</p><p><b> {</b></p>&l
112、t;p><b> uchar i;</b></p><p> while((LCD_BUSY()&&i<100)){i++;}</p><p> if(i>99)LCD_NO=1;</p><p> LCD_RS=type;</p><p><b> LCD_RW=0
113、;</b></p><p><b> LCD_EN=0;</b></p><p><b> _nop_();</b></p><p><b> _nop_();</b></p><p><b> _nop_();</b></p&g
114、t;<p><b> _nop_();</b></p><p><b> }</b></p><p> void LCD_INITIALIZE()</p><p><b> {</b></p><p> LCD_Write(0x06,LCD_COMMAN
115、D);</p><p> LCD_Write(0x38,LCD_COMMAND);</p><p> LCD_Write(0x0c,LCD_COMMAND);</p><p><b> }</b></p><p> void LCD_Prints(uchar *dat,uchar add,uchar lens)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)單片機(jī)自動(dòng)打鈴系統(tǒng)論文定稿
- 畢業(yè)設(shè)計(jì)單片機(jī)自動(dòng)打鈴系統(tǒng)論文定稿
- 單片機(jī)自動(dòng)打鈴系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)的自動(dòng)打鈴器的設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)論文--基于單片機(jī)的打鈴系統(tǒng)
- 單片機(jī)自動(dòng)打鈴課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)之自動(dòng)打鈴系統(tǒng)
- 畢業(yè)論文--基于單片機(jī)的打鈴系統(tǒng)
- 利用單片機(jī)打鈴器畢業(yè)論文設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的定時(shí)打鈴器設(shè)計(jì)
- 利用單片機(jī)打鈴器畢業(yè)論文
- 課程設(shè)計(jì)---單片機(jī)打鈴系統(tǒng)
- 課程設(shè)計(jì)-基于單片機(jī)的自動(dòng)打鈴系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)-基于單片機(jī)的自動(dòng)打鈴系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---單片機(jī)患者自動(dòng)呼救系統(tǒng)
- 自動(dòng)打鈴系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自動(dòng)停車(chē)收費(fèi)系統(tǒng)
- 畢業(yè)設(shè)計(jì)(論文)基于51單片機(jī)的自動(dòng)窗簾系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)單片機(jī)(時(shí)鐘打鈴系統(tǒng))
- 基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)-本科畢業(yè)論文
評(píng)論
0/150
提交評(píng)論