![課程設(shè)計論文單片機電子時鐘設(shè)計_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/29/314d2654-4767-43b8-a0dc-0b14e43abfa3/314d2654-4767-43b8-a0dc-0b14e43abfa31.gif)
![課程設(shè)計論文單片機電子時鐘設(shè)計_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/29/314d2654-4767-43b8-a0dc-0b14e43abfa3/314d2654-4767-43b8-a0dc-0b14e43abfa32.gif)
![課程設(shè)計論文單片機電子時鐘設(shè)計_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/29/314d2654-4767-43b8-a0dc-0b14e43abfa3/314d2654-4767-43b8-a0dc-0b14e43abfa33.gif)
![課程設(shè)計論文單片機電子時鐘設(shè)計_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/29/314d2654-4767-43b8-a0dc-0b14e43abfa3/314d2654-4767-43b8-a0dc-0b14e43abfa34.gif)
![課程設(shè)計論文單片機電子時鐘設(shè)計_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/29/314d2654-4767-43b8-a0dc-0b14e43abfa3/314d2654-4767-43b8-a0dc-0b14e43abfa35.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 設(shè)計題目: 單片機電子時鐘 系 別: 應(yīng)用電子與通信技術(shù) 班 級: 0991321 學(xué)生姓名: 指導(dǎo)教師: 成 績: 2012年9月7日摘 要單片機 即單片微型計算機。(single-chip microcomputer ),是 集 cpu ,ram ,rom ,定時,計數(shù)和多種接口于一體的微控制器。他體積小,成本低,功能強,廣泛應(yīng)用于工業(yè)自動化上和智能產(chǎn)品。時鐘,自從它被發(fā)明的那天起,就成為了人類的好朋友,但隨著時間的推移,科學(xué)技術(shù)的不斷發(fā)展,時鐘的應(yīng)用越來越廣范,人們對時間計量的精度要求也越來越高。怎樣讓時鐘更好的為人民服務(wù),怎樣讓我們的老朋友再次煥發(fā)青春呢?這就要求我們不斷設(shè)計出新型的
2、時鐘,來不斷滿足人們的日常生活需要。然而市場上的時鐘便宜的比較笨重,簡單實用的又比較昂貴。那么,有沒有一款既簡單實用價格又便宜的時鐘呢?我們課程設(shè)計小組設(shè)想:可不可以利用單片機功能集成化高,價格又便宜的特點設(shè)計一款結(jié)構(gòu)既簡單,價格又便宜的單片機電子時鐘呢? 基于這種情況,我們課程設(shè)計小組成員多方查閱資料,反復(fù)論證設(shè)計出了這款既簡單實用,又價格便宜的單片機電子時鐘。關(guān)鍵詞:單片機 ; 時鐘 ; 計時目 錄第一章 緒 論11.1課題背景11.2課題來源1第二章 mcs-51單片機的結(jié)構(gòu)32.1 控制器32.2 存儲器的結(jié)構(gòu)32.3 并行i/o口42.4 時鐘電路與時序42.5單片機的應(yīng)用領(lǐng)域5第三
3、章 系統(tǒng)設(shè)計要求63.1基本功能63.2 擴展功能6第四章 硬件總體設(shè)計方案.74.1系統(tǒng)功能實現(xiàn)總體設(shè)計思想744.2各部分功能實現(xiàn)84.3系統(tǒng)工作原理84.4時鐘各功能分析及圖解94.5電路功能使用說明12第五章 軟件總體設(shè)計方案135.1 主程序流程圖135.2總中斷程序流程145.3控制電路的c語言源程序18第六章 課程設(shè)計結(jié)果分析22第七章 結(jié)論與展望237.1 結(jié)論237.2 單片機的發(fā)展趨勢23致謝25參考文獻(xiàn) 26緒 論1.1課題背景單片機自1976年由intel公司推出mcs-48開始,迄今已有二十多年了。由于單片機集成度高、功能強、可靠性高、體積小、功耗地、使用方便、價格低
4、廉等一系列優(yōu)點,目前已經(jīng)滲入到人們工作和生活的方方面面,幾乎“無處不在,無所不為”。單片機的應(yīng)用領(lǐng)域已從面向工業(yè)控制、通訊、交通、智能儀表等迅速發(fā)展到家用消費產(chǎn)品、辦公自動化、汽車電子、pc機外圍以及網(wǎng)絡(luò)通訊等廣大領(lǐng)域。單片機有兩種基本結(jié)構(gòu)形式:一種是在通用微型計算機中廣泛采用的,將程序存儲器和數(shù)據(jù)存儲器合用一個存儲器空間的結(jié)構(gòu),稱為普林斯頓結(jié)構(gòu)。另一種是將程序存儲器和數(shù)據(jù)存儲器截然分開,分別尋址的結(jié)構(gòu),一般需要較大的程序存儲器,目前的單片機以采用程序存儲器和數(shù)據(jù)存儲器截然分開的結(jié)構(gòu)為多。本文討論的單片機多功能定時器的核心是目前應(yīng)用極為廣泛的51系列單片機,配置了外圍設(shè)備,構(gòu)成了一個可編程的計
5、時定時系統(tǒng),具有體積小,可靠性高,功能強等特點。不僅能滿足所需要求而且還有很多功能可供開發(fā),有著廣泛的應(yīng)用領(lǐng)域。20世紀(jì)80年代中期以后,intel公司以專利轉(zhuǎn)讓的形式把8051內(nèi)核技術(shù)轉(zhuǎn)讓給許多半導(dǎo)體芯片生產(chǎn)廠家,如atmel、philips、analog、devices、dallas等。這些廠家生產(chǎn)的芯片是mcs-51系列的兼容產(chǎn)品,準(zhǔn)確地說是與mcs-51指令系統(tǒng)兼容的單片機。這些兼容機與8051的系統(tǒng)結(jié)構(gòu)(主要是指令系統(tǒng))相同,采用cmos工藝,因而,常用80c51系列來稱呼所有具有8051指令系統(tǒng)的單片機,它們對8051單片機一般都作了一些擴充,更有特點。其功能和市場競爭力更強,不該
6、把它們直接稱呼為mcs-51系列單片機,因為mcs只是intel公司專用的單片機系列型號。mcs-51系列及80c51單片機有多種品種。它們的引腳及指令系統(tǒng)相互兼容,主要在內(nèi)部結(jié)構(gòu)上有些區(qū)別。目前使用的mcs-51系列單片機及其兼容產(chǎn)品通常分成以下幾類:基本型、增強型、低功耗型、專用型、超8位型、片內(nèi)閃爍存儲器型。1.2課題來源在日常生活和工作中,我們常常用到定時控制,如擴印過程中的曝光定時等。早期常用的一些時間控制單元都使用模擬電路設(shè)計制作的,其定時準(zhǔn)確性和重復(fù)精度都不是很理想,現(xiàn)在基本上都是基于數(shù)字技術(shù)的新一代產(chǎn)品,隨著單片機性能價格比的不斷提高,新一代產(chǎn)品的應(yīng)用也越來越廣泛,大可構(gòu)成復(fù)雜
7、的工業(yè)過程控制系統(tǒng),完成復(fù)雜的控制功能。小則可以用于家電控制,甚至可以用于兒童電子玩具。它功能強大,體積小,質(zhì)量輕,靈活好用,配以適當(dāng)?shù)慕涌谛酒梢詷?gòu)造各種各樣、功能各異的微電子產(chǎn)品。隨著電子技術(shù)的飛速發(fā)展,家用電器和辦公電子設(shè)備逐漸增多,不同的設(shè)備都有自己的控制器,使用起來很不方便。根據(jù)這種實際情況,設(shè)計了一個單片機多功能定時系統(tǒng),它可以避免多種控制器的混淆,利用一個控制器對多路電器進(jìn)行控制,同時又可以進(jìn)行時鐘校準(zhǔn)和定點打鈴。它可以執(zhí)行不同的時間表(考試時間和日常作息時間)的打鈴,可以任意設(shè)置時間。這種具有人們所需要的智能化特性的產(chǎn)品減輕了人的勞動,擴大了數(shù)字化的范圍,為家庭數(shù)字化提供了可
8、能。第二章 mcs-51單片機的結(jié)構(gòu)mcs-51單片機是把那些作為控制應(yīng)用所必需的基本內(nèi)容都集成在一個尺寸有限的集成電路芯片上。如果按功能劃分,它由如下功能部件組成,即微處理器(cpu)、數(shù)據(jù)存儲器(ram)、程序存儲器(rom/eprom)、并行i/o口、串行口、定時器/計數(shù)器、中斷系統(tǒng)及特殊功能寄存器(sfr)。它們都是通過片內(nèi)單一總線連接而成,其基本結(jié)構(gòu)依舊是cpu加上外圍芯片的傳統(tǒng)結(jié)構(gòu)模式。但對各種功能部件的控制是采用特殊功能寄存器(sfr)的集中控制方式。2.1 控制器控制器是單片機的指揮控制部件,控制器的主要任務(wù)是識別指令,并根據(jù)指令的性質(zhì)控制單片機各功能部件,從而保證單片機各部分
9、能自動而協(xié)調(diào)地工作。單片機執(zhí)行指令是在控制器的控制下進(jìn)行的。首先從程序存儲器中讀出指令,送指令寄存器保存,然后送至指令譯碼器進(jìn)行譯碼,譯碼結(jié)果送定時控制邏輯電路,由定時控制邏輯產(chǎn)生各種定時信號和控制信號,再送到單片機的各個部件去進(jìn)行相應(yīng)的操作。這就是執(zhí)行一條指令的全過程,執(zhí)行程序就是不斷重復(fù)這一過程??刂破髦饕ǔ绦蛴嫈?shù)器、程序地址寄存器、指令寄存器ir、指令譯碼器、條件轉(zhuǎn)移邏輯電路及時序控制邏輯電路。2.2 存儲器的結(jié)構(gòu)mcs-51單片機存儲器采用的是哈佛結(jié)構(gòu),即程序存儲器空間和數(shù)據(jù)存儲器空間截然分開,程序存儲器和數(shù)據(jù)存儲器各有自己的尋址方式,尋址空間和控制系統(tǒng)。這種結(jié)構(gòu)對于單片機面向控制
10、的實際應(yīng)用極為方便,有利.在8051/8751彈片擊中,不僅在片內(nèi)集成了一定容量的程序存儲器和數(shù)據(jù)存儲器及眾多的特殊功能寄存器,而且還具有極強的外存儲器的擴展能力,尋址能力分別可達(dá)64kb,尋址和操作簡單方便.mcs-51的存儲器空間可劃分為如下幾類:1. 程序存儲器單片機系統(tǒng)之所以能夠按照一定的次序進(jìn)行工作,主要是程序存儲器中存放了經(jīng)調(diào)試正確的應(yīng)用程序和表格之類的固定常數(shù)。程序?qū)嶋H上是一串二進(jìn)制碼,程序存儲器可以分為片內(nèi)和片外兩部分。8031由于無內(nèi)部存儲器,所以只能外擴程序存儲器來存放程序。mcs-51單片機復(fù)位后,程序存儲器pc的內(nèi)容為0000h,故系統(tǒng)必須從0000h單元開始取指令,執(zhí)
11、行程序.程序存儲器中的0000h地址是系統(tǒng)程序的啟動地址.一般在該單元存放一條絕對跳轉(zhuǎn)指令,跳向用戶設(shè)計的主程序的起始地址。2. 內(nèi)部數(shù)據(jù)存儲器mcs-51單片機內(nèi)部有128個字節(jié)的隨機存取存儲器ram,作為用戶的數(shù)據(jù)寄存器,它能滿足大多數(shù)控制型應(yīng)用場合的需要,用作處理問題的數(shù)據(jù)緩沖器。mcs-51單片機的片內(nèi)存儲器的字節(jié)地址為00h-7fh.mcs-51單片機對其內(nèi)部ram的存儲器有很豐富的操作指令,從而使得用戶在設(shè)計程序時非常方便。地址為00h-1fh的32個單元是4組通用工作寄存器區(qū),每個區(qū)含8個8位寄存器,編號為r7-r0。用戶可以通過指令改變psw中的rs1,rs0這二位來切換當(dāng)前的
12、工作寄存器區(qū),這種功能給軟件設(shè)計帶來極大的方便,特別是在中斷嵌套時,為實現(xiàn)工作寄存器現(xiàn)場內(nèi)容保護(hù)提供了極大的方便。3. 特殊功能寄存器(sfr-special function register)特殊功能寄存器反映了mcs-51單片機的狀態(tài),實際上是mcs-51單片機各功能部件的狀態(tài)及控制寄存器.sfr綜合的,實際的反應(yīng)了整個單片機基本系統(tǒng)內(nèi)部的工作狀態(tài)及工作方式.sfr實質(zhì)上是一些具有特殊功能的片內(nèi)ram單元,字節(jié)地址范圍為80h-ffh.特殊功能寄存器的總數(shù)為21個,離散的分布在該區(qū)域中,其中有些sfr還可以進(jìn)行位尋址.128個字節(jié)的sfr塊中僅有21個字節(jié)是由定義的.對于尚未定義的字節(jié)地
13、址單元,用戶不能作寄存器使用,若訪問沒有定義的單元,則將得到一個不確定的隨機數(shù).2.3 并行i/o口mcs-51單片機共有4個雙向的8位并行i/o端口(port),分別記作p0-p3,共有32根口線,各口的每一位均由鎖存器、輸出驅(qū)動器和輸入緩沖器所組成。實際上p0-p3已被歸入特殊功能寄存器之列。這四個口除了按字節(jié)尋址以外,還可以按位尋址。由于它們在結(jié)構(gòu)上有一些差異,故各口的性質(zhì)和功能有一些差異。p0口是雙向8位三態(tài)i/o口,此口為地址總線(低8位)及數(shù)據(jù)總線分時復(fù)用口,可驅(qū)動8個ls型ttl負(fù)載。p1口是8位準(zhǔn)雙向i/o口,可驅(qū)動4個ls 型負(fù)載。p2口是8位準(zhǔn)雙向i/o口,與地址總線(高8
14、位)復(fù)用,可驅(qū)動4個ls型ttl負(fù)載。p3口是8位準(zhǔn)雙向i/o口,是雙功能復(fù)用口,可驅(qū)動4個ls型ttl負(fù)載。p1口、p2口、p3口各i/o口線片內(nèi)均有固定的上拉電阻,當(dāng)這3個準(zhǔn)雙向i/o口做輸入口使用時,要向該口先寫“1”,另外準(zhǔn)雙向i/o口無高阻的“浮空”狀態(tài),故稱為雙向三態(tài)i/o 口。2.4 時鐘電路與時序時鐘電路用于產(chǎn)生mcs-51單片機工作時所必需的時鐘信號。mcs-51單片機本身就是一個復(fù)雜的同步時序電路,為保證同步工作方式的實現(xiàn),mcs-51單片機應(yīng)在唯一的時鐘信號控制下,嚴(yán)格地按時序執(zhí)行進(jìn)行工作,而時序所研究的是指令執(zhí)行中各個信號的關(guān)系。在執(zhí)行指令時,cpu首先要到程序存儲器中
15、取出需要執(zhí)行的指令操作碼,然后譯碼,并由時序電路產(chǎn)生一系列控制信號去完成指令所規(guī)定的操作。cpu發(fā)出的時序信號有兩類,一類用于片內(nèi)對各個功能部件的控制,這列信號很多。另一類用于片外存儲器或i/o端口的控制,這部分時序?qū)τ诜治?、設(shè)計硬件接口電路至關(guān)重要。這也是單片機應(yīng)用系統(tǒng)設(shè)計者普遍關(guān)心的問題。2.5 單片機的應(yīng)用領(lǐng)域單片機應(yīng)用領(lǐng)域可以歸納為以下幾個方面。1智能儀表用單片機系統(tǒng)取代老式的測量、控制儀表,實現(xiàn)從模擬儀表向數(shù)字化、智能化儀表的轉(zhuǎn)化,如各種溫度儀表、壓力儀表、流量儀表、電能計量儀表等。 2. 測控系統(tǒng) 用單片機取代原有的復(fù)雜的模擬數(shù)字電路,完成各種工業(yè)控制、數(shù)據(jù)采集系統(tǒng)等工作。 3電能
16、變換 應(yīng)用單片機設(shè)計變頻調(diào)速控制電路。 4通信 用單片機開發(fā)通信模塊、通信器材等。 5機電產(chǎn)品 應(yīng)用單片機檢測、控制傳統(tǒng)的機械產(chǎn)品,使傳統(tǒng)的機械產(chǎn)品結(jié)構(gòu)簡化,控制智能化,提高了機電產(chǎn)品的可靠性,增強了產(chǎn)品的功能。 6智能接口在數(shù)據(jù)傳輸中,用單片機實現(xiàn)外部設(shè)備與微機通信。第三章 系統(tǒng)設(shè)計要求3.1基本功能(1)能夠顯示時分秒(2)能夠調(diào)整時分秒3.2 擴展功能(1)能夠任意設(shè)置定時時間(2)定時時間到鬧鈴能夠報警(3)實現(xiàn)了秒表功能第四章 硬件總體設(shè)計方案用一揚聲器來本次設(shè)計時鐘電路,使用了at89c51單片機芯片控制電路,單片機控制電路簡單且省去了很多復(fù)雜的線路,使得電路簡明易懂,使用鍵盤鍵上
17、的按鍵來調(diào)整時鐘的時、分、秒,進(jìn)行定時提醒,同時使用c語言程序來控制整個時鐘顯示,使得編程變得更容易,這樣通過四個模塊:鍵盤、芯片、揚聲器、顯示屏即可滿足設(shè)計要求。4.1系統(tǒng)功能實現(xiàn)總體設(shè)計思路如圖4-10 所示為at89s51芯片的引腳圖此設(shè)計原理框圖如圖4-11所示,此電路包括以下四個部分:單片機,鍵盤,鬧鈴電路及顯示電路。圖4-11 設(shè)計原理框圖經(jīng)多方論證硬件我們小組采用at89c51單片機和7sed八位共陽極數(shù)碼管等來實現(xiàn)單片機電子時鐘的功能。詳細(xì)元器件列表如表4.12所示:表4.12 詳細(xì)元器件列表at89c511片7sed八位共陽極數(shù)碼管1片npn三極管1個104p電容6個30p電
18、容2個10k電阻6個560歐姆電阻8個200歐姆電阻1個100歐姆電阻6個4.2各部分功能實現(xiàn)(1) 單片機發(fā)送的信號通過程序控制最終在數(shù)碼管上顯示出來。(2) 單片機通過輸出各種電脈沖信號來驅(qū)動控制各部分正常工作。(3) 為使時鐘走時與標(biāo)準(zhǔn)時間一致,校時電路是必不可少的,鍵盤用來校正數(shù)碼管上顯示的時間。單片機通過控制鬧鈴電路來完成 定時鬧鐘的功能4.3系統(tǒng)工作原理設(shè)計的電路主要由四模塊構(gòu)成:單片機控制電路,顯示電路、鬧鈴電路以及校正電路。詳細(xì)電路功能圖如圖4-30: 詳細(xì)電路功能圖如圖4-30本設(shè)計采用c語言程序設(shè)計,使單片機控制數(shù)碼管顯示時、分、秒,當(dāng)秒計數(shù)計滿60時就向分進(jìn)位,分計數(shù)器計
19、滿60后向時計數(shù)器進(jìn)位,小時計數(shù)器按“23翻0”規(guī)律計數(shù)。時、分、秒的計數(shù)結(jié)果經(jīng)過數(shù)據(jù)處理可直接送顯示器顯示。當(dāng)計時發(fā)生誤差的時候可以用校時電路進(jìn)行校正。設(shè)計采用的是時、分、秒顯示,單片機對數(shù)據(jù)進(jìn)行處理同時在數(shù)碼管上顯示。4.4時鐘各功能分析及圖解(1) 時鐘運行圖仿真開始運行時,或按下key4鍵時,時鐘從12:00:00開始運行,其中key2鍵對分進(jìn)行調(diào)整,key3對小時進(jìn)行調(diào)整,key6可以讓時鐘暫停。時鐘運行圖如圖 4-41 所示:(2)秒表計時圖當(dāng)按下key1鍵進(jìn)入秒表計時狀態(tài),key6是秒表暫停鍵,可按key4鍵跳出秒表計時狀態(tài)。秒表計時圖如圖 4-42所示: 圖4-41 時鐘運行圖
20、圖4-42 秒表計時圖(3)鬧鈴設(shè)置圖及運行圖當(dāng)按下key5,開始定時,分別按key2調(diào)分,key3調(diào)時設(shè)置鬧鈴時間,然后按下key4鍵恢復(fù)時鐘運行狀態(tài)(圖4-43)當(dāng)鬧鈴設(shè)置時間到時,蜂鳴器將發(fā)出10秒中蜂鳴聲(圖4-44)。 圖4-43 鬧鈴時間設(shè)置圖該數(shù)字鐘是用一片at89c51單片機通過編程去驅(qū)動8個數(shù)碼管實現(xiàn)的。通過6個開關(guān)控制,從上到下6個開關(guān)key1-key6的功能分別為:key1,切換至秒表;key2,調(diào)節(jié)時間,每調(diào)一次時加1;key3, 調(diào)節(jié)時間,每調(diào)一次分加1;key4,從其它狀態(tài)切換至?xí)r鐘狀態(tài);key5,切換至鬧鐘設(shè)置狀態(tài),也可以對秒表清零;key6,秒表暫停.控制鍵分別
21、與p1.0p1.5口連接其中:a通過p2口和p3口去控制數(shù)碼管的顯示如圖所示p2口接數(shù)碼管的ag端,是控制輸出編碼,p3口接數(shù)碼管的18端,是控制動態(tài)掃描輸出b從p0.0輸出一個信號使二極管發(fā)光,二極管在設(shè)置的鬧鐘時間到了時候發(fā)光,若有樂曲可以去驅(qū)動揚聲器實現(xiàn)。 圖4-44 鬧鈴運行圖 4.5電路功能使用說明(1) 各個控制鍵的功能:可對時間進(jìn)行校準(zhǔn)調(diào)節(jié)(只能加);按下設(shè)置鍵數(shù)字時鐘進(jìn)入鬧鐘設(shè)置狀態(tài),設(shè)置鬧鐘的時間;時加、分加鍵是在校準(zhǔn)時間時或設(shè)置鬧鐘時間對小時數(shù)或分鐘數(shù)調(diào)節(jié)而設(shè)置的;按下秒切換鍵就可以進(jìn)入秒表模式,同時秒表也開始計時,按下秒表暫停、復(fù)位鍵就暫停、歸零,如果要重新對秒計時則可以
22、按秒表開始、復(fù)位;清零鍵可以對鬧鐘清零。(2) at89c51單片機,通過編寫程序?qū)?shù)碼顯示進(jìn)行控制。(3) 八個7段數(shù)碼管顯示時鐘和秒表信號第五章 軟件總體設(shè)計方案5.1 主程序流程圖軟件程序從開始執(zhí)行,先通過初始化各個寄存器,經(jīng)過掃描按鍵來決定是否設(shè)定參數(shù)來執(zhí)行相應(yīng)功能的程序,進(jìn)而在數(shù)碼管上顯示。如圖5-10: 圖3-1 主程序流程圖5.2總中斷程序流程 圖5-20 中斷流程圖時間的顯示通過此中斷程序來控制,并且通過與設(shè)定的時間進(jìn)行比較來判斷是否讓鬧鈴工作。程序中包含時間的設(shè)定,如設(shè)定tcount來使秒等工作,進(jìn)而來控制分和時。如上圖圖5-20。a. 秒表中斷程序流程秒表功能通過另一個程序
23、來實現(xiàn)。通過保護(hù)主程序的數(shù)據(jù)來進(jìn)行秒表功能。程序中需要設(shè)置秒表的具體顯示方法。如圖5-3: n n 圖5-3秒表中斷程序流程圖b.按鍵程序流程圖5-4為時鐘和鬧鐘的調(diào)節(jié),程序中通過掃描來判斷按鍵是否按下進(jìn)行時間和鬧鐘的調(diào)節(jié)。圖5-4按鍵程序流程圖圖5-5為進(jìn)入中斷和清零圖,程序中通過掃描來判斷按鍵是否按下進(jìn)行執(zhí)行相應(yīng)的中斷來事實現(xiàn)相應(yīng)的功能。圖5-5 中斷和清零程序流程圖5.3控制電路的c語言源程序根據(jù)流程圖,經(jīng)過認(rèn)真分析得出控制電路的源程序如下:#include<reg51.h>#define uchar unsigned char#define uint unsigned in
24、t#define delay_time 3/*宏定義*/uchar k,dat=0,0,0,0,0,0,0,0;uint tcount,t,u;uchar dat1=0,0,0,0,0,0,2,1;uchar dat2=0,0,0,0,0,0,0,0;uchar alarms=0,0,0,0,0,0,0,0;uchar dis_bit=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;unsigned char code seg711=0xc0,/*0*/ 0xf9,/*1*/ 0xa4,/*2*/ 0xb0,/*3*/ 0x99,/*4*/ 0x92,/*5*/
25、 0x82,/*6*/ 0xf8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ 0xbf,/*-*/ ;/*數(shù)字顯示數(shù)組*/sbit miaobiao1=p10;sbit tminute=p11;sbit thour=p12;sbit miaobiao2=p13;sbit alarm=p14;sbit p0_0=p00;sbit p1_5=p15;sbit p1_6=p16;sbit p1_7=p17;/*端口定義*/uchar ms=0;uchar flag=0;uchar sec=0;uchar minit=0;struct timeuchar second;uchar minu
26、te;uchar hour;time1; uchar n,i;void delay(n) while(n-)for(i=120;i>0;i-); /*延時子程序*/ void modify(void) ea=0; if(thour=0) if(flag=0) dat16+;delay(280); if(dat16>9) dat16=0;dat17+;else if(dat17>1)&&(dat16>3) dat17=0; dat16=0; if(flag=1) alarms6+;delay(300); if(alarms6>9) alarms6=0
27、;alarms7+; if(alarms7>2) alarms7=0; dat6=alarms6; dat7=alarms7; if(tminute=0) if(flag=0) dat13+;delay(280); if(dat3>=9) dat14+;dat13=0;if(dat14>5) dat14=0; if(flag=1) alarms3+;delay(300); if(alarms3>9) alarms4+;alarms3=0; if(alarms4>5) alarms4=0; dat3=alarms3;dat4=alarms4; if(miaobiao
28、1=0)tr0=0;et0=0;tr1=1;et1=1; if(miaobiao2=0) tr0=1;et0=1;tr1=0;et1=0; dat20=0; dat21=0; dat23=0; dat24=0; dat26=0; dat27=0; ms=0; sec=0; minit=0; if(p1_5=0) tr0=0;et0=0;tr1=0;et1=0; if(alarm=0)tr0=0;et0=0;tr1=0;et1=0;flag=1; dat0=0; dat1=0;dat2=10; dat3=0;dat4=0;dat5=10;dat6=0;dat7=0; ea=1;/*按鍵掃描*/v
29、oid init(void)tmod = 0x11; th0 = 0xdb;tl0 =0xff;th1=0xdb;tl1=0xff; et0 = 1; /10mset1=1;/tr1=1; tr0=1; tcount=0;ms=0;sec=0;minit=0;ea = 1;/*初始化*/void test(void)for(k=0;k<8;k+)p3=dis_bitk;p2=seg7datk; delay(1);p3=0x00; /*數(shù)字顯示*/void main() init(); delay(10); while(1) modify(); test(); /*主函數(shù)*/void di
30、play() interrupt 1 et0=0; tr0=0; th0 = 0xdb; tl0 = 0xff; tr0=1; tcount+; if(tcount=100) time1.second+; tcount=0;dat10=(time1.second)%10;dat11=(time1.second)/10; if(time1.second=60) dat10=0;dat11=0; time1.second=0; time1.minute+; dat13=(time1.minute)%10;dat14=(time1.minute)/10; if(time1.minute=60) ti
31、me1.minute=0; time1.hour+; dat16=time1.hour%10;dat17=time1.hour/10; if(time1.hour>23) time1.hour=0; dat5=10; dat2=10; dat0=dat10; dat1=dat11; dat3=dat13; dat4=dat14; dat6=dat16; dat7=dat17; flag=0; p0=0x01;if(alarms7=dat17)&&(alarms6=dat16)&&(alarms4=dat14)&&(alarms3=dat13
32、)&&(dat11<1) p0=0x00; et0=1;void time_2(void)interrupt 3 ea=0; tr0=0; th1=0xdb; tl1=0xff; tr1=1; ms+; dat20=ms%10; dat21=ms/10; if(ms>=100) ms=0; sec+; dat23=sec%10; dat24=sec/10; if(sec>=60) sec=0; minit+; dat26=minit%10; dat27=minit/10; dat5=10; dat2=10; dat0=dat20; dat1=dat21; da
33、t3=dat23; dat4=dat24; dat6=dat26; dat7=dat27; ea=1第六章 課程設(shè)計結(jié)果分析此時鐘設(shè)計是利用protues仿真軟件進(jìn)行仿真,基本上實現(xiàn)了課程設(shè)計要求實現(xiàn)的功能。硬件部分設(shè)置了的六個按鍵。當(dāng)按鍵一按下時,進(jìn)入秒表顯示狀態(tài),秒表開始計時,當(dāng)按鍵六按下時,秒表暫停;當(dāng)按鍵四按下時恢復(fù)到時間顯示功能;當(dāng)按鍵二按下時,進(jìn)入調(diào)分狀態(tài),按一次,分加一,60一循環(huán);按鍵三按下時,進(jìn)入調(diào)時狀態(tài),按一次,時加一,60一循環(huán);按鍵五按下時,進(jìn)入鬧鈴設(shè)置功能,緊接著按下按鍵二和按鍵三進(jìn)行時和分的設(shè)置,再按下按鍵4恢復(fù)顯示時間,當(dāng)顯示的時間和定時設(shè)置的時間一致時,蜂鳴器發(fā)
34、出蜂鳴聲,蜂鳴時間我們設(shè)置為10秒。另外,鬧鈴電路有音樂鬧鐘的擴展的功能(可以將蜂鳴器換成揚聲器再加一段音樂程序即可實現(xiàn))。調(diào)試階段,出現(xiàn)一些問題。比如,實際小時顯示到29才歸零,分鐘顯示到60才進(jìn)一經(jīng)過軟件調(diào)試,以上問題均一一排除,結(jié)果達(dá)到預(yù)期目標(biāo)。但時間有限,部分?jǐn)U展功能不能及時實現(xiàn),比如音樂鬧鈴。 第七章 結(jié)論與展望7.1 結(jié)論單片機多功能定時系統(tǒng)理論上能很好的達(dá)到了學(xué)校教學(xué)要求,發(fā)揮了單片機在智能化方面的應(yīng)用。該系統(tǒng)的設(shè)計很好的滿足當(dāng)前學(xué)校教學(xué)的需要,是一個理想的智能化的設(shè)計。它具有一個走時精確的實時鐘,可以任意設(shè)置時間,可以控制時間表的轉(zhuǎn)換,時鐘的顯示功能等??梢酝ㄟ^按鍵操作和數(shù)字顯
35、示。該系統(tǒng)規(guī)模小,但是功能較多,操作簡單,造價低,應(yīng)用非常廣泛。該系統(tǒng)的設(shè)計為向家庭數(shù)字化方向發(fā)展又前進(jìn)了一步。同時又?jǐn)U大了單片機的應(yīng)用領(lǐng)域。7.2 單片機的發(fā)展趨勢 自單片機出現(xiàn)至今,單片機技術(shù)已走過了幾十年的發(fā)展路程。縱觀幾十年來單片機發(fā)展歷程可以看出,單片機技術(shù)的發(fā)展以微處理器(mpu)技術(shù)及超大規(guī)模集成電路技術(shù)的發(fā)展為先導(dǎo),拉動廣泛的應(yīng)用領(lǐng)域,表現(xiàn)出比微處理器更具個性的發(fā)展趨勢:1.采用先進(jìn)結(jié)構(gòu)以實現(xiàn)高性能在過去的一段時間內(nèi),單片機的指令運行速度一直在10mips以下,這對于應(yīng)用在工業(yè)控制領(lǐng)域內(nèi)的單片機來說是足夠了,但當(dāng)單片機被應(yīng)用在通訊及dsp領(lǐng)域作為高速運算、編碼或解碼時,就會出現(xiàn)
36、因指令運行速度不夠而限制單片機應(yīng)用的情形,因此提高單片機指令運行速度已經(jīng)成為迫切需要解決的問題。2.進(jìn)一步降低功耗、基于80c51的飛利浦低功率、低系統(tǒng)成本微控制器51lpc系列是業(yè)界推動單片機向低功耗方向發(fā)展的主導(dǎo)單片機系列之一。51lpc系列單片機采用以下三種方法降低功耗:(1)使系統(tǒng)進(jìn)入空閑模式,在空閑模式下,只有外圍器件在工作,任意的復(fù)位及中斷均可結(jié)束空閑模式;(2)使系統(tǒng)進(jìn)入低功耗模式,在低功耗模式下,振蕩器停止工作,是功耗降到最?。?)使系統(tǒng)進(jìn)入低電壓eprom操作;eprom包含了模擬電路,當(dāng)vcc高于4v時,可通過軟件使這些模擬電路掉電以降低功耗,在上電情況下可使系統(tǒng)退出該模式。3.采用flash memory隨著半導(dǎo)體工藝技術(shù)的不斷進(jìn)步,mpu的flash版本逐漸替代了原有的otp
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年山東公務(wù)員考試申論試題(B卷)
- 系統(tǒng)設(shè)備安裝工作承攬合同(3篇)
- 2025年崗?fù)べ徺I合同示范文本
- 2025年協(xié)調(diào)解除合同指導(dǎo)
- 2025年工程勘察服務(wù)項目規(guī)劃申請報告模板
- 2025年企業(yè)零成本用車服務(wù)合同范本
- 2025年苯噻草胺項目立項申請報告模式
- 2025年二手奢侈品交易平臺合作協(xié)議
- 2025年協(xié)議書保證金實務(wù)指導(dǎo)
- 2025年體育場館租賃預(yù)付款協(xié)議
- 鋼筋工程精細(xì)化管理指南(中建內(nèi)部)
- 核酸的分離與純化技術(shù)
- 2024年山西省高考考前適應(yīng)性測試 (一模)英語試卷(含答案詳解)
- 教科版六年級下冊科學(xué)第三單元《宇宙》教材分析及全部教案(定稿;共7課時)
- 2024年中國鐵路投資集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 干部人事檔案數(shù)字化 制度
- 經(jīng)營開發(fā)部工作目標(biāo)責(zé)任書
- 小班繪本教學(xué)《藏在哪里了》課件
- 滄州師范學(xué)院學(xué)士學(xué)位論文寫作指南2020版
- 手機歸屬地表格
- 《職業(yè)教育》專業(yè)知識考試復(fù)習(xí)題庫及答案
評論
0/150
提交評論