版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 機(jī)械與車輛學(xué)院</b></p><p> 《單片機(jī)課程設(shè)計(jì)》報(bào)告</p><p> ?。?012-2013學(xué)年第一學(xué)期)</p><p> 課程設(shè)計(jì)題目:水塔水位控制系統(tǒng)</p><p><b> 目錄</b></p><p> 課程
2、設(shè)計(jì)性質(zhì)和目的…………………………………2</p><p> 課程設(shè)計(jì)的內(nèi)容及要求………………………………2</p><p> 課程設(shè)計(jì)的進(jìn)度及安排………………………………3</p><p> 設(shè)計(jì)所需設(shè)備及材料…………………………………3</p><p> 設(shè)計(jì)思路及原理分析…………………………………4</p><
3、;p> 流程圖及程序編寫……………………………………5</p><p> 調(diào)試運(yùn)行………………………………………………8</p><p> 結(jié)果及分析……………………………………………9</p><p> 心得體會………………………………………………10</p><p> 參考文獻(xiàn)………………………………………………10<
4、;/p><p> 致謝………………………………………………11</p><p> 附錄……………………………………………….11</p><p> 一、課程設(shè)計(jì)性質(zhì)和目的 這次課程設(shè)計(jì)《水塔水位控制》是繼這學(xué)期我們學(xué)習(xí)的《單片機(jī)原理與接口技術(shù)》課程與實(shí)驗(yàn)結(jié)束后的一門綜合性實(shí)踐課,讓學(xué)生初步嘗試把理論與實(shí)踐結(jié)合,培養(yǎng)了學(xué)生的實(shí)踐能力?!端豢刂啤吩O(shè)計(jì)需要
5、緊密結(jié)合所學(xué)的知識,在參閱相關(guān)資料中,可以加深、鞏固所學(xué)知識,同時也拓寬了知識面,有一定的深度和廣度,能充分發(fā)揮學(xué)生的能動性和想象力。通過電路設(shè)計(jì)、安裝、調(diào)試等一系列環(huán)節(jié)的實(shí)施,提高學(xué)生的單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)能力。</p><p> 二、課程設(shè)計(jì)的內(nèi)容及要求</p><p><b> 1、硬件設(shè)計(jì)</b></p><p> ?。?)用80C
6、51設(shè)計(jì)一個單片機(jī)最小控制系統(tǒng)。其中P2.0接水位下限傳感器,P2.1接水位上限傳感器,P2.2輸出經(jīng)反相器后接光電耦合器,通過繼電器控制水泵工作,P2.3輸出經(jīng)反相器后接LED,當(dāng)出現(xiàn)故障時LED閃爍;P2.4輸出經(jīng)反相器后接蜂鳴器,當(dāng)出現(xiàn)故障時報(bào)警。</p><p> ?。?)用塑料尺、導(dǎo)線等設(shè)計(jì)一個水塔水位傳感器。其中A電級置于水位10CM處,接5V電源的正極,B級置于水位15CM處,經(jīng)4.7K下拉電阻接單
7、片機(jī)的P1.0口,C電級置于水位的20CM處,經(jīng)4.7K下拉電阻接單片機(jī)的P1.1口。</p><p> ?。?)設(shè)計(jì)一個單片機(jī)至水泵的控制電路。要求單片機(jī)與水泵之間用反相器、光電耦合器和繼電器控制,計(jì)算出LED限流電阻,接好繼電器的續(xù)流二極管。</p><p><b> 2、軟件設(shè)計(jì)</b></p><p> ?。?)根據(jù)功能要求畫出控制程
8、序流程圖。</p><p> ?。?)根據(jù)控制程序流程圖編寫80C51匯編語言或C51程序</p><p><b> 3、功能要求:</b></p><p> ?。?)水塔水位下降至下限水位時,啟動水泵,水塔水位上升至上限水位則關(guān)閉水泵。</p><p> ?。?)水塔水位在上、下限水位之間時,水泵保持原狀態(tài)。<
9、/p><p> ?。?)供水系統(tǒng)出現(xiàn)故障時,自動報(bào)警。</p><p> 三、課程設(shè)計(jì)的進(jìn)度及安排 </p><p> 表1 課程設(shè)計(jì)的進(jìn)及安排表</p><p> 四、設(shè)計(jì)所需設(shè)備及材料</p><p> 表2 設(shè)計(jì)所需設(shè)備及材料表</p><p> 五、設(shè)計(jì)思路及原理分析</
10、p><p> 水塔水位控制原理圖見圖1,圖中兩條虛線表示正常工作情況下水位升降的上下限,在正常供水時,水位應(yīng)控制在兩條虛線代表的水位之間。B測量水位下限,C測量水位上限,A接+5V,B、C接地。</p><p> 圖1 水塔水位檢測原理圖</p><p> 在水塔無水或水位低于下限水位時,B、C為斷開,B、C兩點(diǎn)電位為零(低電平“0” ),需要水泵供水,單片機(jī)輸出
11、低電平,控制電機(jī)工作供水。水位上升到B點(diǎn),B接通,B點(diǎn)電位變?yōu)楦唠娖健?”,C開關(guān)仍斷開,C點(diǎn)仍為低電平,維持現(xiàn)狀水泵繼續(xù)供水。當(dāng)水位上升到C點(diǎn)時,C接通。這時B、C均接通,B、C兩點(diǎn)都為高電平,表示水塔水位已滿,需水泵停止供水,單片機(jī)輸出高電平,電機(jī)斷電停止供水。水塔水位開始下降,水位在降到B點(diǎn)之前,B點(diǎn)電位為高、C點(diǎn)電位為低,單片機(jī)輸出控制電平維持不變,仍為高。當(dāng)水位降到B點(diǎn)以下,B、C兩點(diǎn)電平都為低時,單片機(jī)輸出控制電平又變低,水
12、泵供水。</p><p> 如圖2:用80C51設(shè)計(jì)一個單片機(jī)最小控制系統(tǒng)。其中P1.0接水位下限傳感器;P1.1接水位上限傳感器;P1.2輸出經(jīng)Q0電流放大后接光電耦合器,接通繼電器,帶動電機(jī)控制水泵工作;P1.3輸出經(jīng)反相器后接LED,當(dāng)出現(xiàn)故障時LED閃爍;P1.4輸出經(jīng)反相器后接蜂鳴器,當(dāng)出現(xiàn)故障時報(bào)警。</p><p> 用塑料尺、導(dǎo)線等設(shè)計(jì)一個水塔水位傳感器。其中A電極置于
13、水位10cm處,接5V電源的正極;B電極置于水位15cm處,經(jīng)5.1K的下拉電阻接單片機(jī)的P1.0口;C電極置于水位20cm處,經(jīng)5.1K的下拉電阻接單片機(jī)的P1.1口。</p><p> 圖2 水塔水位控制硬件圖</p><p> 兩個水位信號由P1.0和P1.1輸入,這兩個信號共有四種組合狀態(tài)。如表3所示。其中第三種組合(b=1、c=0)正常情況下是不能發(fā)生的,但在設(shè)計(jì)中還是應(yīng)該考
14、慮到,并作為一種故障狀態(tài)。</p><p> 表3 水塔水位信號狀態(tài)表</p><p> 六、流程圖及程序編寫</p><p><b> 圖3 軟件流程圖</b></p><p><b> 單片機(jī)控制程序:</b></p><p> #include <re
15、g52.h></p><p> sbit b=P2^0;\\把P2.0定義為b;代表B傳感器;</p><p> sbit c=P2^1;\\把P2.1定義為c;代表C傳感器;</p><p> sbit d=P2^2;\\把P2.2定義為d;代表電機(jī)控制端;</p><p> sbit led=P2^3;\\把p2.3定義為l
16、ed;代表警報(bào)燈;</p><p> sbit fly=P2^4;\\把P2.4定義為fly;代表蜂鳴器;</p><p> void delay() 延時函數(shù);延時1s</p><p><b> {</b></p><p> unsigned char i;</p><p> for
17、 (i=0;i<20;i++)</p><p><b> {</b></p><p> TH1=15536/256;</p><p> TL1=15536%256;</p><p><b> TR1=1;</b></p><p> while(!TF1);&l
18、t;/p><p><b> TF1=0;</b></p><p><b> }</b></p><p><b> }</b></p><p> void main()</p><p><b> {</b></p>
19、<p> TMOD=0x10;\\設(shè)置工作方式T1;</p><p> P2=0xfc;\\給P2口賦初值;</p><p> if(c==0) \\ C傳感器為低電平,電機(jī)控制端賦低電平;</p><p><b> d=0;</b></p><p> if(c==1)\\ C傳感器為高電平,報(bào)錯,
20、報(bào)警燈和蜂鳴器工作;</p><p><b> {</b></p><p><b> led=0;</b></p><p><b> fly=0;</b></p><p><b> }</b></p><p> if(b=
21、=1&&c==1)\\ B,C傳感器同時為高電平時,電機(jī)控制端為高電平,電機(jī)停轉(zhuǎn),報(bào)警燈,蜂鳴器不工作;</p><p><b> {</b></p><p><b> d=1;</b></p><p><b> led=1;</b></p><p>&l
22、t;b> fly=1;</b></p><p><b> }</b></p><p><b> delay();</b></p><p><b> }</b></p><p> 注:未運(yùn)行的界面;
23、圖4 proteus仿真圖</p><p> 注:B,C同時為低電平,電機(jī)正常工作! 圖5 proteus仿真圖</p><p><b> 七、調(diào)試運(yùn)行</b></p><p><b> 1、軟件測試:</b></p><p> 運(yùn)用Protul軟件進(jìn)行仿真檢驗(yàn)。在元件庫
24、中找到所需要的元器件,把它們按照原理圖的構(gòu)想依次連接起來,反復(fù)檢查線路會不會出錯。待畫完圖,就可以開始仿真電路圖了。</p><p> 給單片機(jī)導(dǎo)入預(yù)先編程好的程序“.hex”文件,點(diǎn)擊仿真。仿真圖可以運(yùn)行,但是電機(jī)在B,C都為低電平的情況下沒有運(yùn)轉(zhuǎn)。說明電路有部分地方短路或者斷路了,觀察仿真圖中的電位情況也許可以找到問題的所在。經(jīng)過多次的檢查發(fā)現(xiàn),各點(diǎn)的電位并沒有像想象中的那樣有什么不妥。</p>
25、<p> 現(xiàn)在就要搞清楚仿真中的元器件的所有主要參數(shù)是否和實(shí)際的參數(shù)相符合。查看資料,對于繼電器,它本身的線圈電阻是在400歐左右,在查看仿真中的元器件的參數(shù),不難發(fā)現(xiàn)原始數(shù)據(jù)和實(shí)際相差很大,它給的是理想線圈,也就是沒有內(nèi)阻。這樣就如預(yù)期的那樣找到電機(jī)不轉(zhuǎn)的原因了。原始數(shù)據(jù)沒有進(jìn)行改變;查找資料,得知光電耦合器的發(fā)光二極管的壓降為1.15~1.5v,最大電流為60mA,電流傳輸比CTR為20%~70%。通過已知的條件求出
26、每條線路上所需要的電阻大小。對各各元器件的初參數(shù)設(shè)置完畢,啟動仿真,整體像想象中的那樣正常工作!軟件仿真結(jié)束,仿真圖里的數(shù)值引用到實(shí)際電路的焊接中。</p><p><b> 2、硬件測試:</b></p><p> 焊接完整體的板件,開始測試板子電路是否能夠完成所需要的功能。應(yīng)為電路的原版是根據(jù)仿真電路出來的,所以不一定能夠一次性就完成設(shè)計(jì)。</p>
27、<p> 對于板子上的元器件來說,有兩個是特別容易燒掉的,PNP三極管和4N25光電耦合器。因?yàn)樗鼈兊墓ぷ麟妷狠^低和工作電流很小,所以要特別的注意。雖然已經(jīng)給了足夠的保護(hù)還是不能太掉以輕心要是燒了就沒有其他器件可以換了。</p><p> 首先,測試光電耦左邊能否正常工作。把三極管的B極接于低電平,給予E極高電平,測試兩管腳之間的電壓降是多少。經(jīng)測試三極管正常工作,可是光電耦合器的1,2管腳的電
28、壓異常偏高。斷去電源,用萬用表的測試端測試1,2管腳是否擊穿,發(fā)現(xiàn)并沒有完全短路,有可能是封裝的時候沒有裝好。</p><p> 其次,測試光電耦合器右端是否能正常工作。給繼電器加上12v的電壓,用導(dǎo)線短接光電耦合器的4,5號管腳,繼電器能發(fā)出啪啪聲,也就是說明光電耦合器右端能夠正常工作。</p><p> 再次,對整塊板進(jìn)行調(diào)試。給光電耦合器兩邊電路都通上電,給三極管的B端輸入一個低
29、電平,繼電器不工作。說明光電耦合器無法工作。應(yīng)當(dāng)更換光電耦合器;</p><p> 換完光電耦合器后的檢測。換完光電耦合器后進(jìn)行整塊板子的調(diào)試,給三極管B極一個低電平繼電器能夠工作。插到單片機(jī)上給一個周期性的低電平,繼電器能夠周期性的發(fā)出啪啪聲,整體調(diào)試通過!</p><p><b> 八、結(jié)果及分析</b></p><p> 最后電動機(jī)
30、正常工作,達(dá)到預(yù)期的效果。</p><p> 圖6 焊接電路板正反面照片</p><p><b> 九、心得體會</b></p><p> 這次課程設(shè)計(jì),我學(xué)到的東西很多!可以說是先苦后甜,剛開始我先查閱了各個零件的資料,查閱了很多相關(guān)的程序進(jìn)行了進(jìn)一步的學(xué)習(xí),整個過程就是從前期的懵懂-到一知半解,這個過程是艱難苦悶的,靠自己的學(xué)習(xí)和請教
31、,請教了老師和同學(xué)終于在最后完成了這次課程設(shè)計(jì)。在設(shè)計(jì)過程也遇到問題,在電路設(shè)計(jì)完仿真出現(xiàn)了問題,改了很多次電機(jī)依然沒動,繼續(xù)參閱程序,百度,思考哪里可能有問題,后來對虛擬器件進(jìn)行參數(shù)設(shè)定后慢慢的一個一個的問題給解決,電機(jī)動起來的時候,那是發(fā)自內(nèi)心真正的快樂!一切變得都是值得的!</p><p> 解決了仿真,開始了板子焊接,認(rèn)認(rèn)真真的焊接,經(jīng)過幾個小時的奮斗結(jié)束了焊接,高興了不過幾分鐘,因?yàn)橛布恼{(diào)試沒有成功
32、!用萬能表查時候短路,虛焊······還是一直找不出原因。不甘郁悶了很久,沒辦法麻煩同學(xué)幫忙看看,在同學(xué)的幫助下終于查出是一處接錯了,借了電烙鐵回到宿舍繼續(xù)焊接,修正了其他一些錯誤。</p><p> 這次課程設(shè)計(jì)終于圓滿結(jié)束了!這次課程設(shè)計(jì)通過查找資料和實(shí)際的焊接解決問題,把理論的知識和實(shí)際運(yùn)用緊密的聯(lián)系在一起,讓我們對元器件的各部分功能及其運(yùn)用有了
33、更深入的了解,鍛煉了我們解決問題的能力,細(xì)心仔細(xì),認(rèn)真才能避免很多錯誤,我想生活也是一樣,對待事情都應(yīng)該用全身心態(tài)度投入的態(tài)度去做。</p><p><b> 十、參考文獻(xiàn)</b></p><p> [1] 高玉良.電路與模擬電子技術(shù)[M].北京:高等教育出版社,2011.10. </p><p> [2] 龍治紅,譚本軍.數(shù)字電子技術(shù)[
34、M].北京:北京理工大學(xué)出版社,2010.7</p><p> [3] 王靜霞.單片機(jī)應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2009.5 </p><p> [4] 徐瑋.C51單片機(jī)高效入門[M].機(jī)械工業(yè)出版社,2006.</p><p> [5] 張永楓.單片機(jī)應(yīng)用實(shí)訓(xùn)教程[M].清華大學(xué)出版社,2008 </p><p> [
35、6] 龍治紅.數(shù)字電子技術(shù)[M].北京理工大學(xué)出版社,2010.7</p><p><b> 十一、致謝</b></p><p> 感謝chen老師在這兩周來的盡心照顧,感謝您的耐心指導(dǎo)和解答。同時也要感謝給予我?guī)椭耐瑢W(xué),尤其是哥在自己已經(jīng)很忙的情況下,還幫我查電路,解答,能夠完成這次設(shè)計(jì)沒有他是不可能的,感謝哥! </p><p>&l
36、t;b> 附錄</b></p><p> 將編程練習(xí)題,數(shù)字時鐘設(shè)計(jì)的分析及完整程序附上,程序必須加上注釋;將protel仿真練習(xí)題,protel原理圖及仿真結(jié)果圖附上,并進(jìn)行相應(yīng)的分析。</p><p><b> 1.整流器</b></p><p> 按如圖所示要求,建立protel仿真原理圖,要求仿真顯示、和的波形
37、,同時改變值的大小,觀察波形的變化。</p><p><b> 圖7 整橋仿真圖</b></p><p> 圖8 改變電容后的仿真圖</p><p><b> 2.數(shù)字時鐘</b></p><p><b> 內(nèi)容要求:</b></p><p>
38、 1. 用7段8位的LED數(shù)碼管設(shè)計(jì)出一個數(shù)字時鐘,要求顯示分(2位)、秒(2位)及十分之一秒即0.1秒(1位)。按下啟動按鈕啟動數(shù)字時鐘,按下停止按鈕暫停計(jì)時,當(dāng)再次按下啟動按鈕時,從當(dāng)前值繼續(xù)計(jì)時,當(dāng)按下復(fù)位按鈕時,時鐘復(fù)位。</p><p> 2. 通過設(shè)定定時按鍵,對時鐘的分鐘進(jìn)行設(shè)定,每按一次,分鐘設(shè)定加1,開始時,LED燈D1處于熄滅狀態(tài),當(dāng)啟動計(jì)時后,計(jì)時到達(dá)設(shè)定時間,時鐘復(fù)位,且LED燈D1處于
39、一直亮的狀態(tài)。</p><p> 圖8-1 數(shù)字時鐘</p><p> 在protues軟件中按圖8-1,建好實(shí)驗(yàn)電路圖。按要求編寫程序。</p><p> 圖9 數(shù)字時鐘仿真圖</p><p><b> 程序如下:</b></p><p> #include<reg52.h
40、></p><p> #define uchar unsigned char </p><p> #define uint unsigned int</p><p> uchar shuzi[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //是數(shù)碼管的段選,數(shù)組里邊的分別表示:012345
41、6789</p><p> uchar weixuan[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 是數(shù)碼管的位選 </p><p> sbit k1=P3^0; //啟動</p><p> sbit k2=P3^1; //復(fù)位</p>
42、<p> sbit k3=P3^2; //停止</p><p> sbit d1=P0^0; //LED燈</p><p> uint i,second,minute,n,x,b,c,a,flag1,flag2;</p><p> void delay(uchar i); //
43、延時函數(shù)</p><p> void shizhong(); //顯示數(shù)字時鐘</p><p> void dingshi(); //用于定時分鐘函數(shù)</p><p> void delay5ms(); //定時5MS用于按鍵的消抖</p><p> void shizhong()
44、; //時鐘控制函數(shù),包括對時鐘的啟動,復(fù)位,停止,設(shè)定設(shè)定的操作</p><p> void main()</p><p><b> {</b></p><p> TMOD=0x12; // 定時器1工作方式1和定時器0工作方式2</p><p> TH1=(6553
45、6-50000)/256; // 定時時間為50MS 設(shè)初值</p><p> TL1=(65536-50000)%256; //</p><p> TR1=0; //開定時器1</p><p> EA=1; //開總中斷 </p><p> ET
46、1=1; //開定時器T1允許位 </p><p> EX1=1; // 開放外部中斷0允許位</p><p> IT1=1; // 置外部中斷為邊沿(下降沿4)觸發(fā)方式</p><p> P2=0x00; //P2口為段選<
47、;/p><p> P1=0xff; //P1口為位選</p><p><b> while(1)</b></p><p><b> {</b></p><p> shizhong();</p><p> shizhong();</
48、p><p><b> }</b></p><p><b> }</b></p><p> void dingshiqing1() interrupt 3 //用定時器1 中斷號為3</p><p><b> {</b></p><p> TH1
49、=(65536-50000)/256; //定時時間為50MS</p><p> TL1=(65536-50000)%256; //</p><p> i++; //</p><p> if(i==2) //100ms到,即0.1秒,即0.1秒加1</p><p><b> {</b><
50、/p><p><b> i=0;</b></p><p><b> n++;</b></p><p> if(n==10)//1000ms到,即1秒,秒加1,后n要清零</p><p><b> { </b></p><p><b>
51、 n=0;</b></p><p><b> second++;</b></p><p> if(second==60) // 60秒到,即分鐘加1,后秒要清零</p><p><b> {</b></p><p><b> second=0;</b>
52、;</p><p><b> minute++;</b></p><p> if(minute==60) // 60分鐘到,分鐘要清零</p><p><b> minute=0;</b></p><p><b> }</b></p><p>
53、<b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void weidu1() interrupt 2 //外部中斷1</p><p><b> {</b></p&g
54、t;<p> unsigned int z;</p><p> flag1=1; //</p><p><b> b=second;</b></p><p><b> c=n;</b></p><p><b> a++;</b></p
55、><p><b> if(a==60)</b></p><p><b> a=0;</b></p><p> for(z=0;z<40;z++)</p><p> dingshi();</p><p><b> }</b></p>
56、<p> void delay(uchar i)</p><p><b> {</b></p><p> unsigned char j,k;</p><p> for(k=0;k<i;k++)</p><p> for(j=0;j<255;j++);</p><p
57、><b> }</b></p><p> void shizhong()</p><p><b> {</b></p><p> P1=weixuan[6];</p><p> P2=smg_du[n]; //顯示時鐘的0.1秒位</p><p
58、><b> delay(2);</b></p><p> P1=weixuan[5];</p><p> P2=0x40; // "-"</p><p><b> delay(2);</b></p><p> P1=weixuan[3];
59、</p><p> P2=smg_du[second/10]; //顯示時鐘的秒的十位</p><p><b> delay(2);</b></p><p> P1=weixuan[4];</p><p> P2=smg_du[second%10]; // 顯示時鐘的秒的個位</p><
60、;p><b> delay(2);</b></p><p> P1=weixuan[2];</p><p> P2=0x40; // "-"</p><p><b> delay(2);</b></p><p> P1=weix
61、uan[0];</p><p> P2=shuzi[minute/10]; // 顯示時鐘的分鐘的十位</p><p> delay(2); </p><p> P1=weixuan[1];</p><p> P2=shuzi[minute%10]; // 顯示時鐘的分鐘的個位</p><p>
62、 delay(2); </p><p><b> }</b></p><p> void dingshi()</p><p><b> {</b></p><p> P1=weixuan[6];</p><p> P2=0x00; </p>
63、;<p><b> delay(2);</b></p><p> P1=weixuan[5];</p><p> P2=0x00; </p><p><b> delay(2);</b></p><p> P1=weixuan[3];</p><p&
64、gt; P2=0x00; </p><p><b> delay(2);</b></p><p> P1=weixuan[4];</p><p> P2=0x00; </p><p><b> delay(2);</b></p>&l
65、t;p> P1=weixuan[2];</p><p> P2=0x00; </p><p><b> delay(2);</b></p><p> P1=weixuan[0];</p><p> P2=smg_du[a/10]; // 顯示時鐘的分鐘的十位</p><
66、;p> delay(2); </p><p> P1=weixuan[1];</p><p> P2=smg_du[a%10]; // 顯示時鐘的分鐘的個位</p><p> delay(2); </p><p><b> }</b></p><p> void shi
67、zhong()</p><p><b> {</b></p><p> if((a==minute)&&(b==second)&&(c==n))// 判斷是不是到了定時的時間</p><p><b> {</b></p><p> if(flag2==1)
68、 //flag2為標(biāo)志位,是在按K1啟動的時候啟動定時的</p><p><b> {</b></p><p> flag2=0; </p><p> d1=0; //到了定時時間LED燈亮</p><p> minute=0; //時鐘復(fù)位,即分鐘,秒,0.1秒都清零</p>
69、<p> second=0; //</p><p> n=0; //</p><p><b> }</b></p><p><b> } </b></p><p> if(k1==0) //判斷是不是要啟動時鐘</p><p>
70、;<b> {</b></p><p> delay5ms(); //延時消抖</p><p><b> if(k1==0)</b></p><p><b> {</b></p><p> TR1=1;//開定時器1</p><p>
71、 if(flag1==1) //設(shè)標(biāo)志位,只有在按下定時按鍵才進(jìn)入這個函數(shù)</p><p><b> {</b></p><p><b> flag1=0;</b></p><p><b> flag2=1;</b></p><p><b> }
72、 </b></p><p><b> }</b></p><p><b> }</b></p><p> if(k2==0) // 判斷是不是要對時鐘進(jìn)行復(fù)位</p><p><b> {</b></p><p> del
73、ay5ms();</p><p><b> if(k2==0)</b></p><p><b> {</b></p><p><b> n=0;</b></p><p><b> second=0;</b></p><p>
74、<b> minute=0;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(k3==0)//判斷是不是要對時鐘進(jìn)行停止</p><p><b> { </b>&l
75、t;/p><p> delay5ms();</p><p><b> if(k3==0)</b></p><p><b> {</b></p><p> TR1=0; //關(guān)定時器1 </p><p><b> }</b></p&g
76、t;<p> while(!k3);//</p><p><b> }</b></p><p><b> }</b></p><p> void delay5ms()</p><p><b> {</b></p><p>&l
77、t;b> uint y;</b></p><p><b> TH0=6;</b></p><p><b> TL0=6;</b></p><p> for(y=0;y<20;y++)</p><p><b> {</b></p>
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--水塔水位控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--水塔水位控制系統(tǒng)
- 課程設(shè)計(jì)-單片機(jī)水塔水位控制
- 單片機(jī)課程設(shè)計(jì)--水塔水位控制設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--水塔水位
- 單片機(jī)水位水塔課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---水塔水位控制部分
- 單片機(jī)水位控制系統(tǒng)課程設(shè)計(jì)
- 基于單片機(jī)水塔水位控制系統(tǒng)的設(shè)計(jì)
- 基于單片機(jī)水塔水位控制系統(tǒng)的設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---單片機(jī)水塔水位控制系統(tǒng)設(shè)計(jì)
- 【畢業(yè)設(shè)計(jì)】基于單片機(jī)水塔水位控制系統(tǒng)
- 水塔水位控制系統(tǒng)課程設(shè)計(jì)
- 【畢業(yè)設(shè)計(jì)】基于單片機(jī)水塔水位控制系統(tǒng)
- 水塔水位控制系統(tǒng)課程設(shè)計(jì)
- plc課程設(shè)計(jì)---水塔水位控制系統(tǒng)
- 水塔水位控制系統(tǒng)電子課程設(shè)計(jì)
- plc課程設(shè)計(jì)報(bào)告--水塔水位控制系統(tǒng)
評論
0/150
提交評論