多動(dòng)能六位電子鐘設(shè)計(jì)方案_第1頁(yè)
多動(dòng)能六位電子鐘設(shè)計(jì)方案_第2頁(yè)
多動(dòng)能六位電子鐘設(shè)計(jì)方案_第3頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、多動(dòng)能六位電子鐘設(shè)計(jì)方案第一章 數(shù)字電子鐘的設(shè)計(jì)方案論證1.1 數(shù)字電子鐘的應(yīng)用意義數(shù)字電子鐘是用數(shù)字電路實(shí)現(xiàn)“時(shí)” 、“分”、“秒”數(shù)字顯示的計(jì)時(shí)裝置,主要 由振蕩器、分頻器、計(jì)數(shù)器、譯碼顯示器、校時(shí)電路、報(bào)時(shí)電路等六部分組成。這 些都是數(shù)字電路中應(yīng)用最廣的基本電路。數(shù)字電子鐘具有計(jì)時(shí)準(zhǔn)確的功能。1.2 數(shù)字電子鐘設(shè)計(jì)的要求及技術(shù)指標(biāo)1. 設(shè)計(jì)數(shù)字電子鐘實(shí)現(xiàn)準(zhǔn)確計(jì)時(shí),由六位數(shù)碼管分別顯示時(shí) 、“分”、“秒”;附加 “星期”數(shù)碼 1 位顯示。2. 時(shí)與分與秒數(shù)字顯示模塊間各設(shè)置一對(duì)不同顏色發(fā)光二極管,時(shí)間單位數(shù)字變化 時(shí)閃爍一次。3計(jì)時(shí)誤差不超過(guò) 0.05 秒。 4具有整點(diǎn)報(bào)時(shí)、手動(dòng)設(shè)置修改時(shí)

2、間功能控制功能。1.3 設(shè)計(jì)方案論證石英晶體振蕩器產(chǎn)生的時(shí)脈沖送到分頻器,分頻電路將時(shí)標(biāo)信號(hào)分成每秒一次 的方波信號(hào)。秒脈沖發(fā)生器產(chǎn)生頻率穩(wěn)定很高的秒脈沖,秒脈沖被送到一個(gè)六十進(jìn) 制秒計(jì)數(shù)器計(jì)數(shù),將計(jì)數(shù)結(jié)果送至秒個(gè)位和十位譯碼器,譯碼結(jié)果分別由兩只七段 半導(dǎo)體數(shù)碼管以十進(jìn)制數(shù)形式顯示來(lái)。 當(dāng)秒六十進(jìn)制計(jì)數(shù)器累計(jì)到第 59 秒時(shí),若再 來(lái)一個(gè)秒脈沖,秒計(jì)數(shù)器的進(jìn)位輸出就產(chǎn)生進(jìn)位脈沖(分計(jì)數(shù)脈沖) ,同時(shí),秒計(jì)數(shù) 器的十位和個(gè)位都復(fù)位到零。分計(jì)數(shù)脈沖又被送到分六十進(jìn)制計(jì)數(shù)器計(jì)數(shù),經(jīng)譯碼 電路譯碼后數(shù)碼管顯示相應(yīng)的分?jǐn)?shù)。當(dāng)計(jì)滿 59分 59秒時(shí),若再來(lái)一個(gè)秒脈沖,則 分計(jì)數(shù)器便向時(shí)計(jì)數(shù)器送出時(shí)計(jì)數(shù)脈

3、沖,同時(shí),分、秒計(jì)數(shù)器均復(fù)位到零。時(shí)計(jì)數(shù) 器是一個(gè)二十四進(jìn)制計(jì)數(shù)器,當(dāng)計(jì)數(shù)顯示 23時(shí)59分 59秒時(shí),若再來(lái)一個(gè)秒脈沖, 則時(shí)、分、秒計(jì)數(shù)器都應(yīng)回到零,并顯示( 00 00 00 )表示已到達(dá)午夜零點(diǎn),第二 天開(kāi)始繼續(xù)計(jì)數(shù)第二章設(shè)計(jì)任務(wù)2.1設(shè)計(jì)題目及要求AT89C205侈功能六位電子鐘設(shè)計(jì)制作一個(gè)多功能六位電子鐘。1、準(zhǔn)時(shí)計(jì)時(shí),數(shù)字形式顯示時(shí)、分、秒的時(shí)間;2、小時(shí)的計(jì)時(shí)要求為12翻1”分和秒的計(jì)時(shí)要求為60秒進(jìn)位;3、校正時(shí)間。2.2主體電路邏輯主體電路圖C2R1 10KC1 10uFI - +5VU1RSTC3 12MHzL1 9GND原理方框圖如圖(2.2.1):AT89C2051(

4、RXD)P3.0 (TXD)P3.1 XTAL2XTAL1(INT0)P3.2(INT1)P3.3(T0)P3.4(T1)P3.5GND+ 5VVccR3R9 220P1.4P1.3P1.7P1.6P1.5P1.2 .1(AIN1) .0(AIN0)P3.7+ 5V+ 5V+5VR111KQ29012Q3 J9012+ 5VLED1 5小寸D1LEDLED2分鐘D3LEDR14+5VQ69012Q79012LED3 5秒中R151Kf-e dc e d cpdp dpd e c b a f gMED2LEDfVbfTb ed ce d c p dp dp d e c b a f gD4LEDf

