




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)應(yīng)用設(shè)計(jì)報(bào)告課程名稱(chēng):?jiǎn)纹瑱C(jī)電子時(shí)鐘 學(xué)院:機(jī)械與自動(dòng)控制學(xué)院專(zhuān)業(yè):機(jī)械電子工程(1)班姓名:高云學(xué)號(hào):2012330300165指導(dǎo)教師:張華概述1、設(shè)計(jì)過(guò)程周次具體時(shí)間設(shè)計(jì)閃容第周1月13日指導(dǎo)老師就課程設(shè)u內(nèi)容、設(shè)汁要求、設(shè)計(jì)進(jìn)度安排、評(píng)分 標(biāo)準(zhǔn)等作具體介紹。強(qiáng)調(diào)課程設(shè)計(jì)期間紀(jì)律要求。學(xué)生確定選題,明確設(shè)計(jì)容及要求。1月14曰16 h確定選題。1月17曰20 tl根據(jù)選題査閱資料,完成方案的初步設(shè)計(jì),繪制程序流程草 圖。第周1月21曰27程序初步編寫(xiě)。1月28曰30指導(dǎo)老師進(jìn)行指導(dǎo)修改。1月30日下午上交課程設(shè)u說(shuō)明書(shū),以及答辯。2、結(jié)果仿真完全實(shí)現(xiàn)預(yù)期的結(jié)果。能夠準(zhǔn)確顯示時(shí)間,自
2、動(dòng)計(jì)時(shí),校準(zhǔn)時(shí)間。仿真結(jié)果如podfawpo.i'ahromaicpo3taiqpo.wahpdfv-c*poj»akp0.7'awie-aococfo op ju目錄m 1 $緒說(shuō)11.1研宄背景11.1選題的目的和意義11.2本課程設(shè)計(jì)的主要內(nèi)容2第2章單片機(jī)電子時(shí)鐘沒(méi)計(jì)方案沒(méi)計(jì)32.1設(shè)計(jì)方案32.1.1計(jì)時(shí)方案32.2.2顯不方案32.2.3鍵盤(pán)的基本原理42.3.4 led顯示器的基本結(jié)構(gòu)與原理7第3章硬件設(shè)計(jì)93.1硬件電路93.2數(shù)字鐘的程序設(shè)計(jì)93.2.1系統(tǒng)軟件設(shè)計(jì)流程圖103.2.2主程序103.2.3定時(shí)器中斷子程序113.2.4 led顯示子程
3、序123.2.5按鍵控制子程序12第4章結(jié)論14鈣捕15附錄1軟件清單16第1章緒論1.1研究背景20世紀(jì)末,電子技術(shù)獲得丫飛速的發(fā)展,在其推動(dòng)k,現(xiàn)代電子產(chǎn)品幾乎滲透了社 會(huì)的各個(gè)領(lǐng)域,有力地推動(dòng)了社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的提高,同時(shí)也使現(xiàn) 代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來(lái)越快。時(shí)間對(duì)人們來(lái)說(shuō)總是 那么寶貴,工作的忙碌性和繁雜性容易使人忘記當(dāng)前的時(shí)間。忘記了要做的事情,當(dāng)事 情不是很重要的吋候,這種遺忘無(wú)傷大雅。但是,一旦重要事情,一吋的耽誤可能釀成 大禍。目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢(shì)將是進(jìn)一步向著cmos化、 低功耗、小體積、大容量、高性能、低價(jià)格
4、和外圍電路內(nèi)裝化等幾個(gè)方而發(fā)展。下而是 單片機(jī)的主耍發(fā)展趨勢(shì)。單片機(jī)應(yīng)用的重耍意義還在于,它從根本上改變了傳統(tǒng)的控制 系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在己 能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱(chēng)為微控制技術(shù), 是傳統(tǒng)控制技術(shù)的一次革命。單片機(jī)模塊屮最常見(jiàn)的是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字 電路技術(shù)實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀(guān)性, 且無(wú)機(jī)械裝置,具有更更長(zhǎng)的使用壽命,因此得到了廣泛的使用。數(shù)字鐘已成為人們 日常生活中:必不可少的必需品,廣泛用于個(gè)人家庭以及車(chē)站、碼頭、劇場(chǎng)、辦公室等 公共場(chǎng)所,給人們的
5、生活、學(xué)習(xí)、工作、娛樂(lè)帶來(lái)極大的方便。由于數(shù)字集成電路技術(shù) 的發(fā)展和采用了先進(jìn)的石英技術(shù),使數(shù)字鐘具有走時(shí)準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)點(diǎn), 它還用于計(jì)時(shí)、自動(dòng)報(bào)時(shí)及自動(dòng)控制等各個(gè)領(lǐng)域。1.1選題的目的和意義單片機(jī)課程設(shè)計(jì)是單片機(jī)課程后續(xù)學(xué)習(xí)階段的一個(gè)重要的實(shí)踐學(xué)習(xí)環(huán)節(jié),它既能增 強(qiáng)學(xué)生對(duì)所學(xué)課程內(nèi)容的理解和綜合,也能培養(yǎng)學(xué)生的綜合應(yīng)用及設(shè)計(jì)能力,同時(shí),還 可以拓寬課程內(nèi)容和培養(yǎng)創(chuàng)新意識(shí)。數(shù)字鐘是采用數(shù)字電路實(shí)現(xiàn)對(duì).時(shí),分,秒.數(shù)字顯示的 計(jì)吋裝置,廣泛用于個(gè)人家庭,車(chē)站,碼頭辦公室等公共場(chǎng)所,成為人們?nèi)粘I钪胁豢缮?的必需品,由于數(shù)字集成電路的發(fā)展和石英品體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度
6、,遠(yuǎn) 遠(yuǎn)超過(guò)老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來(lái)了極大的方便,而且大大地?cái)U(kuò)展了 鐘表原先的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、時(shí)間程序自動(dòng)控制、定時(shí)廣 播、自動(dòng)起閉路燈、定時(shí)開(kāi)關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等, 所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字鐘及擴(kuò)大其應(yīng)用,有著非?,F(xiàn) 實(shí)的意義。1.2本課程設(shè)計(jì)的主要內(nèi)容本設(shè)計(jì)電子時(shí)鐘主要功能為:自動(dòng)計(jì)時(shí)功能。能顯示計(jì)時(shí)時(shí)間,顯示效果良好。 校時(shí)功能,能對(duì)時(shí)間進(jìn)行校準(zhǔn)。第2章單片機(jī)電子時(shí)鐘設(shè)計(jì)方案設(shè)計(jì)2.1設(shè)計(jì)方案單片機(jī)電子時(shí)鐘方案選擇主要涉及兩個(gè)方謝:計(jì)時(shí)方案和顯示方案。2.1.1計(jì)時(shí)方案單片機(jī)電子時(shí)鐘計(jì)時(shí)有兩
7、種方法:第一種是通過(guò)單片機(jī)內(nèi)部的定時(shí)器/計(jì)數(shù)器,采川軟件編程來(lái) 實(shí)現(xiàn)時(shí)鐘計(jì)時(shí),這種實(shí)現(xiàn)的時(shí)鐘一般稱(chēng)為軟時(shí)鐘,這種方法的硬件線(xiàn)路簡(jiǎn)單,系統(tǒng)的功能一般與軟 件設(shè)計(jì)相關(guān),通常用在對(duì)時(shí)間精度要求不高的場(chǎng)合;第二種是采用專(zhuān)用的硬件時(shí)鐘芯片計(jì)時(shí),這種 實(shí)現(xiàn)的時(shí)鐘一般稱(chēng)為硬時(shí)鐘。專(zhuān)用的時(shí)鐘芯片功能比較強(qiáng)大,除了自動(dòng)實(shí)現(xiàn)基本計(jì)時(shí)外,一般還具 有計(jì)時(shí)準(zhǔn)確,軟件編程簡(jiǎn)單,但硬件成本相對(duì)較高,通常用在對(duì)時(shí)鐘精度要求較高的場(chǎng)合。2.2.2顯示方案對(duì)于電子時(shí)鐘而言,顯示是另一個(gè)重要的環(huán)節(jié)。顯示通常采用兩種方式:led數(shù)碼管顯示和lcd 液晶顯示。其屮led數(shù)碼管顯示亮度高,顯示內(nèi)容清哲,根據(jù)具體的連接方式可分為靜態(tài)顯示
8、和動(dòng) 態(tài)顯示,在多個(gè)數(shù)碼管時(shí)一般采用動(dòng)態(tài)顯示,動(dòng)態(tài)顯示時(shí)須要占用cpu的大量時(shí)間來(lái)執(zhí)行動(dòng)態(tài)顯示 程序,顯示效果往往和顯示程序的執(zhí)行相關(guān)。lcd液晶顯示一般能顯示的信息多,顯示效果好,而 ii液晶s示器一般都帶控制器,s示過(guò)程由自帶的控制器控制,不須要cpu參與,但液晶s示器造 價(jià)相對(duì)較高。為了便于比較與學(xué)習(xí),這里給出兩種設(shè)計(jì)方案,一種是軟件計(jì)時(shí)led數(shù)碼管顯示的單片機(jī)電子 時(shí)鐘,另一種是硬件定時(shí)lcd液晶顯示的單片機(jī)電子時(shí)鐘。軟件計(jì)時(shí)led數(shù)碼管顯示的單片機(jī)電 子時(shí)鐘總體沒(méi)計(jì)框圖如圖2-1所示。硬件定時(shí)lcd液晶顯示的單片機(jī)電子時(shí)鐘總體設(shè)計(jì)框圖如圖2-2 所示。圖2-1軟件計(jì)時(shí)led顯示時(shí)鐘總
9、體框圖2.2.3鍵盤(pán)的基本原理pl 1鍵盤(pán)實(shí)際上是一組按鍵開(kāi)關(guān)的集合,平時(shí)按鍵開(kāi)關(guān)總是處于斷開(kāi)狀態(tài),當(dāng)按下鍵時(shí)它才閉合, 按下后可向計(jì)算機(jī)產(chǎn)生一脈沖波。按鍵開(kāi)關(guān)的結(jié)構(gòu)和產(chǎn)生的波形如圖2-3所示。斷開(kāi)斷開(kāi)pl 1 gnd閉合(a)鍵盤(pán)開(kāi)關(guān)的結(jié)構(gòu)(b)鍵盤(pán)產(chǎn)生的波形 圖2-3鍵盤(pán)開(kāi)關(guān)及波形示意圖當(dāng)按鍵開(kāi)關(guān)未按下時(shí),開(kāi)關(guān)處于斷開(kāi)狀態(tài),向p1.1輸入高電平;當(dāng)按鍵丌關(guān)按下時(shí),開(kāi)關(guān)處于 閉合狀態(tài),向p1.1輸入低電平。因此可通過(guò)讀入p1.1的高低電平狀態(tài)來(lái)判斷按鍵開(kāi)關(guān)是否按下。(1) 抖動(dòng)的消除在單片機(jī)應(yīng)用系統(tǒng)中,通常按鍵開(kāi)關(guān)為機(jī)械式開(kāi)關(guān),由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開(kāi)關(guān) 在閉合時(shí)往往不會(huì)馬上穩(wěn)定地
10、接通,斷開(kāi)時(shí)也不會(huì)馬上斷開(kāi),因而在閉合和斷開(kāi)的瞬間都會(huì)伴隨著 一串的抖動(dòng),如波形如圖2-4所示。按下鍵位吋產(chǎn)生的抖動(dòng)稱(chēng)為前沿抖動(dòng),松開(kāi)鍵位時(shí)產(chǎn)生的抖動(dòng) 稱(chēng)為后沿抖動(dòng)。如果對(duì)抖動(dòng)不作處理,會(huì)出現(xiàn)按一次鍵而輸入多次,力確保按一次鍵只確認(rèn)一次, 必須消除按鍵抖動(dòng)。消除按鍵抖動(dòng)通常有硬件消抖和軟件消抖兩種方法。圖2-4料動(dòng)波形示意圖硬件消抖是通過(guò)在按鍵輸出電路上添加一定的硬件線(xiàn)路來(lái)消除抖動(dòng),一般采川r-s觸發(fā)器或單 穂態(tài)電路,圖2-5是由兩個(gè)與非門(mén)組成的r-s觸發(fā)器消抖電路。平時(shí),沒(méi)有按鍵時(shí),開(kāi)關(guān)倒向下方, 上而的與非門(mén)輸入高電平,下面的與非門(mén)輸入低電平,輸岀端輸出高電平。當(dāng)按下按鍵時(shí),開(kāi)關(guān)倒 向上方
11、,上而的與非門(mén)輸入低電平,下而的與非門(mén)輸入高電平,由于r-s觸發(fā)器的反饋?zhàn)饔茫馆?出端迅速的變?yōu)榈碗娖?,而不?huì)產(chǎn)生抖動(dòng)波形,而當(dāng)按鍵松開(kāi)時(shí),開(kāi)頭冋到下方時(shí)也一樣,輸出端迅速的冋到高電平而不會(huì)產(chǎn)生抖動(dòng)波形。經(jīng)過(guò)圖中的r-s觸發(fā)器消抖后,輸出端的信號(hào)就變?yōu)闃?biāo)準(zhǔn) 的矩形波。圖2-5硬件消抖電路軟件消抖是利用延時(shí)程序消除抖動(dòng)。由于抖動(dòng)時(shí)間都比較短,因此可以這樣處理:當(dāng)檢測(cè)到有 鍵按下時(shí),執(zhí)行一段延時(shí)程序跳過(guò)抖動(dòng),再去檢測(cè),通過(guò)兩次檢測(cè)來(lái)識(shí)別一次按鍵,這樣就可以消 除前沿抖動(dòng)的影響。對(duì)于后沿抖動(dòng),由于在接收一個(gè)鍵位后,-般都要經(jīng)過(guò)一定時(shí)間再去檢測(cè)有無(wú) 按鍵,這樣就自然跳過(guò)后沿抖動(dòng)時(shí)間而消除后沿抖動(dòng)了。
12、當(dāng)然在第二次檢測(cè)時(shí)有可能發(fā)現(xiàn)又沒(méi)行鍵 按丁,這是怎么回事呢?這種情況一般是線(xiàn)路受到外部電路干擾使輸入端產(chǎn)生干擾脈沖,這時(shí)就認(rèn) 為沒(méi)有鍵輸入。在單片機(jī)應(yīng)用系統(tǒng)屮,一般都采用軟件消抖。(2) 鍵盤(pán)的分類(lèi)一般來(lái)說(shuō),單片機(jī)應(yīng)用系統(tǒng)的鍵盤(pán)可分為兩類(lèi):獨(dú)立式鍵盤(pán)和行列鍵盤(pán)。獨(dú)立式鍵盤(pán)就是各按鍵相互獨(dú)立,每個(gè)按鍵各接一根1/0接u線(xiàn),每根i/o接口線(xiàn)上的按鍵都不 會(huì)影響其他的i/o接口線(xiàn)。岡此,通過(guò)檢測(cè)各i/o接口線(xiàn)的電平狀態(tài)就可以很容易地判斷山哪個(gè)按鍵 被按下了。獨(dú)立式鍵盤(pán)如圖2-6所示。獨(dú)立式鍵盤(pán)的電路配賈靈活,軟件簡(jiǎn)笮。但每個(gè)按鍵要占用 根i/o接口線(xiàn),在按鍵數(shù)量較多時(shí),i/o接口線(xiàn)浪費(fèi)很大。故在按鍵
13、數(shù)量不多時(shí),經(jīng)常采用這種形 式。i! rrrrn8051圖2-6獨(dú)立式鍵盤(pán)結(jié)構(gòu)圖行列鍵盤(pán)往往又叫矩陣鍵盤(pán)。用兩組i/o接口線(xiàn)排列成行、列結(jié)構(gòu),一組設(shè)定為輸入,一組設(shè) 定為輸出,鍵位設(shè)置在行、列線(xiàn)的交點(diǎn)上,按鍵的一端接行線(xiàn),一端接列線(xiàn)。例如,圖2-7是由4 根行線(xiàn)和4根列線(xiàn)組成的4x4矩陣鍵盤(pán),行線(xiàn)為輸入,列線(xiàn)為輸出,可管理4x4=16個(gè)鍵。矩陣鍵盤(pán) 占用的i/o接口線(xiàn)數(shù)目少,如圖2-7中4x4矩陣鍵盤(pán)總共只用了 8根i/o接口線(xiàn),比獨(dú)立式鍵盤(pán)少了 一半的i/o接口線(xiàn),而且鍵位越多,情況越明顯。因此,在按鍵數(shù)量較多時(shí),往往采用矩陣式鍵盤(pán)。 矩陣鍵盤(pán)的處理一般注意兩個(gè)方面:鍵位的編碼和鍵位的識(shí)別。
14、(a)二進(jìn)制組合編碼(b)順序排列編碼圖2-7矩陣鍵盤(pán)的結(jié)構(gòu)圖鍵位的編碼矩陣鍵盤(pán)的編碼通常有兩種:二進(jìn)制組合編碼和順序排列編碼。(1) 二進(jìn)制組合編碼如圖2-7(a)每一根行線(xiàn)有一個(gè)編碼,每一根列線(xiàn)也有一個(gè)編碼,圖2-7 (a) 巾行線(xiàn)的編碼從下到上分別為1、2、4、8,列線(xiàn)的編碼從右到左分別為1、2、4、8,每個(gè)鍵位的編 碼直接用該鍵位的行線(xiàn)編碼和列線(xiàn)編碼組合一起得到。圖2-7 (a)中4x4鍵盤(pán)從右到左,從丁到上的 鍵位編碼分別是:11h、12h、14h、18h、21h、22h、24h、28h、41h、42h、44h、48h、81h、 82h、84h、88h。這種編碼過(guò)程簡(jiǎn)單,但得到的編碼
15、復(fù)雜,不連續(xù),處理起來(lái)不方便。(2) 順序排列編碼如圖2-7 (b),每一行有一個(gè)行首碼,每一列有一個(gè)列號(hào),圖2-7(b)中4行的 行首碼從下到上分別為0、4、8、12, 4列的列號(hào)從右到左分別是0、丨、2、3。每個(gè)鍵位的編碼用 行首碼加列號(hào)得到,即:編碼=行首碼+列號(hào)。這種編碼雖然編碼過(guò)程復(fù)雜,但得到的編碼簡(jiǎn)單,連 續(xù),處理起來(lái)方便,現(xiàn)在矩陣鍵盤(pán)一般都采用順序編碼的方法。(3) 鍵位的識(shí)別矩陣式鍵盤(pán)鍵位的識(shí)別可分為兩步:第一步是首先檢測(cè)鍵盤(pán)上是否有鍵按下;第二步是識(shí)別哪 一個(gè)鍵按下。檢測(cè)鍵盤(pán)上是否有鍵按下的處理方法是:將列線(xiàn)送入全掃描字,讀入行線(xiàn)的狀態(tài)來(lái)判別。其具 體過(guò)程如下. p2 口低四
16、位輸出都為低電平,然后讀連接行線(xiàn)的p1 口低四位,如果讀入的a容都是 高電平,說(shuō)明沒(méi)有鍵按下,則不用做下一步;如果讀入的閃容不全為1,則說(shuō)明有鍵按下,再做第 二步,識(shí)別是哪一個(gè)鍵按下。識(shí)別鍵盤(pán)中哪一個(gè)鍵按下的處理方法是:將列線(xiàn)逐列置成低電平,檢 查行輸入狀態(tài),稱(chēng)為逐列掃描。其具體過(guò)程如下:從p2.0開(kāi)始,依次輸出“0”,置對(duì)應(yīng)的列線(xiàn)力低 電平,其它列為高電平,然后從p1低四位讀入行線(xiàn)狀態(tài)。在掃描某列時(shí),如果讀入的行線(xiàn)全為“1”, 則說(shuō)明按下的鍵不在此列;如果讀入的行線(xiàn)不全為“1”,則按下的鍵必在此列,而且是該列與“0” 電平行線(xiàn)相交的交點(diǎn)上的那個(gè)鍵。為求取編碼,在逐列掃描時(shí),可用計(jì)數(shù)器記錄下當(dāng)
17、前掃描列的列 號(hào),檢測(cè)到第幾行有鍵按下,就用該行的行首碼加列號(hào)得到當(dāng)前按鍵的編碼。(4) 獨(dú)立式鍵盤(pán)與單片機(jī)的接口獨(dú)立式鍵盤(pán)每一個(gè)鍵用一根i/o接口線(xiàn)管理,電路簡(jiǎn)單,通常用于鍵位較少的情況不。對(duì)某個(gè) 鍵位的識(shí)別通過(guò)檢測(cè)對(duì)應(yīng)i/o線(xiàn)的高低電平來(lái)判斷,根據(jù)判斷結(jié)果直接進(jìn)行相應(yīng)的處理。在mcs-51單片機(jī)系統(tǒng)中,獨(dú)立式鍵盤(pán)可直接用p0p3四個(gè)并口巾的i/o線(xiàn)來(lái)連接,連接時(shí), 如果用的是p1p3 口,因?yàn)閮?nèi)部帶上拉電阻,則外部可省力上拉電阻,如果用的是p0 口,則須外 部帶上接電阻。圖2-8是通過(guò)p1 口低4位直接接4個(gè)獨(dú)立式按鍵的電路圖。直接判斷p1 口低4位 是否為低電平即可判斷相應(yīng)鍵是否按下。k
18、opi.0 pi.i pl.2 pl.38051圖2-8 pl 口接4個(gè)獨(dú)立式按鍵圖2.3.4 led顯示器的基本結(jié)構(gòu)與原理led數(shù)碼管顯示器是由發(fā)光二極管按一定的結(jié)構(gòu)組合起來(lái)的顯示器件。在單片機(jī)應(yīng)用系統(tǒng)屮通 常使用的是7段或8段式led數(shù)碼管顯示器,8段式比7段式多一個(gè)小數(shù)點(diǎn)。這里以8段式來(lái)介 紹,單個(gè)8段式led數(shù)碼管顯示器的外觀(guān)與引腳如圖2-9 (a)所示,其中a,b,c,d,e,f,g和小數(shù)點(diǎn)dp 為8段發(fā)光二極管,位置如圖中所示,組成一個(gè)“0?!毙螤?。g f com a b10 9 8 7 6dp參12 3 4 5e d com c dpaa _b*c:deohe h<f g
19、smdpohdp-w<comcom(b)共陰極(c)共陽(yáng)極圖2-9 8段式led數(shù)碼管引腳與結(jié)構(gòu)(a)引腳圖8段發(fā)光二極管的連接有兩種結(jié)構(gòu):共陰極和共陽(yáng)極。如圖2-9所示。其屮,圖(b)為共陰極結(jié) 構(gòu),8段發(fā)光二極管的陰極端連接在一起,陽(yáng)極端分開(kāi)控制,使用時(shí)公共端接地,要使哪根發(fā)光二 極管亮,則對(duì)應(yīng)的陽(yáng)極端接高電平;圖(b)為共陽(yáng)極結(jié)構(gòu),8段發(fā)光二極管的陽(yáng)極端連接在一起,陰 極端分開(kāi)控制,使用時(shí)公共端接電源,要使哪根發(fā)光二極管亮,則對(duì)應(yīng)的陰極端接地。led數(shù)碼管顯示器顯示時(shí),公共端首先要保證有效,即共陰極結(jié)構(gòu)公共端接低電平,共陽(yáng)極結(jié) 構(gòu)公共端接高電平,這個(gè)過(guò)程我們稱(chēng)為選通數(shù)碼管。再在另外
20、-端送要顯示數(shù)字的編碼,這個(gè)編碼 稱(chēng)為字段碼,8位數(shù)碼管字段碼為8位,從高位到低位的順序依次為dp、g、f、e、d、c、b、a。如: 共陰極數(shù)碼管數(shù)字“0”的字段碼為00111111b(3fh),共陽(yáng)極數(shù)碼管數(shù)字“1”的字段碼為11111001b (f9h),不同數(shù)字或字符某字段碼不一樣,對(duì)于同一個(gè)數(shù)字或字符,共陰極結(jié)構(gòu)和共陽(yáng)極結(jié)構(gòu)的字 段碼也不一樣,共陰極和共陽(yáng)極的字段碼互為反碼,常見(jiàn)的數(shù)字和字符的共陰極和共陽(yáng)極的字段碼 如表5.2所示。顯示字符共陰極字段碼共陽(yáng)極字段碼顯示字符共陰極字段碼共陽(yáng)極字段碼03hhcohc39hc6h106hf9hd5eha1h25bha4he79h86h34fh
21、bohf71h8eh466h99hp73h8ch56dh92hu3ehc1h67dh82ht31hceh707hf8hy6eh91h87fh80hl38hc7h96fh90h8.ffh00ha77h88h“滅”00ffhb7ch83h第3章硬件設(shè)計(jì)3.1硬件電路軟件計(jì)時(shí)led數(shù)碼管顯示的時(shí)鐘的具體硬件電路如圖2-10所示,其中單片機(jī)采用應(yīng)用廣泛的 at89c51,系統(tǒng)時(shí)鐘采用12mhz的晶振,8個(gè)數(shù)碼管顯示,小時(shí)與分鐘、分鐘與秒鐘之間用短橫線(xiàn) 間隔,采用共陽(yáng)極七段式數(shù)碼管,由于并口上沒(méi)有連接其它的硬件電路,所以p0 口直接作段選碼輸 出端,p2 口作位選碼輸出端。采用簡(jiǎn)化按鍵方式,只設(shè)定3個(gè)開(kāi)
22、關(guān)k0、k1和k2,通過(guò)p1 口低3 位相連。其中k0鍵為調(diào)時(shí)模式選擇鍵,k1為加1鍵,k2為減1健。3.2數(shù)字鐘的程序設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)也是工具系統(tǒng)功能的設(shè)計(jì)。單片機(jī)軟件的設(shè)計(jì)主要包括執(zhí)行軟件(完成各種實(shí) 質(zhì)性功能)的設(shè)汁和監(jiān)控軟件的設(shè)汁。單片機(jī)的軟件設(shè)計(jì)通常要考慮以下幾個(gè)方面的問(wèn)題:(1) 根據(jù)軟件功能要求,將系統(tǒng)軟件劃分為若千個(gè)相對(duì)獨(dú)立的部分,設(shè)計(jì)出合理的總體結(jié)構(gòu), 使軟件開(kāi)發(fā)清晰、簡(jiǎn)潔和流程合理;(2) 培養(yǎng)良好的編程風(fēng)格,如考慮結(jié)構(gòu)化程序沒(méi)計(jì)、實(shí)行模塊化、子程序化。既便于調(diào)試、鏈 接,又便于移植和修改;(3) 建立正確的數(shù)學(xué)模型,通過(guò)仿真提高系統(tǒng)的性能,并選取合適的參數(shù);(4) 繪制
23、程序流程圖;(5) 合理分配系統(tǒng)資源;(6) 為程序加入注釋?zhuān)岣呖勺x性,實(shí)施軟件工程;(7) 注意軟件的抗干擾設(shè)計(jì),提髙系統(tǒng)的可靠性。3.2.1系統(tǒng)軟件設(shè)計(jì)流程圖這次的數(shù)字屯子鐘設(shè)計(jì)用到很多子程序,它們的流程圖如下所示。主程序是先開(kāi)始,然后啟動(dòng) 定時(shí)器,定時(shí)器啟動(dòng)后在進(jìn)行按鍵檢測(cè),檢測(cè)完后,就可以顯示時(shí)間。圖3-1軟件流程圖3.2.2主程序間顯示是先秒個(gè)位計(jì)算顯示,然后是秒十位計(jì)算顯示,再是分個(gè)位計(jì)算顯示,再然后是分十 位顯示,再就是時(shí)個(gè)位計(jì)算顯示,最后是時(shí)十位顯示。定時(shí)器屮斷時(shí)是先檢測(cè)1秒是否到,1秒如 果到,秒單元就加1;如果沒(méi)到,就檢測(cè)1分鐘是否到,1分鐘如果到,分單元就加1;如果沒(méi)到
24、, 就檢測(cè)1小時(shí)是否到,1小時(shí)如果到,時(shí)單元就加1,如果沒(méi)到,就顯示時(shí)間。圖3-2主程序流程圖3.2.3定時(shí)器中斷子程序定時(shí)器中斷時(shí)是先檢測(cè)1秒是否到,1秒如果到,秒單元就加1;如果沒(méi)到,就檢測(cè)1分鐘是否 到,1分鐘如果到,分單元就加1;如果沒(méi)到,就檢測(cè)1小時(shí)是否到,1小時(shí)如果到時(shí)單元就加1, 如果沒(méi)到,就顯示時(shí)間。3.2.4 led顯示子程序時(shí)間顯示是先秒個(gè)位計(jì)算顯示,然后是秒十位計(jì)算顯示,再是分個(gè)位計(jì)算顯示,再然后是分十 位顯示,再就是時(shí)個(gè)位計(jì)算顯示,最后是時(shí)十位顯示。汗圖3-3 led顯zf子程序3.2.5按鍵控制子程序按鍵處理設(shè)置力:如沒(méi)有按鍵,則時(shí)鐘正常走時(shí)。當(dāng)按k0鍵一次,時(shí)鐘哲停
25、走動(dòng)進(jìn)入調(diào)小時(shí) 狀態(tài),再按k0鍵一次,進(jìn)入調(diào)分狀態(tài),再按k0鍵一次,冋到正常走時(shí);對(duì)于k1和k2按鍵,如 果是正常走時(shí),按k1和k2不起作用,如果進(jìn)入調(diào)時(shí)或調(diào)分狀態(tài),按k1可對(duì)時(shí)或分進(jìn)行加1操作, 小時(shí)加到24則回到0,分加到60則回到0;按k2可對(duì)時(shí)或分進(jìn)行減1操作,小時(shí)減到負(fù)則回到23, 分減到負(fù)則回到59。按鍵處理模塊流程如圖3-4所示。關(guān)屮斷開(kāi)中斷第4章結(jié)論我在這一次數(shù)字電子鐘的設(shè)計(jì)過(guò)程中,很是受益匪淺。通過(guò)對(duì)自己在大學(xué)三年時(shí)間里所學(xué)的知 識(shí)的回顧,并充分發(fā)揮對(duì)所學(xué)知識(shí)的理解和對(duì)畢業(yè)設(shè)計(jì)的思考及書(shū)而表達(dá)能力,最終完成了。這為 自己今后進(jìn)一步深化學(xué)習(xí),積累了一定寶貴的經(jīng)驗(yàn)。撰寫(xiě)論文的過(guò)程
26、也是專(zhuān)業(yè)知識(shí)的學(xué)習(xí)過(guò)程,它 使我運(yùn)用已有的專(zhuān)業(yè)基礎(chǔ)知識(shí),對(duì)其進(jìn)行設(shè)1十,分析和解決一個(gè)理論問(wèn)題或?qū)嶋H問(wèn)題,把知識(shí)轉(zhuǎn)化 為能力的實(shí)際訓(xùn)練。培養(yǎng)了我運(yùn)用所學(xué)知識(shí)解決實(shí)際m題的能力。通過(guò)這次課程設(shè)計(jì)我發(fā)現(xiàn),w有 理論水平提高了;才能夠?qū)⒄n本知識(shí)與實(shí)踐相整合,理論知識(shí)服務(wù)于教學(xué)實(shí)踐,以增強(qiáng)自己的動(dòng)手 能力。這個(gè)實(shí)驗(yàn)十分有意義我獲得很深刻的經(jīng)驗(yàn)。通過(guò)這次課程設(shè)計(jì),我們知道了理論和實(shí)際的距 離,也知道了理論和實(shí)際想結(jié)合的重要性,也從小得知了很多書(shū)本上無(wú)法得知的知識(shí)。我們的學(xué)習(xí) 不但要立足于書(shū)本,以解決理論和實(shí)際教學(xué)中的實(shí)際問(wèn)題為目的,還要以實(shí)踐相結(jié)合,理論問(wèn)題即 實(shí)踐課題,解決問(wèn)題即課程研究,學(xué)生自己就是
27、一個(gè)專(zhuān)家,通過(guò)自己的手來(lái)解決m題比川腦子解決 問(wèn)題更加深刻。學(xué)4就應(yīng)該采取理論與實(shí)踐結(jié)合的方式,理論的問(wèn)題,也就是實(shí)踐性的課題。這種 做法既有助于完成理論知識(shí)的鞏固,又有助于帶動(dòng)實(shí)踐,解決實(shí)際問(wèn)題,加強(qiáng)我們的動(dòng)手能力和解 決問(wèn)題的能力。對(duì)于本次課程設(shè)計(jì)遇到的問(wèn)題,主要方面有兩點(diǎn)。第一點(diǎn),流程圖的應(yīng)用問(wèn)題;選題結(jié)束后,就急于開(kāi)始編程,由于用的是匯編語(yǔ)言,所以中間 遇到了很多的問(wèn)題,以至于程序有點(diǎn)混亂,感覺(jué)忙手忙腳的,但又抓不到主要的點(diǎn)。屮間又有許多 問(wèn)題不理解,只好向老師請(qǐng)教。老師指點(diǎn)后,學(xué)會(huì)了用畫(huà)流程圖編程,這樣條理很清楚,不容易出 錯(cuò)。經(jīng)過(guò)3天努力終于調(diào)好了程序。第二點(diǎn),是仿真圖的搭建細(xì)節(jié)問(wèn)
28、題,之前雖然理解設(shè)計(jì)的原理,但是按自己想的畫(huà)好仿真圖后, 一直顯示有錯(cuò)誤,在網(wǎng)上找了好多資料后才發(fā)現(xiàn)是因?yàn)榧?xì)節(jié)的錯(cuò)誤,之后經(jīng)過(guò)耐心的修改,終于成 功。參考文獻(xiàn)1 謝維成.楊加國(guó).單片機(jī)原理與應(yīng)用及c51程序設(shè)計(jì).北京.清華大學(xué)出版社;第二版2 沙占友,孟志永.單片機(jī)外圍電路設(shè)計(jì).北京:電子工業(yè)出版社,2006.6附錄1軟件清單org0000hljmp startorg 000bhljmp initostart:movr0,#70h;主程序開(kāi)始movr7,#0chi nit:movr0,#00hincr0djnzr7jnitmov72h,#10;對(duì)連字符進(jìn)行裝值mov75h,#10movtmod
29、,#01h;選擇定時(shí)器/計(jì)數(shù)器to的方式movtl0,#0b0h,對(duì)低位賦初值movth0,#03ch;島位賦初值setb ea setb eto setb trostart 1: lcall scanlcall keyscansjmp start 1dl1ms:movr6,#14hdl1:movr7,#i9hdl2:djnzr7,dl2djnzr6,dl1retdl20ms:acall scanacall,scan;延時(shí)1子程序;延時(shí)20ms子程序ret;數(shù)碼管顯示程序幵始scan: mov a,78hmov b,#0ahdiv ab;時(shí)間秒的十位送給a,時(shí)間秒的個(gè)位送bmov 71h,a;
30、時(shí)間秒要顯示的十位mov 70h.bz;時(shí)間秒要顯示的個(gè)位mov a,79hmov b,#0ahdiv ab;時(shí)間分的十位送給a,時(shí)間分的個(gè)位送bmov 74h,a,時(shí)闖分要顯示的十位送地址mov 73h.bz;時(shí)間分要顯示的個(gè)位送地址acall scanscan1:mov a,7ah mov b,#0ah div ab mov 77h,a mov 76h,b mov rl,#70h mov r5,#0ih mov r3,#09h mov a.r5zmov p2,a;時(shí)閬時(shí)的十位送給a,時(shí)叫時(shí)的個(gè)位送b ;時(shí)問(wèn)時(shí)顯示的十位送地址 ;吋間吋要顯示的個(gè)位送地址;數(shù)碼管的顯示程序mov a,r1mo
31、v dptr,#tabmovc a,a+dptr;對(duì)字段表取值顯示mov p0,a mov a,r5 lc all dl1msincr1mov a,r5 rl amov r5,a djnz r3,scan1 mov p2,#0ffh mov p0,#0ffhret;"09"和"-n的字段表tab:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,0bfh:定時(shí)/計(jì)數(shù)器to中斷程序inito:push accpush pswclr etoclr tromov tl0,#0b0h mov th0,#03ch setb troinc 7bhmov a,7bhcjne a,#14h,outto;50ms是否到20次,沒(méi)有到就繼續(xù)執(zhí)行50ms的延時(shí)mov 7bh,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030塑料類(lèi)防水卷材行業(yè)發(fā)展分析及投資價(jià)值研究咨詢(xún)報(bào)告
- 2025-2030基于散射的光學(xué)傳感器行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030國(guó)內(nèi)男士?jī)?nèi)褲行業(yè)市場(chǎng)發(fā)展分析及競(jìng)爭(zhēng)格局與投資前景研究報(bào)告
- tiepai酒合同標(biāo)準(zhǔn)文本
- 2025-2030咖啡機(jī)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030臺(tái)式杯形封口機(jī)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030衛(wèi)生組織行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030出血性疾病治療行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 加工鋼板合同標(biāo)準(zhǔn)文本
- 2025-2030農(nóng)業(yè)養(yǎng)殖行業(yè)市場(chǎng)深度分析及前景趨勢(shì)與投資研究報(bào)告
- 《壽險(xiǎn)的功能與意義》課件
- DB15-T 3738-2024 家政服務(wù)機(jī)構(gòu)星級(jí)劃分及評(píng)定規(guī)范
- 實(shí)驗(yàn)室危險(xiǎn)化學(xué)品安全管理
- 新疆烏魯木齊市(2024年-2025年小學(xué)六年級(jí)語(yǔ)文)部編版期末考試(上學(xué)期)試卷及答案
- 初中數(shù)學(xué)新課程標(biāo)準(zhǔn)(2024年版)
- 計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)基礎(chǔ)(微課版)(周舸第6版) 各章課后習(xí)題
- 中華傳統(tǒng)文化進(jìn)中小學(xué)課程教材指南
- 醫(yī)療搶救設(shè)備儀器培訓(xùn)
- 多模態(tài)數(shù)據(jù)應(yīng)用案例分析
- 2025年中國(guó)電信云網(wǎng)資源管理技能認(rèn)證考試題庫(kù)(含各題型)
- 青春自護(hù)-遠(yuǎn)離不良誘惑主題班會(huì)
評(píng)論
0/150
提交評(píng)論