


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、模擬電子線路基礎(chǔ)課程設(shè)計(jì)報(bào)告多動能六位電子鐘專業(yè)應(yīng)用電子班級 10級電子三班學(xué)生姓名 楊振指導(dǎo)教師鄒云峰、萬行花提交日期 2011 年12月23日目 錄第一部分設(shè)計(jì)任務(wù)1.1 設(shè)計(jì)題目及要求 31.2 主體電路與各電路原理 31.2.1 主體電路圖 31.2.2 顯示電路原理 41.2.3 鍵盤原理 41.2.4 迅響電路及輸入、輸出電路原理 51.2.5 單片機(jī)原理 51.2.6 譯碼顯示單元電路 71.2.7 校時(shí)電路 7第二部分設(shè)計(jì)方案2.1 總體設(shè)計(jì)方案說明 82.2 功能使用說明 92.3 模塊結(jié)構(gòu)與方框圖 92.4 復(fù)位電路 102.5 時(shí)鐘電路 11第三部分軟件設(shè)計(jì)與調(diào)試3.1
2、軟件任務(wù)與安裝調(diào)試 123.1.1 軟件流程與任務(wù) 123.1.2 安裝與調(diào)試 14元件清單 14第四部分 課程設(shè)計(jì)總結(jié) (心得體會)15第五部分參考文獻(xiàn) 16第一部分設(shè)計(jì)任務(wù)1.1設(shè)計(jì)題目及要求AT89C2051多功能六位電子鐘設(shè)計(jì)制作一個多功能六位電子鐘。1、準(zhǔn)時(shí)計(jì)時(shí),一數(shù)字形式顯示時(shí)、分、秒的時(shí)間;2、小時(shí)的計(jì)時(shí)要求為“ 12翻1”分和秒的計(jì)時(shí)要求為60秒進(jìn)位;3、校正時(shí)間。1.2主體電路邏輯圖主體電路圖原理方框圖如圖(1):R151KGND圖(1)六位電子鐘原理萬框圖顯示電路原理顯示部分主要器件為3只兩位一體共陽極數(shù)碼管,驅(qū)動采用PNP型三極管驅(qū) 動,各端口配有限流電阻,驅(qū)動方式為動態(tài)
3、掃描,占用 P3.0P3.5端口,段碼由P1.0 P1.6輸出。冒號部分采用4個3.0的紅色發(fā)光二極管,驅(qū)動方式為獨(dú)立端口 P1.7驅(qū)動。i.枷寸屋3iX35.BQX10i0MDIG.l DIG.2 L-06P08021A共陽極LED數(shù)碼管的內(nèi)部結(jié)構(gòu)原理圖:*加GD+1圖4-4-2共陽極LED數(shù)碼管的內(nèi)部結(jié)構(gòu)原理圖LED數(shù)碼管要正常顯示,就要用驅(qū)動電路來驅(qū)動數(shù)碼管的各個段碼,從而顯示出我們 要的數(shù)位,因此根據(jù)LED數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。1. 靜態(tài)顯示驅(qū)動靜態(tài)驅(qū)動也稱直流驅(qū)動。靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個段碼都由一個單片機(jī)的I/O 埠進(jìn)行驅(qū)動,或者使用如BCD碼二
4、-十進(jìn)位*器*進(jìn)行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點(diǎn)是編程簡單,顯 示亮度高,缺點(diǎn)是占用I/O埠多,如驅(qū)動5個數(shù)碼管靜態(tài)顯示則需要5X 8= 40根I/O埠來 驅(qū)動,要知道一個89S51單片機(jī)可用的I/O埠才32個呢。故實(shí)際應(yīng)用時(shí)必須增加*驅(qū)動器 進(jìn)行驅(qū)動,增加了硬體電路的復(fù)雜性。2. 動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示介面是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數(shù)碼管的公共極COM曾加位元選通控制電路,位元選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出
5、字形,取決于單 片機(jī)對位元選通COh端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開, 該位元就顯示出字形,沒有選通的數(shù)碼管就不會亮。透過分時(shí)輪流控制各個LED數(shù)碼管的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位元數(shù)碼管的點(diǎn)亮?xí)r間為12ms由于人的視覺暫留現(xiàn)象及發(fā)光二極體的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足 夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示 是一樣的,能夠節(jié)省大量的I/O埠,而且功耗更低。圖4-4-1 LED數(shù)碼管正面?zhèn)€字段引腳123鍵盤原理:如下圖;按鍵S1S3采用復(fù)用的方式與
6、顯示部分的 P3.5、P3.4、P3.2 口 復(fù)用。其工作方式為,在相應(yīng)端口輸出高電平時(shí)讀取按鍵的狀態(tài)并由單片機(jī)消除抖動并賦 予相應(yīng)的鍵值。JLI KATSRS1GND迅響電路及輸入、輸出電路原理如下圖示;迅響電路由有源蜂鳴器和 PNP型三極管組成。其工作原理是當(dāng)PNP 型三極管導(dǎo)通后有源蜂鳴器立即發(fā)出定頻聲響。驅(qū)動方式為獨(dú)立端口驅(qū)動,占用P3.7端口。輸出電路是與迅響電路復(fù)合作用的,其電路結(jié)構(gòu)為有源蜂鳴器,5.1K定值電阻匕1_1_R6,排針J3并聯(lián)。當(dāng)有源蜂鳴器無迅響時(shí)J3輸出低電平,當(dāng)有源蜂鳴器發(fā)出聲響時(shí) J3輸 出高電平,J3可接入數(shù)字電路等各種需要。驅(qū)動方式為迅響復(fù)合輸出,不占端口。
7、輸入電路是與迅響電路復(fù)合作用的,其電路結(jié)構(gòu)是在迅響電路的PNP型三極管的基極電路中接入排針J2。引腳排針可改變單片機(jī)I/O 口的電平狀態(tài),從而達(dá)到輸入的目 的。驅(qū)動方式為復(fù)合端口驅(qū)動,占用P3.7端口。1.2.5 單片機(jī)系統(tǒng):本產(chǎn)品采用了單片機(jī)AT89C2051為核心器件,并配合所有的外圍電路,具有上電 復(fù)位的功能,無手動復(fù)位功能。RST -V1 20_WCW R3.0 -一 PL7(w) re.i 一一 PL6XD12-一 RL5XI?L1 -AI89C2051一 PL40NIO)Ri2 一一 PL3的1)戲3 一 PL2(TO)出4 一一 PLKM)0DR.5 一一 PLO(WO)(N)-
8、10 11一很7P3 口引腳功能P3.0RXD串行輸入端口)P3.1TXD(串行輸出端口)P3.2INT0(外中斷0)P3.3INT1(外中斷1)P3.4TO徒時(shí)器0外部輸入)P3.5T1(定時(shí)器1外部輸入)AT89C2051是一帶有2K字節(jié)閃速可編程可擦除只讀存儲體(EEPROM的低電壓,高性能8 位CMO微型計(jì)算機(jī)。如圖10.2所示。它采用ATME的高密非易失存儲技術(shù)制造并和工業(yè)標(biāo)準(zhǔn)MC 51指令集和引腳結(jié)構(gòu)兼容。通過在單塊芯片上組合通用的 CPL1和閃速存儲 器,ATMEL AT89C205是一強(qiáng)勁的微型計(jì)算機(jī),它對許多嵌入式控制應(yīng)用提供一高度靈活和 成本低的解決辦法。譯碼顯示單元電路的
9、介紹方框圖如圖(2):圖(2)譯碼顯示電路譯碼電路的功能是將秒、分、時(shí)計(jì)數(shù)器的輸出代碼進(jìn)行翻譯,變成相應(yīng)的數(shù)字。用與 驅(qū)動LED七段數(shù)碼管的譯碼器常用的有 74LS48。74LS48是BCD-7段譯碼器/驅(qū)動器,輸 出高電平有效,專用于驅(qū)動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í)校正、分校正開關(guān)。不校正時(shí), K1、K2開關(guān)是閉和的。當(dāng) 校正時(shí)位時(shí),需要把
10、K1開關(guān)打開,然后用手撥動 K3開關(guān),來回?fù)軇右淮危湍苁箷r(shí)位增 加1,根據(jù)需要去撥動開關(guān)的次數(shù),校正完畢后把 K1開關(guān)閉上。校正分位時(shí)和校正時(shí)位的 方法一樣。其電路圖如下:至?xí)r個位計(jì)數(shù)器至分個位計(jì)數(shù)器至分個位計(jì)數(shù)器x&1&| & &2.1總體設(shè)計(jì)方案說明AT89C2051是美國ATMEL公司生產(chǎn)的低電壓、高性能 CMOS 8位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128bytes的隨機(jī)數(shù)據(jù)存儲器(RAM), 器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,AT89C2051單
11、片機(jī)在電子類產(chǎn)品中有廣泛 的應(yīng)用。區(qū)振電路AT89C2051K草須韋詛I於底數(shù)字電子鐘是用數(shù)字電路實(shí)現(xiàn)“時(shí)”、“分”、“秒”數(shù)字顯示的計(jì)時(shí)裝置,主要由振蕩 器、分頻器、計(jì)數(shù)器、譯碼顯示器、校時(shí)電路等部分組成。而數(shù)字鐘想準(zhǔn)確的計(jì)時(shí)則是由 振蕩器產(chǎn)生的時(shí)脈沖送到分頻器,分頻電路將時(shí)標(biāo)信號分成每秒一次的方波信號。秒脈沖 發(fā)生器產(chǎn)生頻率穩(wěn)定很高的秒脈沖,秒脈沖被送到一個六十進(jìn)制秒計(jì)數(shù)器計(jì)數(shù),將計(jì)數(shù)結(jié) 果送至秒個位和十位譯碼器,譯碼結(jié)果分別由兩只七段數(shù)碼管以十進(jìn)制數(shù)形式顯示來。當(dāng) 秒六十進(jìn)制計(jì)數(shù)器累計(jì)到第59秒時(shí),若再來一個秒脈沖,秒計(jì)數(shù)器的進(jìn)位輸出就產(chǎn)生進(jìn)位 脈沖(分計(jì)數(shù)脈沖),同時(shí),秒計(jì)數(shù)器的十位和
12、個位都復(fù)位到零。分計(jì)數(shù)脈沖又被送到分 六十進(jìn)制計(jì)數(shù)器計(jì)數(shù),經(jīng)譯碼電路譯碼后數(shù)碼管顯示相應(yīng)的分?jǐn)?shù)。當(dāng)計(jì)滿 59分59秒時(shí), 若再來一個秒脈沖,則分計(jì)數(shù)器便向時(shí)計(jì)數(shù)器送出時(shí)計(jì)數(shù)脈沖,同時(shí),分、秒計(jì)數(shù)器均復(fù) 位到零。時(shí)計(jì)數(shù)器是一個二十四進(jìn)制計(jì)數(shù)器,當(dāng)計(jì)數(shù)顯示23時(shí)59分59秒時(shí),若再來一個秒脈沖,則時(shí)、分、秒計(jì)數(shù)器都應(yīng)回到零,并顯示(00:00:00)表示已到達(dá)午夜零點(diǎn),第二 天開始繼續(xù)計(jì)數(shù)。其主要的功能模塊如圖2-1所示。2.2功能使用說明;1、功能按鍵說明:S1為功能選擇按鍵,S2為功能擴(kuò)展按鍵,S3為數(shù)值加一按鍵。2、功能及操作說明:操作時(shí),連續(xù)短時(shí)間(小于1秒)按動S1,即可在以上的6個功能
13、中連續(xù)循環(huán)。 中途如果長按(大于2秒)S1,則立即回到時(shí)鐘功能的狀態(tài)。1)時(shí)鐘功能:上電后即顯示10: 10: 00 ,寓意十全十美。2)校時(shí)功能:短按一次S1,即當(dāng)前時(shí)間和冒號為閃爍狀態(tài),按動 S2則小時(shí)位加1, 按動S3則分鐘位加1,秒時(shí)不可調(diào)。3 )鬧鐘功能:短按二次S1,顯示狀態(tài)為22: 10: 00,冒號為長亮。按動S2剛小時(shí)位 加1,按動S3則分鐘位加1,秒時(shí)不可調(diào)。當(dāng)按動小時(shí)位超過 23時(shí)則會顯示-:-:-, 這個表示關(guān)閉鬧鐘功能。鬧鈴聲為蜂鳴器長鳴 3秒鐘。4 )倒計(jì)時(shí)功能:短按三次 S1,顯示狀態(tài)為0,冒號為長滅。按動S2則從低位依此顯 示高位,按動S3則相應(yīng)位加1,當(dāng)S2按
14、到第6次時(shí)會在所設(shè)定的時(shí)間狀態(tài)下開始倒計(jì)時(shí), 再次按動S2將再次進(jìn)入調(diào)整功能,并且停止倒計(jì)時(shí)。5 )秒表功能:短按四次S1,顯示狀態(tài)為00 : 00: 00,冒號為長亮。按動S2則開始 秒表計(jì)時(shí),再次按動S2則停止計(jì)時(shí),當(dāng)停止計(jì)時(shí)的時(shí)候按動 S3則秒表清零。6 )計(jì)數(shù)器功能:短按五次 S1,顯示狀態(tài)為00: 00: 00,冒號為長滅,按動S2則計(jì)數(shù) 器加1,按動S3則計(jì)數(shù)器清零。2.3模塊結(jié)構(gòu)與方框圖如圖(5)圖(5)軟件系統(tǒng)結(jié)構(gòu)方框圖2.4復(fù)位電路原理AT89C2051單片機(jī)的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位引腳 RST!過一個斯 密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,在每
15、個機(jī)器周期的 S5P2,斯密 特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號。上電復(fù)位電路是一種簡單的復(fù)位電路,只要在 RST復(fù)位引腳接一個電容到 VCC接一 個電阻到地就可以了。上電復(fù)位是指在給系統(tǒng)上電時(shí),復(fù)位電路通過電容加到RST復(fù)位引腳一個短暫的高電平信號,這個復(fù)位信號隨著VCC對電容的充電過程而回落,所以RST引 腳復(fù)位的高電平維持時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)安全可靠的復(fù)位,RST引腳的高電平信號必須維持足夠長的時(shí)間。R110H:RST圖4-1復(fù)位電路上電自動復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。只要VCC的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動
16、上電復(fù)位。2.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í)鐘方式。XT AI 2XT AL1GNBGN DAT89C2051單片機(jī)內(nèi)部有一個用于構(gòu)成振蕩器的高增益反相放大器,該高增益反向放 大器的輸入端為芯片引腳 XTAL1輸出端為引腳XTAL2這兩個引腳跨接石英晶體振蕩器和 微調(diào)電容,就構(gòu)成一個穩(wěn)定的自激振蕩器。第三部分軟件設(shè)計(jì)與安裝調(diào)試3.1軟件任務(wù)與安裝調(diào)試軟件流程
17、與任務(wù)軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來了 9。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個總體規(guī)劃。從軟件的功能來看可分為兩大類: 一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測量,計(jì)算,顯示,打印,輸出控制和 通信等,另一類是監(jiān)控軟件,它是專門用來協(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í)行模塊一一列出,并為每一個執(zhí)行模塊進(jìn)行功能定義和接 口定義(輸入輸出定義)。在各執(zhí)
18、行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問 題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最 適合的監(jiān)控程序結(jié)構(gòu)。相對來講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較 易出問題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個廠長就比較難了。軟件任務(wù)分析的另一個內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個系統(tǒng)軟件可分為后臺 程序(背景程序)和前臺程序。后臺程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí)時(shí)性 要求不是太高,延誤幾十 ms甚至幾百ms也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序) 顯示程序和打印程序等與操作者打交道的程序放在后臺程序中執(zhí)行;而前臺程
19、序安排一些 實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排 在前臺,后臺程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。軟件流程圖程序里先定義兩個中斷定時(shí)器 TO和T1, 一個作為秒記數(shù)用,另一個做為調(diào)整時(shí)閃爍用。 編程時(shí)先將P1和P3 口數(shù)據(jù)清零,然后P1和P3 口作動態(tài)掃描顯示,由于人的眼睛有延遲性, 當(dāng)掃描頻率非常高時(shí)人就感覺數(shù)碼管一直亮著,而同時(shí)記數(shù)器在遵循時(shí)間的變化方式執(zhí)行著秒到了 60分加一,分到了 60小時(shí)加一,小時(shí)到了 24就歸零。P3.7作為時(shí)間調(diào)整按鈕 當(dāng)長按按住2秒以上進(jìn)入校準(zhǔn)時(shí)間狀態(tài)及換檔和退出, 快速點(diǎn)觸用于調(diào)節(jié)時(shí)間數(shù)值,歸零是
20、 復(fù)位按鈕。安裝與調(diào)試安裝、焊接元件到電路板上按照先低后高,先小后大,先臥式后立式的順序,正確插入元件,其高低、極性要符 合規(guī)定。1. 先從最低元件安裝。應(yīng)先安裝、焊接跳線機(jī)及電阻,用電阻多余的腳做跳線,電阻引 腳不分正負(fù),焊接時(shí)間最好控制在 2-3秒。2. 安裝、焊接瓷片電容。瓷片電容部分正負(fù)極。3. 安裝、焊接輕觸開關(guān)4. 安裝、焊接三極管。三極管的外形基本一樣,注意分青,且方向要和電路板上的方向 一致。5. 安裝、焊接12MHZ晶振。晶振沒有正負(fù)極。6. 安裝、焊接電解電容,裝的時(shí)候要躺著安裝,立著會影響發(fā)光二極管的顯示不整齊。7. 安裝、焊接20腳IC插座,從用一小缺口或小圓點(diǎn)標(biāo)記的地
21、方以逆時(shí)針數(shù)依次為1-20腳,安裝時(shí)要注意缺口和電路上的缺口相一致。20只引腳都插到位后,先用手指按住,固定對角兩只引腳,防止插入的引腳掉出來,再把板放到桌面上把剩下的引腳焊好。焊好后不要急于插入單片機(jī)芯片,因?yàn)檫€有其他元件焊接,防止電烙鐵帶靜電擊壞單片機(jī)芯片。8. 安裝、焊接蜂鳴器。9. 安裝、焊接LED LED和普通二極管一樣,有正負(fù)極之分,不能裝錯。安裝、焊接數(shù)碼管。認(rèn)識數(shù)碼管內(nèi)部結(jié)構(gòu)。元件清單序號名稱規(guī)格位號數(shù)量序號名稱規(guī)格位號數(shù)量1單片機(jī)AT89C2051U1113三極管9012Q1 Q772三端集成穩(wěn)rr78L05U2114電阻220R3R973壓2位共陽數(shù)碼 管紅色0.4寸LED
22、1 LED33151KR2、R10R1574發(fā)光二極管紅色$ 3D1 D44162KR17、R1825蜂鳴器5V有源U31175.1KR1616瓷片電容30PFC2、C321810KR1170.1uFC4、C5219按鍵6*6*5S1、S2、S3382位排針間距2.54J1 J3320電池盒4節(jié)5號19集成電路插20PU1121DC插座5.5*2.11座10電解電容10uFC1122電源線雙色2P帶熱縮管111100uFC6123電路板105*55112晶振12MHzY1124說明書A4雙面1第五部分課程設(shè)計(jì)總結(jié)(心得體會)經(jīng)過大量查找資料和老師的不斷指點(diǎn),我將所設(shè)計(jì)的六位數(shù)碼管電子鐘焊接成功
23、,雖然不是 很穩(wěn)定,但在這個過程中,我了解了各個元器件的識別與測量,也了解了 AT89C205單片機(jī)及其 引腳功能。同時(shí)明白了六位數(shù)碼管電子鐘的工作原理并實(shí)現(xiàn)了其功能。本程序設(shè)計(jì)時(shí),只用了一個定時(shí)器T0,其他的中斷全部關(guān)斷,定時(shí)器工作在兩個8位自動加 載初始值狀態(tài)。簡短的定時(shí)中斷程序只負(fù)責(zé)時(shí)間的計(jì)數(shù)和進(jìn)位功能,這是保證走時(shí)精確。有三個 輕觸式按鍵:功能選擇按鍵S1,功能擴(kuò)展按鍵S2,數(shù)值加一按鍵S3此數(shù)字鐘采用了一只NPN 型的三極管及蜂鳴器為鬧時(shí)訊響電路。通過這次的畢業(yè)設(shè)計(jì),我對自己的動手能力有了信心。面臨著就業(yè),我將充分發(fā)揮我的主觀 能動性和在學(xué)校學(xué)到的一切知識。為母校添磚加瓦,為自己的前
24、程奮斗!這次畢業(yè)設(shè)計(jì)的順利進(jìn) 行,我深刻明白了理論知識與社會實(shí)踐相結(jié)合的道理,從總得到了以前書本知識所不曾得到的知 識。更加明白了如今信息時(shí)代電子技能知識的重要性。增強(qiáng)了我對實(shí)際工藝技術(shù)、電子技術(shù)和設(shè) 備技術(shù)等方面的認(rèn)識,掌握了分析處理方法,調(diào)試、計(jì)算等基本技能的訓(xùn)練,并具備了一定程度 的實(shí)際工作能力。第六部分參考文獻(xiàn)程序主要代碼:#i ncludecode sen en_seg10=0x81,0xe7,0x92,0xa2,0xe4,0xa8,0x88,0xe3,0x80,0xa0;bitkey1_e nter=0,key2_e nter=0,key3_e nter=0,co un tdow
25、n_mark=0,stopwatch_mark=0,co un t_mark=0,bell_mark=0;un sig ned char program=0,program_variable=0,co un t_bit=0,co un t=0;un sig ned char hour=10, minu te=10,sec on d=0;un sig ned char delayed_hour=22,delayed_ minu te=10,delayed_sec on d=0;un sig ned char coun t_hour=0,co unt_minu te=0,co un t_sec o
26、n d=0;un sig ned char coun t_time=0,co un t_co un t=0;void delay (un sig ned int t)unsigned int i,j;for(i=0;it;i+)for(j=0;j=199)coun t_time=0;second+;if(seco nd=60)sec on d=0;minu te+;if(mi nute=60)minu te=0;hour+;if(hour=24)hour=0;if(delayed_hour=hour & delayed_ minu te=minute & sec on d=199 & (co
27、un t_sec on d!=0|co unt_minu te!=0|co un t_hour!=0) coun t_co un t=0;coun t_sec on d-;if(co un t_sec on d=60)coun t_sec on d=59;count_minu te-;if(co unt_minu te=60)count_minu te=59;coun t_hour-;if(co un t_hour=100) coun t_hour=99;if(co un t_sec ond=0&count_minu te=0&coun t_hour=0&coun t_co un t=1500
28、0) count_count=14OOO;if(stopwatch_mark=1)coun t_co un t+;if(co un t_co un t=2)coun t_co un t=0;coun t_sec on d+;if(cou nt_seco nd=100)coun t_sec on d=0;count_minu te+;if(co unt_minu te=60)count_minu te=0;coun t_hour+;if(co un t_hour=60) coun t_hour=0;un sig ned char show_key (void)un sig ned char x=
29、0,y=0;switch (program)case 0: P1&=se nen _segsec on d%10;break;case 1: if(co un t_time=90) P1&=se nen _segsec on d%10;break;case 2: if(delayed_hour=24) P仁 Oxfe;else P1&=se nen _segdelayed_sec on d%10;break;case 3: if(co un t_bit=0) P1&=se nen _segco un t_sec on d%10; else P仁 Oxff;break;case 4: P1&=s
30、e nen _segco un t_sec on d%10;break;case 5: P1&=se nen _segco un t_sec on d%10;break;P3_3=0;delay(10);if(P3_5=0)key1_e nter=1;if(co un t=90) P1&=se nen _segsec on d/10; break;case 2: if(delayed_hour=24) P仁 Oxfe;else P1&=se nen _segdelayed_sec on d/10; break;case 3: if(co un t_bit=1) P1&=se nen _segc
31、o un t_sec on d/10; else P仁 Oxff;break;case 4: P1&=se nen _segco un t_sec on d/10;break;case 5: P1&=se nen _segco un t_sec on d/10;break;P3_ 仁0;delay(10);P3_1=1;P1|=0xff;switch (program)case 0: P1&=se nen_segmi nu te%10;break;case 1: if(co un t_time=90) P1&=se nen _seg minu te%10; break;case 2: if(d
32、elayed_hour=24) P仁 Oxfe;else P1&=se nen _segdelayed_ minu te%10; break;case 3: if(co un t_bit=2) P1&=se nen _segco unt_minu te%10; else P仁 0xff;break;case 4: P1&=se nen _segco unt_minu te%10;break;case 5: P1&=se nen _segco unt_minu te%10; break;P3_2=0;delay(10);P3_2=1;P1|=0xff;switch (program)case 0
33、: P1&=se nen _seg minu te/10;break;case 1: if(co un t_time=90) P1&=se nen _seg minu te/10; break;case 2: if(delayed_hour=24) P仁 0xfe;else P1&=se nen _segdelayed_ minu te/10; break;case 3: if(co un t_bit=3) P1&=se nen _segco unt_minu te/10; else P仁 0xff;break;case 4: P1&=se nen _segco unt_minu te/10;
34、break;case 5: P1&=se nen _segco unt_minu te/10; break;P3_5=0;delay(10);P3_5=1;P1|=0xff;switch (program)case 0: P1&=se nen_seghour%10;break;case 1: if(cou nt_time=90) P1&=se nen_seghour%10; break;case 2: if(delayed_hour=24) P仁 0xfe;else P1&=se nen_segdelayed_hour%10; break;case 3: if(co un t_bit=4) P
35、1&=se nen _segco un t_hour%10; else P仁 0xff;break;case 4: P1&=se nen _segco un t_hour%10;break;case 5: P1&=se nen _segco un t_hour%10;break;P3_0=0;delay(10);if(P3_4=1 & key2_e nter=1)x=3;3key2_e nter=O;P3_0=1;P1|=0xff;switch (program)case 0: P1&=se nen_seghour/10;break;case 1: if(co un t_time=90) P1
36、&=se nen _seghour/10;break;case 2: if(delayed_hour=24) P仁 Oxfe;else P1&=se nen _segdelayed_hour/10; break;case 3: if(co un t_bit=5)P1 &=se nen _segco un t_hour/10; else P仁 Oxff;break;case 4: P1&=se nen _segco un t_hour/10;break;case 5: P1&=se nen _segco un t_hour/10;break;P3_4=0;delay(10);if(P3_5=1 & key1_e nter=1)if(count=127) x=1;else x=2;key1_e nter=O;coun t=0;if(P3_2=1 & key3_e nter=1)x=4;key3_e nter=O;P1|=0xff;if(program=100) P1&=Oxff; if(program=1 & co
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高效果干烘干線行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 城市濱水區(qū)改造行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 抗抑郁仿制藥行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 適老化文化創(chuàng)意家具行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 創(chuàng)意禮品設(shè)計(jì)與定制企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2025年地理學(xué)科核心素養(yǎng)模擬試卷及答案解析(初中學(xué)業(yè)水平考試)
- 中文詞匯學(xué)習(xí)中的聯(lián)想記憶方法論文
- 2025年中學(xué)教師資格考試《綜合素質(zhì)》考前押題密卷(含答案)之教育歷史學(xué)篇
- 2025年中學(xué)教師資格《綜合素質(zhì)》教育案例深度剖析試題卷含答案
- 2025年小學(xué)教師資格考試《綜合素質(zhì)》時(shí)事熱點(diǎn)分析題庫全真模擬試卷(含答案)
- 2020年交安A、B、C證(公路)考試題庫1088題(含答案)
- 節(jié)后復(fù)工檢查表
- 氣象報(bào)文日常航空天氣報(bào)告電報(bào)翻譯
- 航空航天概論-第三章飛行器動力系統(tǒng)
- 一年級下冊數(shù)學(xué)教案-3.1 估數(shù)與數(shù)數(shù) |冀教版
- 斯大林格勒保衛(wèi)戰(zhàn)精選教學(xué)課件
- 高處作業(yè)審批表
- 人員下班安全檢查記錄表
- 礦山礦石損失與貧化管理規(guī)程
- 安全生產(chǎn)晨會管理制度
- 曾奇峰精神分析網(wǎng)絡(luò)課程學(xué)習(xí)筆記第1-6講
評論
0/150
提交評論