5、Tb f;b e dc e d cJ2GNDJ3oOUT6.1KQ19012U317KR182KJ1U278L05+ 5VECPOWERfc-C4I 104VinDNGVoutC5104C6100uFGND圖()六位電子鐘原理方框圖顯示電路原理顯示部分主要器件為3只兩位一體共陽(yáng)極數(shù)碼管,驅(qū)動(dòng)采用PNP型三極管驅(qū)動(dòng),各端口配有限流電阻,驅(qū)動(dòng)方式為動(dòng)態(tài)掃描,占用P3.0P3.5端口,段碼由P1.0P1.6 輸出。冒號(hào)部分采用4個(gè)3.0的紅色發(fā)光二極管,驅(qū)動(dòng)方式為獨(dú)立端口P1.7驅(qū)動(dòng)。IIIUI亠 2Q8021A圖(2.2.2-1)共陽(yáng)極 LED數(shù)碼管的內(nèi)部結(jié)構(gòu)原理圖LED數(shù)碼管要正常顯示,就要用驅(qū)

6、動(dòng)電路來(lái)驅(qū)動(dòng)數(shù)碼管的各個(gè)段碼,從而顯示出我 們要的數(shù)位,因此根據(jù)LED數(shù)碼管的驅(qū)動(dòng)方式的不同,可以分為靜態(tài)式和動(dòng)態(tài)式兩類。1. 靜態(tài)顯示驅(qū)動(dòng)靜態(tài)驅(qū)動(dòng)也稱直流驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的 I/O埠進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二-十進(jìn)位*器*進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡(jiǎn) 單,顯示亮度高,缺點(diǎn)是占用I/O埠多,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要 5X 8 = 40 根I/O埠來(lái)驅(qū)動(dòng),要知道一個(gè)89S51單片機(jī)可用的I/O埠才32個(gè)呢。故實(shí)際應(yīng)用時(shí)必 須增加*驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬體電路的復(fù)雜性。2. 動(dòng)態(tài)顯示驅(qū)動(dòng):數(shù)碼管動(dòng)態(tài)顯示介面是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之

7、一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃a,b,c,d,e,f,g,dp 的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位元選通控制電路,位元選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形, 取決于單片機(jī)對(duì)位元選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通 控制打開(kāi),該位元就顯示出字形,沒(méi)有選通的數(shù)碼管就不會(huì)亮。透過(guò)分時(shí)輪流控制各個(gè)LED數(shù)碼管的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就 是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過(guò)程中,每位元數(shù)碼管的點(diǎn)亮?xí)r間為12ms由于人的視覺(jué)暫 留現(xiàn)象及發(fā)光二極體的余輝效應(yīng),盡管實(shí)際上各

8、位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的 速度足夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和 靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O埠,而且功耗更低。圖數(shù)碼管顯示鍵盤(pán)原理:如下圖;按鍵S1S3采用復(fù)用的方式與顯示部分的 P3.5、P3.4、P3.2 口復(fù)用。其工 作方式為,在相應(yīng)端口輸出高電平時(shí)讀取按鍵的狀態(tài)并由單片機(jī)消除抖動(dòng)并賦予相應(yīng)的 鍵值。GNL圖()鍵盤(pán)原理圖計(jì)算:由于LED數(shù)碼管典型靜態(tài)電流為10mA左右,如果不接上拉電阻的話,電流將會(huì)過(guò)大燒壞數(shù)碼管,所以要加上拉電阻,經(jīng)計(jì)算電阻值需R=10V/10mA=100歐姆=1K迅響電路及輸入、輸出電路原理如下圖示;迅響電

9、路由有源蜂鳴器和PNP型三極管組成。其工作原理是當(dāng)PNP型三極管導(dǎo)通后有源蜂鳴器立即發(fā)出定頻聲響。驅(qū)動(dòng)方式為獨(dú)立端口驅(qū)動(dòng),占用P3.7 端口。輸出電路是與迅響電路復(fù)合作用的,其電路結(jié)構(gòu)為有源蜂鳴器,5.1K定值電圖() 迅響電路及輸入、輸出電路原理阻R6,排針J3并聯(lián)。當(dāng)有源蜂鳴器無(wú)迅響時(shí)J3輸出低電平,當(dāng)有源蜂鳴器發(fā)出聲響時(shí) J3輸出高電平,J3可接入數(shù)字電路等各種需要。驅(qū)動(dòng)方式為迅響復(fù)合輸出,不占端口。輸入電路是與迅響電路復(fù)合作用的,其電路結(jié)構(gòu)是在迅響電路的PNP型三極管的基極電路中接入排針J2。引腳排針可改變單片機(jī)I/O 口的電平狀態(tài),從而達(dá)到輸入的 目的。驅(qū)動(dòng)方式為復(fù)合端口驅(qū)動(dòng),占用

