【正文】
...........................................................8 5 詳細(xì)儀器清單 .........................................................................................................................9 6 總結(jié)與思考及致謝 ...............................................................................................................10 參考文獻(xiàn) ...................................................................................................................................10 附錄一: 倒計(jì)時(shí)器 DXP 原理圖 ............................................................................................. 11 附錄二: 倒計(jì)時(shí)器 電路 PCB 板圖 .........................................................................................12 附錄三: 實(shí)物圖 .......................................................................................................................13 附錄 四 :程序 ...........................................................................................................................14 1 倒計(jì)時(shí)器 設(shè)計(jì)任務(wù)與要求 本項(xiàng)目是由單片機(jī)執(zhí)行設(shè)定的程序,在數(shù)碼管顯示倒計(jì)時(shí)的時(shí)間,且能由單片機(jī)接受矩陣鍵盤設(shè)定的時(shí)間。當(dāng)然,設(shè)計(jì)倒計(jì)時(shí)器的方法很多,以下是兩個(gè)設(shè)計(jì)方案。主要是以單片機(jī)來控制,用按鍵來設(shè)定倒計(jì)時(shí)初始時(shí)刻的值,按鍵來進(jìn)行倒計(jì)時(shí)初值的選擇。 2 2 單元電路設(shè)計(jì) LED 數(shù)碼管倒計(jì)時(shí)器以 STC89C52 單片機(jī)為核心,起著控制作用,系統(tǒng)包括四位數(shù)碼管顯示電路,按鍵電路,復(fù)位電路,時(shí)鐘振蕩電路。另外 STC89X52 可降至 0Hz 靜態(tài)邏輯操作,支持 2種軟件可選擇節(jié)電模式。 時(shí)鐘振蕩電路 數(shù)碼管顯示電路 獨(dú)立按鍵電路 STC89C52 復(fù)位電路 3 圖 2 STC89C52引腳圖 時(shí)鐘振蕩電路的設(shè)計(jì) 單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作。一般選用石英晶體振蕩器。 圖 3 時(shí)鐘振蕩電路 復(fù)位 電路的設(shè)計(jì) 在上電或復(fù)位過程中,控制 CPU的復(fù)位狀態(tài):這段時(shí)間內(nèi)讓 CPU保持復(fù)位狀 4 態(tài),而不是一上電或剛復(fù)位完畢就工作,防止 CPU發(fā)出錯(cuò)誤的指令、執(zhí)行錯(cuò)誤操作,也可以提高電磁兼容性能。 基本的復(fù)位方式基本的復(fù)位方式基本的復(fù)位方式基本的復(fù)位方式 單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使 CPU 及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。此系統(tǒng)我們選用了手動(dòng)按鈕復(fù)位,手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端 RST 上加入高電平(圖 1)。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時(shí)間要求。 共陰和共陽極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。在這里我們使用的是 8 段數(shù)碼管顯示(包含小數(shù)點(diǎn)),通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,另一種是動(dòng)態(tài)顯示。 圖 5 數(shù)碼管顯 示電路原理圖 獨(dú)立按鍵電路設(shè)計(jì) 通過 5個(gè)獨(dú)立按鍵控制不同的 5 種工作方式。定時(shí)器 0的定時(shí)時(shí)間是 50ms,每當(dāng)進(jìn)入定時(shí)中斷一次變量 aa 自動(dòng)加一,當(dāng) aa 等于 20時(shí)即為計(jì)時(shí)一秒,此時(shí)計(jì)時(shí)器清零,重新賦初值,并且之前設(shè)定的倒計(jì)時(shí)初值 num 值自動(dòng)減一,同時(shí)進(jìn)行相關(guān)的顯示 。 脫機(jī)檢查:用萬用表逐步按照電路原理圖檢查印制電路中所有器件的各引腳,尤其是電源的連接是否正確:檢查數(shù)據(jù)總線、地址總線和控制總線是否有短路等故障,順序是否正確;檢查各開關(guān)按鍵是否能正常開關(guān),是否連接正常;各限流電阻是否短路等內(nèi)容。例如,我們可以設(shè)計(jì)一個(gè)軟件,使 89C52 的 P P2 口輸出 55H 或 AAH,同時(shí)讀 P3 口,運(yùn)行后用萬用表檢查相應(yīng)端口電平是否一高一低,在仿真器中檢查讀入的 P3 口 8 位是否為 1,如果正常則說明 89C52 正常工作。經(jīng)檢查知,是段選電阻(接 P0 口的限流電阻)太大。本系統(tǒng)的程序的編寫就是在 Keil C 軟件中用 C 語言完成的。在程序中,定時(shí)器 50ms中斷一次,變量 aa 自增,中斷 20 次時(shí),秒的顯示自減,誤差很小大約為 %。本次設(shè)計(jì)是對(duì)我這一學(xué)期所學(xué)知識(shí)的一次綜合性檢測(cè)和考驗(yàn),無論是動(dòng)手能力還是理論知識(shí)運(yùn)用能力都得到了提高,同時(shí)加深了我對(duì)網(wǎng)絡(luò)資源認(rèn)識(shí),大大提高了查閱資料的能力和效率,使我有能有更多的時(shí)間去設(shè)計(jì)軟件部分。這次課程設(shè)計(jì)對(duì)我來說有著深遠(yuǎn)的意義,讓我對(duì)未來的路又看得清楚了些。 char temp3[2]。 sbit key1=P2^0。sbit key5=P3^6。 sbit JIASHI=P2^6。 void main() { P1=0xf0。 TL0=(6553650000)%256。 while(1) { if(key1==0) { delay(10)。i++) { switch(i) { case 0:P1=0xfe。 case 2:P1=0xfb。 17 } P0=temp1[i]。 for(i=0。 case 1:P1=0xfd。 } P0=temp2[i]。 if (key3==0) { for(i=0。 case 1:P1=0xfd。 } } } } if(key4==0) { delay(10)。i1。 if(key5==0) { key5=0。 } while(!JIAQIAN)。 if(JIABAI==0) { num5=num5+100。 while(!JIABAI)。 } while(!JIASHI)。 { num5=num5+1。 while(!JIAGE)。break。break。 delay(6)。i++) for(j=0。 TL0=(6553650000)%256。 temp1[1]=duan[num1/10%10]。 EA=0。 temp2[2]=duan[num2/100%10]。 } if(key3==0) { temp3[0]=duan[num3%10]。 } num3。 } num4。 temp5[3]=duan[num5/1000]。(num50)) { num5。t charge you more than 35% of your pensation if you win the case. If you are thinking about signing up for a damagesbased agreement, you should make sure you39。s Premier League match at Chelsea on Sunday. I am going to be at the match tomorrow and I have asked to meet Yaya Toure, he told BBC Sport. For me it39。s actions. CSKA said they were surprised and disappointed by Toure39??傆X得自己自己似乎應(yīng)該去做點(diǎn)什么,或者寫點(diǎn)什么。t really grow up, it seems is not so important。 Originally, this world, can produce a chemical reaction to an event, in addition to resolutely, have to do, and time. 原來,這個(gè)世界上,對(duì)某個(gè)事件能產(chǎn)生化學(xué)反應(yīng)的,除了非做不可的堅(jiān)決,還有,時(shí)間。也曾經(jīng)好像已經(jīng)下定了決心去做某件事,但更多的時(shí)候是最后又打起了退堂鼓。 Those were broken into various shapes of stationery。突然想到那件藍(lán)格子襯衫;那些被折成各種各樣形狀的信紙;那段從街角深巷伊始的友誼;還有那場(chǎng)還沒有開始就宣告了終結(jié)的邂逅計(jì)劃 …… 那些年那些天的非做不可,終于和青 春一樣,都將在我們的人生中謝幕。t. Baumgartner still will free fall at a speed that would cause you and me to pass out, and no parachute is guaranteed to work higher than 25,000 feet (7,620 meters). cause there