版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 單片機(jī)數(shù)字時(shí)鐘</b></p><p><b> 一、總體概述</b></p><p><b> 摘 要</b></p><p> 本設(shè)計(jì)采用89S52系列單片機(jī)作為時(shí)鐘的控制核心,電路使用了八個(gè)數(shù)碼管作為時(shí)鐘顯示,用計(jì)數(shù)器中斷程序作為了一秒鐘的精確計(jì)數(shù),并用按鈕實(shí)
2、現(xiàn)了調(diào)鬧鐘時(shí)間和時(shí)鐘時(shí)間的校對(duì)功能。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī)、控制、顯示、調(diào)時(shí)。</p><p><b> Abstract</b></p><p> This design's adopting a single slice of the 89 S52 serieses machine is the control c
3、ore of the clock, the electric circuit used eight piece code tubes as the clock manifestations,</p><p> The precision that used to count the machine interruption procedure conduct and actions for a second c
4、ount, counteracting a button to carry out to adjust check of the alarm clock time and the clock time function.</p><p><b> 競(jìng)賽賽題及要求</b></p><p><b> 單片機(jī)音樂演奏</b></p>
5、<p> 基本要求:1、利用單片機(jī)演奏一和諧的音樂,音樂時(shí)長(zhǎng)不少于兩分鐘;</p><p> 2、能夠隨時(shí)實(shí)現(xiàn)中斷;</p><p> 3、能夠手動(dòng)調(diào)節(jié)音樂重復(fù)次數(shù)。</p><p> 發(fā)揮部分:1、音樂演奏時(shí)同時(shí)有彩燈閃爍伴奏。</p><p> 2、用按鍵實(shí)現(xiàn)多首音樂間的選擇,且任何時(shí)間都能選擇</p>
6、<p> 本時(shí)鐘程序采用了C語言與匯編語言相結(jié)合的方案,使用C主要是考慮到本人學(xué)習(xí)單片機(jī)的時(shí)間很短,而此次競(jìng)賽又迫在眉睫,對(duì)于開發(fā)時(shí)間如此緊的競(jìng)賽, C語言有著匯編無可比擬的優(yōu)勢(shì)。C語言是一種編譯型程序設(shè)計(jì)語言,它兼顧了多種高級(jí)語言的特點(diǎn),并具備匯編語言的功能。C語言有功能豐富的庫函數(shù)、運(yùn)算速度快、編譯效率高、有良好的可移植性,而且可以直接實(shí)現(xiàn)對(duì)系統(tǒng)硬件的控制。C語言是一種結(jié)構(gòu)化程序設(shè)計(jì)語言,它支持當(dāng)前程序設(shè)計(jì)中廣泛采用的由
7、頂向下結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)。此外,C語言程序具有完善的模塊程序結(jié)構(gòu),從而為軟件開發(fā)中采用模塊化程序設(shè)計(jì)方法提供了有力的保障。因此,使用C語言進(jìn)行程序設(shè)計(jì)已成為軟件開發(fā)的一個(gè)主流。用C語言來編寫目標(biāo)系統(tǒng)軟件,會(huì)大大縮短開發(fā)周期,且明顯地增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,從而研制出規(guī)模更大、性能更完備的系統(tǒng)。</p><p><b> 三、方案選擇與論證</b></p><p
8、> 根據(jù)題目要求,電路總共可分為以下幾個(gè)基本模塊,對(duì)于各個(gè)模塊的實(shí)現(xiàn),有以下一些設(shè)計(jì)方案,均進(jìn)行了可行性分析,最終選擇了最實(shí)際可行的方案。</p><p><b> 軟件部分:</b></p><p><b> 計(jì)時(shí)控制方案</b></p><p> 方案一:使用專用時(shí)鐘芯片。</p><
9、p> 使用微控制器控制專用時(shí)鐘芯片實(shí)現(xiàn)計(jì)時(shí)控制,這種方案有著計(jì)時(shí)精度高、控制簡(jiǎn)單的優(yōu)點(diǎn),而且更易于實(shí)現(xiàn)日期/時(shí)間顯示、定時(shí)烹調(diào)等計(jì)時(shí)擴(kuò)展功能。</p><p> 方案二:采用MCU內(nèi)部定時(shí)器。</p><p> AT89S52內(nèi)部含有2個(gè)定時(shí)器,可以利用一個(gè)定時(shí)器與程序計(jì)數(shù)器相結(jié)合的方式,在系統(tǒng)晶振的驅(qū)動(dòng)下,產(chǎn)生標(biāo)準(zhǔn)時(shí)鐘頻率。</p><p> 由于方
10、案二具有較好的靈活性、較少的電路器件和較高的性價(jià)比,而且通過精確的軟件補(bǔ)償使精度完全可以滿足控制需要,所以我們選擇該方案完成設(shè)計(jì)。</p><p><b> 2、主控制器模塊</b></p><p> 主控制器的選擇對(duì)電路功能的實(shí)現(xiàn)尤為重要</p><p> 方案一:?jiǎn)纹瑱C(jī)和數(shù)字芯片結(jié)合使用,這樣的好處是能減少單片機(jī)的工作量,使電路不單純
11、的只依賴于單片機(jī)工作,但是如果使用數(shù)字芯片,就有點(diǎn)違背題目初忠,單片機(jī)的功能也不能直觀的顯現(xiàn)出來。而且相對(duì)來說成本要高。電路也不夠簡(jiǎn)略。</p><p> 方案二:?jiǎn)为?dú)使用單片機(jī)控制,它的好處是外圍電路比較簡(jiǎn)單直觀,所有的控制都只需用軟件程序來實(shí)現(xiàn),對(duì)于單片機(jī)來說,時(shí)鐘程序遠(yuǎn)不夠它自身的承受量,所以只要程序編的合理,就能比較方便的實(shí)現(xiàn)。</p><p> 基于上述理論分析,擬選擇方案二
12、。</p><p><b> 3、顯示電路模塊</b></p><p> (1)顯示器件的選擇:</p><p> 方案一:采用點(diǎn)陣顯示,可做成表盤顯示,但是點(diǎn)陣顯示成本較高,同時(shí)所需資源也較多,控制比較繁瑣,編程較繁瑣。</p><p> 方案二:采用數(shù)碼管顯示,這種顯示方法比較直觀,也比較切合現(xiàn)實(shí)生活,而且對(duì)
13、于電路的設(shè)計(jì)來說比較方便,節(jié)省了電路板的空間,使用三極管驅(qū)動(dòng)后所需電壓也相對(duì)較低,穩(wěn)定性也相對(duì)較高,而且編程較簡(jiǎn)單。</p><p> 方案三:使用點(diǎn)陣式LCD</p><p> 點(diǎn)陣液晶可以顯示多種字符及圖形,擁有友好的人機(jī)界面及強(qiáng)大的顯示功能。特別適用于智能控制的可編程人性化顯示。但是技術(shù)含量過高,實(shí)現(xiàn)非常復(fù)雜,需要完成大量的顯示工作,其功能也是最強(qiáng)大的。采用點(diǎn)陣式LCD,可以將用
14、戶需求及時(shí)顯示出來,使用戶自定義輸入變得非常方便。但由于我們所設(shè)計(jì)系統(tǒng)無須如此復(fù)雜便可加以實(shí)現(xiàn),而且考慮到市場(chǎng)價(jià)格問題。</p><p> 權(quán)衡之后方案二作為顯示電路的實(shí)現(xiàn)。</p><p> (2)顯示器件個(gè)數(shù)的選擇:</p><p> 方案一:十六個(gè)數(shù)碼管顯示,這樣可以把時(shí)鐘時(shí)間和日期分開顯示,直觀性很強(qiáng),但是資源比較浪費(fèi)。</p><
15、p> 方案二:八個(gè)數(shù)碼管顯示,用按鍵實(shí)現(xiàn)對(duì)時(shí)鐘和日期的顯示,因?yàn)樵趯?shí)際生活中我們對(duì)日期顯示的需求并不在每時(shí)每刻,所以大可在需要時(shí)再顯示。這樣就減少了八個(gè)數(shù)碼管的占用空間和成本。</p><p> 綜上理論分析,擬選擇了第二種方案。</p><p> (3)數(shù)碼管與單片機(jī)的接口選擇</p><p> 方案一:用74138和7447集成芯片連接,對(duì)輸出端口
16、進(jìn)行擴(kuò)展,這樣可以減少輸出端口,但在時(shí)鐘電路中所需控制的輸出設(shè)備不多,用這種方案會(huì)使外圍電路復(fù)雜,而且一些P口閑置浪費(fèi)。</p><p> 方案二:直接與端口連接,使得外圍電路直觀簡(jiǎn)單,在編程序時(shí)也會(huì)顯得簡(jiǎn)單明了。</p><p> 基于上述考慮,擬采用方案二。</p><p><b> 4、調(diào)試按鍵模塊</b></p>&
17、lt;p> 方案一:使用鍵盤控制,它的效果比較直觀,能直接根據(jù)需要按鍵,直接得出所需的數(shù)值,而且對(duì)程序的要求也不需很大,但使用的按鈕量較多,占的空間也較大,而且實(shí)際實(shí)用性不強(qiáng)。</p><p> 方案二:采用獨(dú)立式按鍵電路,每個(gè)鍵單獨(dú)占有一根I/O接口線,每個(gè)I/O口的工作狀態(tài)互不影響,此類鍵盤采用端口直接掃描方式。缺點(diǎn)是當(dāng)按鍵較多時(shí)占用單片機(jī)的I/O數(shù)目較多,優(yōu)點(diǎn)是電路設(shè)計(jì)簡(jiǎn)單,且編程極其容易??紤]到
18、時(shí)鐘控制在實(shí)際使用時(shí)的資源量并不大,使用按鈕控制可以大大減少按鍵的使用量。</p><p> 綜上理論分析,由于該系統(tǒng)采用了常規(guī)鐘表式的校對(duì)方式,用鍵較少,系統(tǒng)資源足夠用,擬選擇了第二種方案作為調(diào)時(shí)電路的實(shí)現(xiàn)。</p><p><b> 5、電源模塊</b></p><p> 方案一:取用單片三端穩(wěn)壓集成7805,電路簡(jiǎn)單、穩(wěn)定可靠,且成
19、本低,穩(wěn)壓效果好。</p><p> 6、鬧鐘聲光報(bào)警模塊</p><p> 方案一:取用蜂鳴器和數(shù)只發(fā)光二極管組成,電路簡(jiǎn)單,單片機(jī)編程容易,調(diào)試簡(jiǎn)單,但電路的可觀性與娛樂性不高。</p><p> 方案二:取用單片機(jī)編程音樂輸出,數(shù)十只不同顏色的發(fā)光二極管排列成不同的圖形,利用單片機(jī)編程控制發(fā)光管作不同的閃爍,可觀性與娛樂性都大大提高,又能突出單片機(jī)在多功
20、能控制的特點(diǎn)。</p><p><b> 四、系統(tǒng)總體結(jié)構(gòu)</b></p><p><b> 電路圖</b></p><p> 工作原理:利用單片機(jī)89S52作為本系統(tǒng)的中控模塊。電路設(shè)有四個(gè)按鍵,一個(gè)為功能選擇開關(guān),能夠選擇調(diào)節(jié)時(shí)間、日期、第一個(gè)鬧鐘、第二個(gè)鬧鐘;第二個(gè)為“加”按鈕,能夠?qū)崿F(xiàn)數(shù)字的累加;第三個(gè)為“減
21、”按鈕,能夠?qū)崿F(xiàn)數(shù)字的遞減;第四個(gè)為確定選擇開關(guān)。電路程序取用單片機(jī)內(nèi)部其中一個(gè)定時(shí)中斷系統(tǒng)作為基準(zhǔn)秒頻,這樣能夠使CPU達(dá)到最大利用。功能調(diào)節(jié)時(shí)顯示電路仍然能夠達(dá)到同步顯示。當(dāng)調(diào)節(jié)的鬧鐘時(shí)間與時(shí)鐘顯示的時(shí)間相等時(shí),聲光報(bào)警電路動(dòng)作,取用LM386能夠放大單片機(jī)輸出的音頻信號(hào),推動(dòng)揚(yáng)聲器發(fā)出樂耳的音樂;利用80只不同顏色的發(fā)光二極管排列成奧運(yùn)五環(huán),在單片機(jī)的驅(qū)動(dòng)下能夠以不同方式閃爍發(fā)光,使人耳目一新。</p><p&
22、gt; 三、系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)</p><p> 時(shí)鐘程序的整體設(shè)計(jì)方案是用單片機(jī)驅(qū)動(dòng)電路控制時(shí)鐘顯示,為顯示提供電源,用軟件程序控制時(shí)種運(yùn)行和各種調(diào)節(jié)功能。</p><p><b> 1、電源電路</b></p><p> 取用單片三端穩(wěn)壓集成7805,電路簡(jiǎn)單、穩(wěn)定可靠,且成本低,穩(wěn)壓效果好。</p><p&g
23、t;<b> 2、顯示電路</b></p><p> 采用八只共陽數(shù)碼管作為時(shí)鐘電路的顯示。數(shù)碼管的a~h分別并聯(lián)在一起,由單片機(jī)的P0口控制,每只數(shù)碼管的共陽極分別接一只PNP三極管驅(qū)動(dòng),三極管具有電流放大作用。</p><p><b> 3、單片機(jī)基本電路</b></p><p> 單片機(jī)基本電路是使單片機(jī)正常
24、工作所需要的最基本的電路,包括有復(fù)位電路,時(shí)鐘電路,電源電路。</p><p><b> 4、按鍵電路</b></p><p> 五、單片機(jī)軟件程序:</p><p> 1、時(shí)鐘程序(單片機(jī)一)</p><p> #include<reg52.h></p><p> sbit
25、 a0=P1^0;</p><p> sbit a1=P1^1;</p><p> sbit a2=P1^2;</p><p> sbit a3=P1^3;</p><p> sbit a4=P3^6;</p><p> sbit a5=P3^1;</p><p> static c
26、har JP[10]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb};</p><p> static char Lie[4]={0xef,0xdf,0xbf,0x7f};</p><p> char LEDXS[8];</p><p> static char LEDWEI[8]={0x7f,0xbf,
27、0xdf,0xef,0xf7,0xfb,0xfd,0xfe};</p><p> static char LED[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};</p><p> unsigned char hour,minute,second;</p><p> unsigned int C1
28、00us; //100us計(jì)數(shù)單元</p><p> unsigned int M,H,key,J=1,K=1,KK=1,MO,DA,YE,M1=61,H1=25,M2=61,H2=25;</p><p> /////////////////////////////////////////////////////////////////////////
29、/</p><p> void wait(unsigned int i) //延時(shí)函數(shù)</p><p> {unsigned int j;</p><p> for(j=0;j<i;j++);</p><p><b> }</b></p><p> //////
30、//////////////////////////////////////////////</p><p> anniu() //按鈕函數(shù)</p><p><b> {key++;</b></p><p> wait(2000);</p><p><b&
31、gt; }</b></p><p> ////////////////////////////////////////////////////</p><p> void displayled(void) //顯示函數(shù)</p><p> {unsigned char i;</p><p>
32、; for(i=0;i<8;i++)</p><p> {P0=LEDXS[i];</p><p> P2=LEDWEI[i];</p><p> wait(100);</p><p><b> }</b></p><p><b> }</b></p&
33、gt;<p> ////////////////////////////////////////////////////</p><p> void date(void) //日期函數(shù)</p><p> {unsigned int s;</p><p> LEDXS[0]=LED[2];</p>
34、<p> LEDXS[1]=LED[0];</p><p> LEDXS[2]=LED[0];</p><p> LEDXS[3]=(LED[YE]-0x80);</p><p> LEDXS[4]=LED[MO/10];</p><p> LEDXS[5]=(LED[MO%10]-0x80);</p>
35、<p> LEDXS[6]=LED[DA/10];</p><p> LEDXS[7]=LED[DA%10];</p><p><b> s=10;</b></p><p><b> while(s)</b></p><p><b> {s--;</b>&l
36、t;/p><p> displayled();</p><p><b> }</b></p><p><b> }</b></p><p> ////////////////////////////////////////////////////</p><p> vo
37、id LEDTS(void) //調(diào)時(shí)函數(shù)</p><p> {unsigned int q=0,a,b,c,w,s,x,y;</p><p> if((a1==0)&&(key==1)){q=1;}</p><p> if((q==1)&&(key!=3))</p>
38、<p><b> {M++;</b></p><p> if(M==60){M=0;H++;}</p><p> if(H==24){H=0;}</p><p><b> }</b></p><p> if((a2==0)&&(key==1)){x=1;}<
39、/p><p> if((x==1)&&(key!=3))</p><p><b> {M--;</b></p><p> if(M==0){M=59;}</p><p><b> }</b></p><p> if((a1==0)&&(k
40、ey==2)){w=1;}</p><p> if((w==1)&&(key!=3))</p><p><b> {H++;</b></p><p> if(H==24){H=0;}</p><p><b> }</b></p><p> if((a
41、2==0)&&(key==2)){y=1;}</p><p> if((y==1)&&(key!=3))</p><p><b> {H--;</b></p><p> if(H==0){H=23;}</p><p> if(a4==0){key=1;}</p>&l
42、t;p><b> }</b></p><p> if(a1==1){q=0;w=0;}</p><p> if(a2==1){x=0;y=0;}</p><p> LEDXS[0]=LED[H/10];</p><p> LEDXS[1]=LED[H%10];</p><p>
43、LEDXS[2]=0xbf;</p><p> LEDXS[3]=LED[M/10];</p><p> LEDXS[4]=LED[M%10];</p><p> LEDXS[5]=0xbf;</p><p> LEDXS[6]=LED[0];</p><p> LEDXS[7]=LED[0];</p&
44、gt;<p> if(key==5){a=1;}</p><p><b> while(a)</b></p><p><b> {date();</b></p><p> if(a1==0){DA++;if(DA==32){DA=0;}}</p><p> if(a2==0)
45、{DA--;if(DA==0){DA=31;}}</p><p> if(key!=5){a=0;}</p><p> if(a0==0){anniu();}</p><p><b> }</b></p><p> if(key==6){b=1;}</p><p><b> w
46、hile(b)</b></p><p><b> {date();</b></p><p> if(a1==0){MO++;if(MO==13){MO=0;}}</p><p> if(a2==0){MO--;if(MO==0){MO=12;}}</p><p> if(key!=6){b=0;}&l
47、t;/p><p> if(a0==0){anniu();}}</p><p> if(key==7){c=1;}</p><p><b> while(c)</b></p><p><b> {date();</b></p><p> if(a1==0){YE++;if
48、(YE==10){YE=0;}}</p><p> if(a2==0){YE--;if(YE==0){YE=9;}}</p><p> if(key!=7){c=0;}</p><p> if(a0==0){anniu();}}</p><p><b> s=10;</b></p><p>
49、;<b> while(s)</b></p><p><b> {s--;</b></p><p> displayled();</p><p><b> }</b></p><p><b> K=1;</b></p><p&
50、gt;<b> J=1;</b></p><p><b> }</b></p><p> ////////////////////////////////////////////////////////////</p><p> void T0Int(void) interrupt 1 using 0 //T0
51、中斷服務(wù)函數(shù)</p><p> {C100us--;</p><p> if(C100us==0) //100us計(jì)數(shù)器為0,重置計(jì)數(shù)器</p><p> {C100us=20000;</p><p> wait(140);</p><p><b> second++;&
52、lt;/b></p><p> if(second==60){second=0;minute++;}</p><p> if(minute==60){minute=0;hour++;}</p><p> if(hour==24){hour=0;DA++;}</p><p> if(DA==30){MO++;DA=0;}</
53、p><p> if(MO==12){YE++;MO=0;}}}</p><p> //////////////////////////////////////////////////////////////</p><p> void main(void) //主函數(shù)</p><p> {unsigned int p,q,
54、w;</p><p> TMOD=0X02; //設(shè)置T0工作方式與初值</p><p><b> TH0=0xd2;</b></p><p><b> TL0=0x00;</b></p><p> IE=0X82; //開中斷</p>&l
55、t;p><b> hour=0;</b></p><p><b> minute=0;</b></p><p><b> second=0;</b></p><p><b> w=0;</b></p><p><b> YE=6;
56、 </b></p><p><b> MO=5;</b></p><p><b> DA=7;</b></p><p> C100us=20000;</p><p> TR0=1; //啟動(dòng)定時(shí)器</p><p> P3=0xff
57、; </p><p><b> while(1)</b></p><p> {LEDXS[0]=LED[hour/10];</p><p> LEDXS[1]=LED[hour%10];</p><p> LEDXS[2]=0xbf;</p><p> LEDXS[
58、3]=LED[minute/10];</p><p> LEDXS[4]=LED[minute%10];</p><p> LEDXS[5]=0xbf;</p><p> LEDXS[6]=LED[second/10];</p><p> LEDXS[7]=LED[second%10];</p><p> d
59、isplayled();</p><p> if(a0==0){p=1;}</p><p><b> while(p)</b></p><p> {LEDTS(); //調(diào)入調(diào)時(shí)函數(shù)</p><p> if(a0==0){anniu();}</
60、p><p> if(key==3)</p><p> {if(a1==0){minute=M;hour=H;second=0;K=0;KK=0;} //調(diào)節(jié)時(shí)鐘時(shí)間</p><p> {if(a3==0){M2=M;H2=H;J=0;}</p><p><b> if(J==1)</b></p>&l
61、t;p> {if(a3==1){M1=M;H1=H;}}} //調(diào)節(jié)鬧鐘時(shí)間</p><p> if(minute==M){M1=0;H1=0;M2=0;H2=0;}</p><p> if(a2==0){p=0;key=0;goto hat;}</p><p><b> }</b></p>
62、<p> hat: if(key==4){q=1;} //顯示年月日</p><p><b> while(q)</b></p><p><b> {date();</b></p><p> if(a0==0){anniu();}</p><p&
63、gt; if(key>4){q=0;}</p><p><b> }</b></p><p> if(key>7){p=0;}</p><p><b> }</b></p><p><b> w++;</b></p><p> i
64、f(w==100){key=0;w=0;}</p><p><b> if(K==1)</b></p><p> {if((minute==M1)&&(hour==H1))</p><p> {a5=0;a4=1;}} //達(dá)到鬧鈴時(shí)間響鈴</p><p>
65、 if(KK==1){if((minute==M2)&&(hour==H2))</p><p> {a5=0;a4=1;}}</p><p> if(a1==0){a5=1;a4=0;if(minute==M1){K=0;}if(minute==M2){KK=0;}}</p><p> if((minute>=(M1+1))&&a
66、mp;(minute!=M2))</p><p> {a5=1;a4=0;K=1;if(a5==1){M=minute;H=hour;}} //過一分鐘后停</p><p> if((minute>=(M2+1))&&(minute!=M1))</p><p> {a5=1;a4=0;KK=1;if(a5==1){M=minute;H=
67、hour;}}</p><p> if(a3==0) //顯示鬧鐘時(shí)間</p><p> {anniu();if(key==1)</p><p><b> {</b></p><p> LEDXS[0]=LED[H1/10];</
68、p><p> LEDXS[1]=LED[H1%10];</p><p> LEDXS[2]=0xbf;</p><p> LEDXS[3]=LED[M1/10];</p><p> LEDXS[4]=LED[M1%10];</p><p> LEDXS[5]=0xbf;</p><p>
69、 LEDXS[6]=LED[0];</p><p> LEDXS[7]=LED[0];</p><p><b> while(1)</b></p><p> {if(a3==1){key=2;goto aa;}</p><p> displayled();}}</p><p> aa:
70、if(key==2)</p><p><b> {</b></p><p> LEDXS[0]=LED[H2/10];</p><p> LEDXS[1]=LED[H2%10];</p><p> LEDXS[2]=0xbf;</p><p> LEDXS[3]=LED[M2/10];&
71、lt;/p><p> LEDXS[4]=LED[M2%10];</p><p> LEDXS[5]=0xbf;</p><p> LEDXS[6]=LED[0];</p><p> LEDXS[7]=LED[0];</p><p><b> while(1)</b></p>&
72、lt;p> {if(a3==0){key=3;goto aa;}</p><p> displayled();}key=0;}</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p>
73、<p> 六、功能測(cè)試及結(jié)果分析</p><p> 時(shí)鐘最主要的是精度的調(diào)節(jié),對(duì)此我們做了多次試驗(yàn)來調(diào)節(jié)時(shí)鐘的精度。精度的實(shí)現(xiàn)主要是由單片機(jī)的計(jì)數(shù)器控制,我們所用的晶振是12M的,即周期為(1/12000000)s,經(jīng)過計(jì)算,將一秒鐘分割成20000*600個(gè)晶振周期,所以在計(jì)數(shù)器的高低位參數(shù)設(shè)定時(shí),用了(FFFF-600)來計(jì)數(shù),但是由于實(shí)際運(yùn)用中,這樣的計(jì)算還是有挺大的誤差,因此,在調(diào)試過程中
74、,做了多次的修改。</p><p><b> 具體測(cè)試如下:</b></p><p> 自行發(fā)揮部分:用了奧運(yùn)五環(huán)標(biāo)志作為鬧鈴響時(shí)的輔助效果,達(dá)到了娛樂性。</p><p><b> 七、參考書目</b></p><p> 1、《單片機(jī)原理及應(yīng)用》主編:萬文略 重慶大學(xué)出版社</p&g
75、t;<p> 2、《單片及應(yīng)用技術(shù)與實(shí)例》主編:沙占友 電子工業(yè)出版社</p><p> 3、《C程序設(shè)計(jì)》主編:譚浩強(qiáng) 清華大學(xué)出版社</p><p><b> 八、比賽心得</b></p><p> 通過這次競(jìng)賽,我們?cè)谟布O(shè)計(jì)、軟件編程方面得到了極大的提高。同時(shí)我們小組的三個(gè)成員團(tuán)結(jié)一心,通力合作,體現(xiàn)了很好的團(tuán)隊(duì)合
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)數(shù)字時(shí)鐘資料
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)數(shù)字時(shí)鐘資料.doc
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)數(shù)字時(shí)鐘.doc
- 單片機(jī)課程設(shè)計(jì)--數(shù)字時(shí)鐘
- 單片機(jī)數(shù)字時(shí)鐘課程設(shè)計(jì)
- 單片機(jī)畢業(yè)論文--數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)--數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)(數(shù)字時(shí)鐘)
- 單片機(jī)數(shù)字電子時(shí)鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)
- 課程設(shè)計(jì)-單片機(jī)基于單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)
- 單片機(jī)數(shù)字時(shí)鐘畢業(yè)設(shè)計(jì)
- 單片機(jī)數(shù)字時(shí)鐘畢業(yè)設(shè)計(jì)
- 數(shù)字時(shí)鐘的課程設(shè)計(jì)--基于單片機(jī)的數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告---基于單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)
- 基于51單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)數(shù)字時(shí)鐘
- 單片機(jī)數(shù)字時(shí)鐘控制課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論