10、P3.7端口。本產(chǎn)品采用了單片機(jī)AT89C205偽核心器件,并配合所有的外圍電路,具有上電 復(fù)位的功能,無(wú)手動(dòng)復(fù)位功能。計(jì)算:蜂鳴器的驅(qū)動(dòng)電流一般為20-42mA從IO 口輸出接限流電阻R1,然后接 PNP三極管基極,集電極接蜂鳴器一端,另一端接地,發(fā)射結(jié)接 VCC如果電流不是很 大的話,R1取 1k,經(jīng)計(jì)算,另一端可接一電阻5.1k1ST -21 20皿D) R3.0 一一 PL7(TO) R3.1 一一 PL6XIX2 -PL5XDL1 -AI89Q051一 PL40NIQ)P3l2 -PL30NIl)Ri3 -PL2(RM4 一 PL1(M)(n)ra.5 -ploM(N)-10 11P

11、!i7圖(2.2.4-2)圖(2.2.4-1)表()管腳功能P3 口引腳功能P3.0P3.1P3.2P3.3P3.4P3.5RXD串行輸入端口)TXD(串行輸出端口)INT0(外中斷0)INT1(外中斷1)TO(定時(shí)器0外部輸入)T1(定時(shí)器1外部輸入)AT89C2051是一帶有2K字節(jié)閃速可編程可擦除只讀存儲(chǔ)體(EEPROM的低電壓,高性 能8位CMO微型計(jì)算機(jī)。如圖10.2所示。它采用ATMEL勺高密非易失存儲(chǔ)技術(shù)制造并 和工業(yè)標(biāo)準(zhǔn)MC51指令集和引腳結(jié)構(gòu)兼容。通過(guò)在單塊芯片上組合通用的CPL1和閃速存儲(chǔ)器,ATMEL AT89C205是一強(qiáng)勁的微型計(jì)算機(jī),它對(duì)許多嵌入式控制應(yīng)用提供一高

12、度靈活和成本低的解決辦法。譯碼顯示單元電路的介紹圖()譯碼顯示電路譯碼電路的功能是將秒、分、時(shí)計(jì)數(shù)器的輸出代碼進(jìn)行翻譯,變成相應(yīng)的數(shù)字。用與驅(qū)動(dòng)LED七段數(shù)碼管的譯碼器常用的有 74LS4&74LS48是BCD-7段譯碼器/驅(qū)動(dòng)器, 輸出高電平有效,專用于驅(qū)動(dòng)LED七段共陰極顯示數(shù)碼管。若將秒、分、時(shí)計(jì)數(shù)器的每 位輸出分別送到相應(yīng)七段譯嗎管的輸入端,便可以進(jìn)行不同數(shù)字的顯示。在譯碼管輸出 與數(shù)碼管之間串聯(lián)電阻R作為限流電阻。校時(shí)電路原理校時(shí)電路是數(shù)字鐘不可缺少的部分,每當(dāng)數(shù)字鐘與實(shí)際時(shí)間不符時(shí),需要根據(jù)標(biāo)準(zhǔn)時(shí)間進(jìn)行校時(shí)。K1、K2分別是時(shí)校正、分校正開(kāi)關(guān)。不校正時(shí),K1、K2開(kāi)關(guān)是閉和的。當(dāng)校

13、正時(shí)位時(shí),需要把K1開(kāi)關(guān)打開(kāi),然后用手撥動(dòng)K3開(kāi)關(guān),來(lái)回?fù)軇?dòng)一次,就能使時(shí) 位增加1,根據(jù)需要去撥動(dòng)開(kāi)關(guān)的次數(shù),校正完畢后把K1開(kāi)關(guān)閉上。校正分位時(shí)和校正 時(shí)位的方法一樣。其電路圖如下:至?xí)r個(gè)位計(jì)數(shù)器至分個(gè)位計(jì)數(shù)器JL&1&校時(shí)脈沖 1分十位 進(jìn)位脈沖秒十位 進(jìn)位脈沖3.3k+ 5V .S23圖226(校時(shí)電路)第三章設(shè)計(jì)方案3.1總體設(shè)計(jì)方案說(shuō)明AT89C2051是美國(guó)ATME公司生產(chǎn)的低電壓、高性能 CM08位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫(xiě)的只讀程序存儲(chǔ)器 (PERO)和128bytes的隨機(jī)數(shù)據(jù)存儲(chǔ)器(RAM, 器件采用ATME公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MC

14、S-51旨令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,AT89C2051單片機(jī)在電子類產(chǎn)品中有廣泛的應(yīng)用圖(3.1 )總體設(shè)計(jì)說(shuō)明數(shù)字電子鐘是用數(shù)字電路實(shí)現(xiàn)“時(shí)” 、“分”、“秒”數(shù)字顯示的計(jì)時(shí)裝置,主要由振 蕩器、分頻器、計(jì)數(shù)器、譯碼顯示器、校時(shí)電路等部分組成。而數(shù)字鐘想準(zhǔn)確的計(jì)時(shí)則 是由振蕩器產(chǎn)生的時(shí)脈沖送到分頻器,分頻電路將時(shí)標(biāo)信號(hào)分成每秒一次的方波信號(hào)。 秒脈沖發(fā)生器產(chǎn)生頻率穩(wěn)定很高的秒脈沖,秒脈沖被送到一個(gè)六十進(jìn)制秒計(jì)數(shù)器計(jì)數(shù), 將計(jì)數(shù)結(jié)果送至秒個(gè)位和十位譯碼器, 譯碼結(jié)果分別由兩只七段數(shù)碼管以十進(jìn)制數(shù)形式 顯示來(lái)。當(dāng)秒六十進(jìn)制計(jì)數(shù)器累計(jì)到第 59 秒時(shí),若再來(lái)一個(gè)秒脈沖,

15、秒計(jì)數(shù)器的進(jìn)位 輸出就產(chǎn)生進(jìn)位脈沖(分計(jì)數(shù)脈沖),同時(shí),秒計(jì)數(shù)器的十位和個(gè)位都復(fù)位到零。分計(jì) 數(shù)脈沖又被送到分六十進(jìn)制計(jì)數(shù)器計(jì)數(shù),經(jīng)譯碼電路譯碼后數(shù)碼管顯示相應(yīng)的分?jǐn)?shù)。當(dāng) 計(jì)滿 59分 59 秒時(shí),若再來(lái)一個(gè)秒脈沖,則分計(jì)數(shù)器便向時(shí)計(jì)數(shù)器送出時(shí)計(jì)數(shù)脈沖,同 時(shí),分、秒計(jì)數(shù)器均復(fù)位到零。時(shí)計(jì)數(shù)器是一個(gè)二十四進(jìn)制計(jì)數(shù)器,當(dāng)計(jì)數(shù)顯示 23 時(shí) 59分59秒時(shí),若再來(lái)一個(gè)秒脈沖, 則時(shí)、分、秒計(jì)數(shù)器都應(yīng)回到零, 并顯示(00:00:00 ) 表示已到達(dá)午夜零點(diǎn),第二天開(kāi)始繼續(xù)計(jì)數(shù)。其主要的功能模塊如圖 2-1 所示。3.2 功能使用說(shuō)明1 、功能按鍵說(shuō)明:S1為功能選擇按鍵,S2為功能擴(kuò)展按鍵,S3為

16、數(shù)值加一按鍵。2、功能及操作說(shuō)明:操作時(shí),連續(xù)短時(shí)間(小于1秒)按動(dòng)S1,即可在以上的6個(gè)功能中連續(xù)循環(huán)。 中途如果長(zhǎng)按(大于2秒)S1,則立即回到時(shí)鐘功能的狀態(tài)。1)時(shí)鐘功能:上電后即顯示 1 0: 1 0:00 ,寓意十全十美。2)校時(shí)功能:短按一次 S1 ,即當(dāng)前時(shí)間和冒號(hào)為閃爍狀態(tài),按動(dòng) S2 則小時(shí)位加 1,按動(dòng) S3 則分鐘位加 1,秒時(shí)不可調(diào)。3 )鬧鐘功能:短按二次 S1,顯示狀態(tài)為22: 10: 00,冒號(hào)為長(zhǎng)亮。按動(dòng)S2剛小 時(shí)位加1,按動(dòng)S3則分鐘位加1,秒時(shí)不可調(diào)。當(dāng)按動(dòng)小時(shí)位超過(guò) 23時(shí)則會(huì)顯示-: - : - ,這個(gè)表示關(guān)閉鬧鐘功能。鬧鈴聲為蜂鳴器長(zhǎng)鳴 3秒鐘。4

17、)倒計(jì)時(shí)功能:短按三次 S1,顯示狀態(tài)為0,冒號(hào)為長(zhǎng)滅。按動(dòng)S2則從低位依此 顯示高位,按動(dòng)S3則相應(yīng)位加1,當(dāng)S2按到第6次時(shí)會(huì)在所設(shè)定的時(shí)間狀態(tài)下開(kāi)始倒 計(jì)時(shí),再次按動(dòng)S2將再次進(jìn)入調(diào)整功能,并且停止倒計(jì)時(shí)。5 )秒表功能:短按四次S1,顯示狀態(tài)為00 : 00: 00,冒號(hào)為長(zhǎng)亮。按動(dòng)S2則開(kāi) 始秒表計(jì)時(shí),再次按動(dòng)S2則停止計(jì)時(shí),當(dāng)停止計(jì)時(shí)的時(shí)候按動(dòng) S3則秒表清零。6 )計(jì)數(shù)器功能:短按五次 S1,顯示狀態(tài)為00: 00: 00,冒號(hào)為長(zhǎng)滅,按動(dòng)S2則計(jì) 數(shù)器加1,按動(dòng)S3則計(jì)數(shù)器清零。3.3 模塊結(jié)構(gòu)與方框圖如圖(3.3)圖(3.3 )軟件系統(tǒng)結(jié)構(gòu)方框圖3.4復(fù)位電路原理AT89C2

18、051單片機(jī)的復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。復(fù)位引腳RST通過(guò)一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來(lái)抑制噪聲,在每個(gè)機(jī)器周期的S5P2斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信 號(hào)。上電復(fù)位電路是一種簡(jiǎn)單的復(fù)位電路,只要在RST復(fù)位引腳接一個(gè)電容到 VCC接一個(gè)電阻到地就可以了。上電復(fù)位是指在給系統(tǒng)上電時(shí),復(fù)位電路通過(guò)電容加到RST復(fù)位引腳一個(gè)短暫的高電平信號(hào),這個(gè)復(fù)位信號(hào)隨著 VCC對(duì)電容的充電過(guò)程而回落,所以 RST引腳復(fù)位的高電平維持時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)安全可靠的復(fù)位, RST引腳的高電平信號(hào)必須維持足夠長(zhǎng)的時(shí)間。GNDRS

19、 I圖3.4復(fù)位電路電容充電時(shí)間的計(jì)算:設(shè)Vo為電容初始電壓值,Vi為電容最終可充到或放到的電壓值, Vt為t時(shí)刻電容上的 電壓值。則 Vt VO (V, VO)?1 e tRC ,求充電到 90% Vcc 的時(shí)間(V。=0, Vi =Vcc,Vt 0.9Vcc):ttt/代入上式:0.9Vcc 0 Vcc? 1 e RC , 1 e RC 0.9, e RC 0.1, 1RC In(0.1) tRC In 10 , t 2.3RC,代入 R 10K,C 10uF 得:t 230ms, 12MHz的單片機(jī)的機(jī)器 周期為1us,所以能可靠復(fù)位。上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的。只

20、要VCC的上升時(shí)間不超過(guò)1ms就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。3.5時(shí)鐘電路時(shí)鐘是單片機(jī)的心臟,單片機(jī)各功能部件的運(yùn)行都是以時(shí)鐘頻率為基準(zhǔn),有條不 紊的一拍一拍地工作。因此,時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接 影響單片機(jī)系統(tǒng)的穩(wěn)定性。常用的時(shí)鐘電路有兩種方式:一種是內(nèi)部時(shí)鐘方式,另一種 為外部時(shí)鐘方式。本文用的是內(nèi)部時(shí)鐘方式。C11 1XT AL2C21 1XT AL1GNDGND圖(3.5 )時(shí)鐘電路AT89C2051單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,該高增益反向 放大器的輸入端為芯片引腳 XTAL1,輸出端為引腳XTAL2這兩個(gè)引腳跨接石英晶體振 蕩器和微調(diào)電容,就

21、構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。第四章軟件設(shè)計(jì)與安裝調(diào)試4.1軟件任務(wù)與安裝調(diào)試軟件流程與任務(wù)軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來(lái)了9軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來(lái)看可分為兩大 類:一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出 控制和通信等,另一類是監(jiān)控軟件,它是專門(mén)用來(lái)協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在 系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè) 計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模

22、塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和 接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù) 類型問(wèn)題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤(pán)設(shè)置選擇一種 最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來(lái)講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程 序較易出問(wèn)題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長(zhǎng)就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí) 時(shí)性要求不是太高,延誤幾十 ms甚至幾百ms也沒(méi)關(guān)系,故通常將監(jiān)控程序(鍵盤(pán)解釋

23、 程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程 序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。軟件流程圖允許丁 CJ中斷、%/程序里先定義兩個(gè)中斷定時(shí)器 TO和T1, 一個(gè)作為秒記數(shù)用,另一個(gè)做為調(diào)整時(shí)閃爍 用。編程時(shí)先將P1和P3 口數(shù)據(jù)清零,然后P1和P3 口作動(dòng)態(tài)掃描顯示,由于人的眼睛有延遲性,當(dāng)掃描頻率非常高時(shí)人就感覺(jué)數(shù)碼管一直亮著,而同時(shí)記數(shù)器在遵循時(shí)間的變化方式執(zhí)行著秒到了60分加一,分到了 60小時(shí)加一,小時(shí)到了 24就歸零。P3.7作為時(shí)

24、間調(diào)整按鈕當(dāng)長(zhǎng)按按住 2秒以上進(jìn)入校準(zhǔn)時(shí)間狀態(tài)及換檔和退出,快速點(diǎn)觸用于調(diào)節(jié)時(shí)間數(shù)值,歸零是復(fù)位按鈕。安裝與調(diào)試安裝、焊接元件到電路板上按照先低后高,先小后大,先臥式后立式的順序,正確插入元件,其高低、極性要 符合規(guī)定。1. 先從最低元件安裝。應(yīng)先安裝、焊接跳線機(jī)及電阻,用電阻多余的腳做跳線,電阻 引腳不分正負(fù),焊接時(shí)間最好控制在 2-3秒。2. 安裝、焊接瓷片電容。瓷片電容部分正負(fù)極。3. 安裝、焊接輕觸開(kāi)關(guān)4. 安裝、焊接三極管。三極管的外形基本一樣,注意分青,且方向要和電路板上的方向一致。5. 安裝、焊接12MHZ晶振。晶振沒(méi)有正負(fù)極。6. 安裝、焊接電解電容,裝的時(shí)候要躺著安裝,立著會(huì)

25、影響發(fā)光二極管的顯示不整齊。7. 安裝、焊接20腳IC插座,從用一小缺口或小圓點(diǎn)標(biāo)記的地方以逆時(shí)針數(shù)依次為1-20腳,安裝時(shí)要注意缺口和電路上的缺口相一致。20只引腳都插到位后,先用手指按住,固定對(duì)角兩只引腳,防止插入的引腳掉出來(lái),再把板放到桌面上把剩下的引腳焊好。焊好后不要急于插入單片機(jī)芯片,因?yàn)檫€有其他元件焊接,防止電烙鐵帶靜電擊壞單片機(jī)-H- UL心片。8. 安裝、焊接蜂鳴器。9. 安裝、焊接LED LED和普通二極管一樣,有正負(fù)極之分,不能裝錯(cuò)。 安裝、焊接數(shù)碼管。認(rèn)識(shí)數(shù)碼管內(nèi)部結(jié)構(gòu)。表()原件清單表序號(hào)名稱規(guī)格位號(hào)數(shù)量序號(hào)名稱規(guī)格位號(hào)數(shù)量單片機(jī)AT89C2051U1901211132

26、207三端集成穩(wěn)U22壓78L05紅色0.4寸LED1 114三極管1KQ1 Q7733152K72位共陽(yáng)數(shù)紅色0 3LED3R3 R94D1 D4416電阻5.1KR2、R10-2碼管5V有源5117按鍵10K16發(fā)光二極管 蜂鳴器U32186*6*5R15130PF電池盒C2、C3R17、R187瓷片電容0.1uF219DC插座4節(jié)538間距2.54C4、C5320R1612位排針電源線號(hào)9J1 J3121R11集成電路插20P電路板5.5*2.U1S1、S2、S310座10uFC1122說(shuō)明書(shū)1雙色2P帶熱縮管111電解電容100uFC6123112晶振12MHzY1124105*55A

27、4雙面1第五章課程設(shè)計(jì)總結(jié)(心得體會(huì))經(jīng)過(guò)大量查找資料和老師的不斷指點(diǎn),我將所設(shè)計(jì)的六位數(shù)碼管電子鐘焊接成功,雖然 不是很穩(wěn)定,但在這個(gè)過(guò)程中,我了解了各個(gè)元器件的識(shí)別與測(cè)量,也了解了 AT89C205單 片機(jī)及其引腳功能。同時(shí)明白了六位數(shù)碼管電子鐘的工作原理并實(shí)現(xiàn)了其功能。本程序設(shè)計(jì)時(shí),只用了一個(gè)定時(shí)器T0,其他的中斷全部關(guān)斷,定時(shí)器工作在兩個(gè)8位自 動(dòng)加載初始值狀態(tài)。簡(jiǎn)短的定時(shí)中斷程序只負(fù)責(zé)時(shí)間的計(jì)數(shù)和進(jìn)位功能,這是保證走時(shí)精確。 有三個(gè)輕觸式按鍵:功能選擇按鍵S1,功能擴(kuò)展按鍵S2,數(shù)值加一按鍵S3,此數(shù)字鐘采用了 一只NPN型的三極管及蜂鳴器為鬧時(shí)訊響電路。通過(guò)這次的課程設(shè)計(jì),我對(duì)自己

28、的動(dòng)手能力有了信心。面臨著就業(yè),我將充分發(fā)揮我的 主觀能動(dòng)性和在學(xué)校學(xué)到的一切知識(shí)。為母校添磚加瓦,為自己的前程奮斗!這次課程設(shè)計(jì) 的順利進(jìn)行,我深刻明白了理論知識(shí)與社會(huì)實(shí)踐相結(jié)合的道理,從中得到了以前書(shū)本知識(shí)所 不曾得到的知識(shí)。更加明白了如今信息時(shí)代電子技能知識(shí)的重要性。增強(qiáng)了我對(duì)實(shí)際工藝技 術(shù)、電子技術(shù)和設(shè)備技術(shù)等方面的認(rèn)識(shí),掌握了分析處理方法,調(diào)試、計(jì)算等基本技能的訓(xùn) 練,并具備了一定程度的實(shí)際工作能力。面對(duì)如此激烈的市場(chǎng)競(jìng)爭(zhēng)體系, 只有努力掌握好電子技能知識(shí)方可在競(jìng)爭(zhēng)中立于不敗之地,我對(duì)從事電子產(chǎn)品的開(kāi)發(fā)和研究充滿了興趣。本次課程設(shè)計(jì)是我的電子研發(fā) 之路的良好開(kāi)端。我會(huì)以此為契機(jī),在日

29、后的工作中深入學(xué)習(xí)、加深研究,在實(shí)際工作 中創(chuàng)造自己的價(jià)值。第六章參考文獻(xiàn)實(shí)驗(yàn)電子技術(shù)李振聲國(guó)防工業(yè)出版社電子技術(shù)基礎(chǔ)課程設(shè)計(jì)任為民中央廣播電視大學(xué)出版社電路基本分析石生高等教育出版社電路基礎(chǔ)徐熙文高等教育出版社單片機(jī)原理與應(yīng)用技術(shù)李全利高等教育出版社單片機(jī)應(yīng)用技術(shù)劉守義西安電子科技大學(xué)出版社高級(jí)單片機(jī)教程何立民北航出版社程序#include code senen_seg10=0x81,0xe7,0x92,0xa2,0xe4,0xa8,0x88,0xe3,0x80,0xa0; /P1.7( 冒號(hào)) 口高電平bit key1_enter=0,key2_enter=0,key3_enter=0,c

30、ountdown_mark=0,stopwatch_mark=0,count_mark=0, bell_mark=0; / 狀態(tài)標(biāo)志unsigned char program=0,program_variable=0,count_bit=0,count=0;unsigned char hour=10,minute=10,second=0;/ 時(shí)間變量unsigned char delayed_hour=22,delayed_minute=10,delayed_second=0;/ 定時(shí)變量unsigned char count_hour=0,count_minute=0,count_secon

31、d=0;/ 計(jì)時(shí)計(jì)數(shù)變量unsigned char count_time=0,count_count=0;void delay(unsigned int t) unsigned int i,j;for(i=0;it;i+)for(j=0;j=199)count_time=0;second+;if(second=60)second=0;minute+;if(minute=60)minute=0;hour+;if(hour=24)hour=0;if(delayed_hour=hour & delayed_minute=minute & second=199 & (count_second!=0|c

32、ount_minute!=0|count_hour!=0) count_count=0;count_second-;if(count_second=60) count_second=59;count_minute-; if(count_minute=60)count_minute=59;count=100) count_hour=99; if(count_second=0&count_minute=0&count_hour=0&count else P3_7=1;if(count_count=15000) count_count=14000; if(stopwatch_mark=1) coun

33、t_count+;if(count_count=2) count_count=0; count_second+;if(count_second=100) count_second=0; count_minute+;if(count_minute=60) count_minute=0; count_hour+;if(count_hour=60) count_hour=0;unsigned char show_key (void)unsigned char x=0,y=0;switch (program)case 0: P1&=senen_segsecond%10;break;case 1: if

34、(count_time=90) P1&=senen_segsecond%10; / break;case 2: if(delayed_hour=24) P1=0xfe;else P1&=senen_segdelayed_second%10;break;case 3: if(count_bit=0) P1&=senen_segcount_second%10;/else P1=0xff;break;case 4: P1&=senen_segcount_second%10;break;case 5: P1&=senen_segcount_second%10;break;P3_3=0;if(P3_5=

35、0)/ 功能鍵 1 識(shí)別key1_enter=1;if(count=90) P1&=senen_segsecond/10; / break;校正秒的十位case 2: if(delayed_hour=24) P1=0xfe;else P1&=senen_segdelayed_second/10; break;/鬧鐘秒的十位case 3: if(count_bit=1) P1&=senen_segcount_second/10;/ else P1=0xff;break;倒計(jì)時(shí)秒的十位case 4: P1&=senen_segcount_second/10; break;/秒表秒的十位case 5

36、: P1&=senen_segcount_second/10; break;P3_1=0;delay(10);P3_1=1;P1|=0xff;/計(jì)數(shù)器十位switch (program)case 0: P1&=senen_segminute%10;/ 時(shí)鐘分的個(gè)位break;case 1: if(count_time=90) P1&=senen_segminute%10; /校正分的個(gè)位break;case 2: if(delayed_hour=24) P1=0xfe;else P1&=senen_segdelayed_minute%10;break;case 3: if(count_bit=

37、2) P1&=senen_segcount_minute%10;/else P1=0xff;break;case 4: P1&=senen_segcount_minute%10;break;case 5: P1&=senen_segcount_minute%10;/ 鬧鐘分的個(gè)位倒計(jì)時(shí)分的個(gè)位/ 秒表分的個(gè)位/ 計(jì)數(shù)器百位break;P3_2=0; delay(10);P3_2=1;P1|=0xff;switch (program)case 0: P1&=senen_segminute/10;break;case 1: if(count_time=90) P1&=senen_segminute

38、/10; / break;case 2: if(delayed_hour=24) P1=0xfe;else P1&=senen_segdelayed_minute/10;break;case 3: if(count_bit=3) P1&=senen_segcount_minute/10;/ else P1=0xff;break;case 4: P1&=senen_segcount_minute/10;break;case 5: P1&=senen_segcount_minute/10;break;P3_5=0;delay(10);P3_5=1;P1|=0xff;/ 時(shí)鐘秒的個(gè)位校正秒的個(gè)位/

39、鬧鐘秒的個(gè)位倒計(jì)時(shí)秒的個(gè)位/ 秒表秒的個(gè)位/ 計(jì)數(shù)器千位switch (program)case 0: P1&=senen_seghour%10; break;/ 時(shí)鐘時(shí)的個(gè)位case 1: if(count_time=90) P1&=senen_seghour%10; /校正時(shí)的個(gè)位break;case 2: if(delayed_hour=24) P1=0xfe;else P1&=senen_segdelayed_hour%10;break;case 3: if(count_bit=4) P1&=senen_segcount_hour%10;/ else P1=0xff;break;cas

40、e 4: P1&=senen_segcount_hour%10;break;case 5: P1&=senen_segcount_hour%10;/ 鬧鐘時(shí)的個(gè)位倒計(jì)時(shí)時(shí)的個(gè)位/ 秒表時(shí)的個(gè)位break;P3_0=0;delay(10);if(P3_4=1 & key2_enter=1)x=3; key2_enter=0;P3_0=1;P1|=0xff;/確認(rèn)功能鍵 2 識(shí)別,返回 3switch (program)case 0: P1&=senen_seghour/10;/ 時(shí)鐘時(shí)的個(gè)位break;case 1: if(count_time=90) P1&=senen_seghour/10;

41、 / break;校正時(shí)的個(gè)位case 2: if(delayed_hour=24) P1=0xfe; else P1&=senen_segdelayed_hour/10; break;case 3: if(count_bit=5)P1&=senen_segcount_hour/10; / else P1=0xff;/ 鬧鐘時(shí)的個(gè)位倒計(jì)時(shí)時(shí)的個(gè)位break;case 4: P1&=senen_segcount_hour/10;/ 秒表時(shí)的個(gè)位break;case 5: P1&=senen_segcount_hour/10; break;/ 計(jì)數(shù)器萬(wàn)位P3_4=0;delay(10);if(P3

42、_5=1 & key1_enter=1) if(count=127) x=1;else x=2;key1_enter=0;count=0;if(P3_2=1 & key3_enter=1) x=4; / 確認(rèn)功能鍵1 識(shí)別,執(zhí)行退出或進(jìn)入下一個(gè)功能/確認(rèn)功能鍵 1 為長(zhǎng)按,返回 1確認(rèn)功能鍵 1 為短按,返回 2確認(rèn)功能鍵 3 識(shí)別,返回 4key3_enter=0;P3_4=1;/ 校時(shí)和顯示功能時(shí)鐘時(shí)冒號(hào)閃爍P1|=0xff;if(program=100) P1&=0xff;if(program=1 & count_time=24)hour=0; break;case 4: minute+

43、; if(minute=60)minute=0; break;break;case 2: while(program=2) switch(show_key() case 0: break;case 1: program=0; break;/ 時(shí)鐘菜單/ 校時(shí)菜單/ 鬧鐘菜單case 2: program=3;break;case 3: delayed_hour+; if(delayed_hour=25)delayed_hour=0; break;case 4: delayed_minute+;if(delayed_minute=60)delayed_minute=0;break;倒計(jì)時(shí)菜單 break;/case 3: while(program=3) swit

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論