單片機課程設計報告-多臺設備自動循環(huán)控制系統(tǒng)設計.doc
《單片機課程設計報告-多臺設備自動循環(huán)控制系統(tǒng)設計.doc》由會員分享,可在線閱讀,更多相關《單片機課程設計報告-多臺設備自動循環(huán)控制系統(tǒng)設計.doc(17頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、鹽城工學院課程設計說明書(2011)目 錄1.課題目的和意義12.方案的論證22.1設計任務22.2設計要求22.3創(chuàng)新部分22.4各部分元器件選用方案論證22.4.1單片機的選用22.4.2顯示元器件的選用22.4.3限流電阻的選用32.4.4電源模塊的選用32.4.5其他元器件的選用33.系統(tǒng)硬件設計33.1總體設計33.2單片機最小系統(tǒng)43.3中斷控制模塊53.4設備模塊53.5顯示模塊63.6整體電路64.系統(tǒng)軟件設計74.1主程序流程圖及程序74.2中斷子程序流程圖及程序95.軟硬件聯(lián)調105.1軟硬件調試中出現(xiàn)的問題及解決措施105.2實物圖115.3運行結果11結束語12參考文獻
2、13附錄13附錄一:多臺設備自動循環(huán)控制系統(tǒng)設計電路原理圖(圖 附錄-1)13附錄二:多臺設備自動循環(huán)控制系統(tǒng)設計PCB圖(圖 附錄-2、附錄-3)14附錄三:Proteus仿真效果圖(圖 附錄-4)14附錄四:多臺設備自動循環(huán)控制系統(tǒng)設計C語言程序清單14附錄五:多臺設備自動循環(huán)控制系統(tǒng)設計元器件目錄表171.課題目的和意義本課題為“多臺設備自動循環(huán)控制”,旨在用發(fā)光二極管模擬工業(yè)現(xiàn)場多臺設備,通過編程控制8052系列單片機,從而使這些設備按照要求循環(huán)運行。從方案的提出到方案的論證到軟件仿真、制作實物進行軟硬件聯(lián)調,再到制作印制電路板實現(xiàn)批量生產,通過為期2周的實訓,電氣專業(yè)08級大學生以小
3、組討論形式進行相關課題的研究、拓展,從而培養(yǎng)了團隊意識、創(chuàng)新意識,增強動手能力和工程實踐能力。每一位成員均在實訓中加強了對單片機的理解和掌握,使所學知識更加牢固,并形成體系。2.方案的論證2.1設計任務用單片機控制多臺設備,使設備自動循環(huán)運行。2.2設計要求以8只發(fā)光二極管代替8臺設備,接在P1口上。P3.0和P3.2為控制口,其外部分別與一只按鈕連接,通過對按鈕的控制從而控制8只發(fā)光二極管的亮滅情況。沒有按鈕按下時,8臺設備全部運行,P3.0按鈕按下時8只發(fā)光二極管以0、1、2、3、4、5、6、7、5、3、1、7、5、3、1、7為一個過程開始循環(huán)運行,當P3.2按鈕按下時8只發(fā)光二極管全部點
4、亮。2.3創(chuàng)新部分用一只8段LED數(shù)碼管同步顯示正在運行的設備的編號,便于工作人員進行過程記錄。2.4各部分元器件選用方案論證2.4.1單片機的選用本課題由于要求使用8052系列單片機,故在該系列中選擇。市場上現(xiàn)使用較多的52系列單片機有Atmel公司生產的AT89C52、AT89S52,以及STC公司生產的STC89C52、STC89S52,對比兩家公司的產品可知,STC公司的產品可多次擦寫,一個機械周期只要6個時鐘周期,且支持USB在線讀寫,處理速度優(yōu)于Atmel公司生產的產品。所以對比后選擇使用STC89C52單片機芯片。2.4.2顯示元器件的選用通過學習和調研市場行情,我們可以發(fā)現(xiàn),能
5、夠用來做顯示器使用的有8段數(shù)碼管、液晶顯示屏以及點陣模塊等。這其中第一種成本低廉、使用方便、顯示明亮,適合顯示位數(shù)少、線路不復雜的電路;第二種價格較高,引線較多,不但可以顯示數(shù)字還能顯示文字,可顯示范圍廣,一般多用于需要顯示文字或字母的電路;第三種不適合做靜態(tài)顯示。由于本課題只需要控制8臺設備,位數(shù)少且用數(shù)碼管顯示方便,故我們的顯示元器件選用8段LED數(shù)碼管。2.4.3限流電阻的選用由于本課題要求在P1口控制8只LED發(fā)光二極管,故需要選用限流電阻來限制流過發(fā)光二極管的電流,若選用電阻過小,則二極管容易因過流而燒掉,若選用電阻過大,則二極管容易因電流過小而發(fā)光暗淡,所以選用電阻不能太大或太小。
6、查閱發(fā)光二極管各項參數(shù)后發(fā)現(xiàn),發(fā)光二極管正常發(fā)光時電流約為10mA,發(fā)光二極管導通電阻很小可忽略不計,則根據(jù)公式R=(E-U)/I-R0可算出,限流電阻阻值在500左右。故選用阻值為500的電阻。2.4.4電源模塊的選用要想使單片機正常運行,可靠、穩(wěn)定的電源必不可少,在以往的電子設計中,我們一般制作5V電源,這樣做的目的是通過變壓器變壓,將民用220V電直接轉為5V電供單片機使用,在沒有電腦USB時可以直接找一個插座接上便可使用。但缺點是制作成本較高,且體積較大,燒錄程序時還需要另配燒錄器。由于我們在課程設計過程中時刻都要使用筆記本電腦,且程序需要在線燒寫,故我們購買了USB燒錄器,既可以在線
7、燒寫程序也可以當作電源使用,方便快捷。2.4.5其他元器件的選用在確定了單片機芯片、8段LED數(shù)碼管、限流電阻、電源模塊后,我們還確定選用8只直徑5mm的LED發(fā)光二極管、3只按鈕、排針、排阻、導線若干以及用于單片機最小系統(tǒng)的電容、晶振、電阻等。3.系統(tǒng)硬件設計3.1總體設計 P0 STC89C52RCP1 RXD INT0RXD、INT0中斷控制8臺設備數(shù)碼管顯示部分總體設計框架圖如圖3-1所示:圖 3 - 1本設計采用STC89C50032RC單片機作為系統(tǒng)控制芯片,單片機接收INT0、RXD傳來的中斷信號并轉變?yōu)閷?臺設備的控制,以8段LED數(shù)碼管為顯示模塊,將正在運行的設備編號同步地顯
8、示出來,在控制電路中,主要是由兩個按鈕來指揮設備的運行方式。3.2單片機最小系統(tǒng)最小系統(tǒng)包括晶振電路、復位電路和電源部分。圖3-2為單片機最小系統(tǒng)。圖 3 2 單片機最小系統(tǒng)電路圖3.3中斷控制模塊中斷控制模塊如圖3-3所示。圖 3 3 中斷控制模塊該模塊主要由兩個按鈕組成,其中一個按鈕與P3.0口相連,另一按鈕與P3.2口相連,兩個按鈕的公共端接地。當按鈕被按下時,與該按鈕所接的單片機端口變?yōu)榈碗娖?,信號傳入單片機內,申請中斷。單片機將響應中斷,根據(jù)中斷程序控制8臺設備的運行方式。3.4設備模塊設備模塊如圖3-4所示。圖 3 4 設備模塊設備模塊主要由8只LED發(fā)光二極管代替工業(yè)現(xiàn)場的8臺設
9、備,通過控制發(fā)光二極管的亮暗方式從而達到模擬控制工業(yè)現(xiàn)場8臺設備的目的。8只發(fā)光二極管分別于一只500的電阻串聯(lián),電阻起限流作用,防止發(fā)光二極管因電流過大而燒掉,也防止可能因電流過小而無法正常顯示。每只電阻除與發(fā)光二極管相連外,另一端與單片機對應P0口相連,從而被單片機所控制。8只發(fā)光二極管有一公共端,且接高電平。當P0口輸出低電平時,對應的發(fā)光二極管點亮。3.5顯示模塊顯示模塊如圖3-5所示。圖 3 5 顯示模塊該模塊主要由102排阻和一只8段LED數(shù)碼管組成。P0口為雙向I/o口,要想保證端口能正確地輸出高電平,需要在外部加上拉電阻,故使用102排阻作為上拉電阻。在單片機處于輸出狀態(tài)時排阻
10、將P0口電位拉高。由于共陽極數(shù)碼管使用時需加驅動電路,增加了電路的復雜度和成本,故我們選用共陰極數(shù)碼管,其公共端接地。在實際使用時,共陽、共陰極數(shù)碼管需要用萬用表進行區(qū)分,且編程時顯示代碼亦不相同,在這里須注意。3.6整體電路系統(tǒng)整體電路如圖3-6所示。圖 3 6 整體電路圖4.系統(tǒng)軟件設計4.1主程序流程圖及程序主程序如下:void main()uchar k;IE=0 x81; /EA=1開總中斷;Ex0=1開外部中斷0;P1=0 x00;SP=0 x7B; /堆棧指針復位while(start); /當P3.0所接按鈕按下時開始對設備循環(huán)控制while(1) /若外部中斷不產生,則一直不
11、跳出該部分flag=1;if(flag=0)break;P1=0 x7f;for(i=8;i0;i-)P1=_crol_(P1,1); /左移函數(shù)k=P1;switch(k)/數(shù)碼管顯示正在運行的設備編號case 0 xfe: P0=0 x3f; break;case 0 xfd: P0=0 x06; break;case 0 xfb: P0=0 x5b; break;case 0 xf7: P0=0 x4f; break; case 0 xef: P0=0 x66; break;case 0 xdf: P0=0 x6d; break;case 0 xbf: P0=0 x7d; break;d
12、efault: P0=0 x07; break; delay(500);for(i=8;i0;i-) P1=_cror_(P1,2);k=P1;switch(k)case 0 xfe: P0=0 x3f; break;case 0 xfd: P0=0 x06; break;case 0 xfb: P0=0 x5b; break;case 0 xf7: P0=0 x4f; break;case 0 xef: P0=0 x66; break;case 0 xdf: P0=0 x6d; break;case 0 xbf: P0=0 x7d; break;default: P0=0 x07; brea
13、k;delay(500);主程序流程圖如圖4-1所示。圖 4 1 主程序流程圖開總中斷和外部中斷0P1口輸出低電平,8臺設備全部運行設定堆棧指針值P3.0口所接按鈕是否按下?等待被按下設標志為1判斷是否收到中斷請求使標志變?yōu)?跳出主程序進入中斷子程序8臺設備按控制要求運行,數(shù)碼管同步顯示正在運行的設備的編號NYYN開始4.2中斷子程序流程圖及程序中斷子程序如下:int0() interrupt 0 /外部中斷0P1=0 x00;flag=0;while(start); /只有P3.0口為低電平時才跳出中斷中斷子程序流程圖如圖4-2所示。P1口接低電平,8臺設備全部運行設標志為0判斷P3.0口是
14、否按下跳出中斷,返回主程序NY圖 4 2 中斷子程序流程圖5.軟硬件聯(lián)調5.1軟硬件調試中出現(xiàn)的問題及解決措施問題1:將USB燒寫器尾部的短路帽子摘掉后插上電腦,程序無法燒寫進芯片。解決措施:將燒寫器的RX線與芯片上的TXD相連,TX線與芯片上RXD相連后,程序即可燒寫進去。問題2:數(shù)碼管焊接在萬能板上后,在8只LED發(fā)光二極管正常運行情況下,數(shù)碼管無法同步正常顯示。解決措施:用萬用表重新測量數(shù)碼管的參數(shù)后發(fā)現(xiàn)勿用了共陽極數(shù)碼管,在重新?lián)Q上共陰極數(shù)碼管后即可。問題3:數(shù)碼管顯示出的數(shù)字是亂碼。解決措施:檢查程序后發(fā)現(xiàn)參考代碼是用于共陽極數(shù)碼管的,在更改為共陰極數(shù)碼管程序后即可。問題4:LED發(fā)
15、光二極管發(fā)光暗淡。解決措施:自己原配的限流電阻過大,換用學校發(fā)的500電阻后,發(fā)光強度剛好。問題5:使用Altium Designer軟件畫PCB時找不到目標元件如排針、排阻、STC89C52單片機、晶振相對應的元件庫或封裝。解決措施:用其他元件庫代替目標元件,實在無法代替的自己制作元件庫或封裝。問題6:將PCB圖中的導線加粗后始終顯示綠色錯誤狀態(tài)。解決措施:在菜單欄的Design下點擊RulesRoutingWidthWidth,在Constraints欄中修改Max Width和Preferred Width兩個值即可。5.2實物圖萬能板搭電路并測試正確后的實物圖如圖5-1、圖5-2所示。
16、 圖 5 1 實物圖(正面) 圖 5 2 實物圖(背面)5.3運行結果運行效果如圖5-3所示。 圖 5 3 運行效果圖結束語經(jīng)過10多天的設計與制作,我終于較圓滿地完成了多臺設備自動循環(huán)控制這一課題。雖然整體看來,一個不怎么復雜的電路花了10多天時間,效率比較低下,但對于第一次經(jīng)歷這種完整的過程的我來說,其結果還是令人欣慰的。從設計電路到仿真,再到購買元器件,在萬能板上搭電路模擬,到用軟件畫PCB圖,再到發(fā)送原理圖給印制電路板廠家生產PCB板,最終再在做好的PCB板上焊元器件直至完工,其中的艱辛只有我們團隊的同學們能夠體會得到。我們10個人組成的團隊,首先要感謝張?zhí)m紅老師對我們的悉心指導,她對
17、我們的課題給予了較為詳細的講解,對我們的元器件選擇給予了幫助,也同樣感謝顧善忠、袁衛(wèi)衛(wèi)等同學,他們作為單片機方面較為杰出的學生,對我們課題的調試給予了極大的幫助。作為個人,我要感謝我的團隊,正是由于團隊每一個人的共同努力才有了我們最終的結果。我的團隊成員是B電氣081班的李超、B電氣082班的周鵬鵬、張本瑞、B電氣083班的王霄、陳凱峰、B電氣084班的蔣媛、張寧、以及BD電氣081班的唐利剛、郁磊。課題終究會結束,但我們的單片機生涯才剛剛開始,今后一定還將遇到更復雜的課題和更難以解決的問題,我相信,只有依靠團隊的力量,我們才能取得成功,只有依靠堅忍不拔的毅力我們才能戰(zhàn)無不勝!參考文獻1.單片
18、機控制實訓指導及綜合應用實例 張大明 主編 機械工業(yè)出版社 2.單片機原理及應用技術 陳益飛主編 國防工業(yè)出版社 3.Altium Designer原理圖與PCB設計 周潤景 張麗敏 王偉 編著 電子工業(yè)出版社 4.電工電子實習教程(第3版) 宋學瑞 主編 中南大學出版社 5.基于Proteus的8051單片機實例教程 李學禮 主編 電子工業(yè)出版社 6.Proteus教程電子線路設計、制版與仿真 朱清慧 張鳳蕊 翟天嵩 王志奎 編著 清華大學出版社 7.21天學通C語言 王正仲 等編著 電子工業(yè)出版社 8.新概念51單片機C語言教程入門、提高、開發(fā)、拓展全攻略 郭天翔 編著 電子工業(yè)出版社 9
19、.電子線路CAD實用教程(第3版) 潘永順 沙河 編著 西安電子科技大學出版社 附錄附錄一:多臺設備自動循環(huán)控制系統(tǒng)設計電路原理圖(圖 附錄-1)圖 附錄 1 多臺設備自動循環(huán)控制系統(tǒng)設計電路原理圖附錄二:多臺設備自動循環(huán)控制系統(tǒng)設計PCB圖(圖 附錄-2、附錄-3) 圖 附錄 2 PCB圖(正面) 圖 附錄 3 PCB圖(背面)附錄三:Proteus仿真效果圖(圖 附錄-4)圖 附錄 4 Proteus仿真效果圖附錄四:多臺設備自動循環(huán)控制系統(tǒng)設計C語言程序清單#include/包含52系列單片機頭文件#include/包含左右移函數(shù)的頭文件#define uchar unsigned ch
20、aruchar code DSY_CODE= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f /共陰09顯示;uchar data flag; /設標志位int i,x;sbit start=P30; /P3.0口為循環(huán)控制位,低電平時各設備循環(huán)運行sbit stop=P32; /P3.2口為全部工作位,低電平時所有設備均運行void delay(x) /延時子程序int t;while(x-) for(t=120;t0;t-)if(flag=0) break; /主程序運行過程中當產生中斷時跳出延時子程序int0() i
21、nterrupt 0 /外部中斷0P1=0 x00;flag=0;while(start); /只有P3.0口為低電平時才跳出中斷void main()uchar k;IE=0 x81; /EA=1開總中斷;Ex0=1開外部中斷0;P1=0 x00;SP=0 x7B; /堆棧指針復位while(start); /當P3.0所接按鈕按下時開始對設備循環(huán)控制while(1) /若外部中斷不產生,則一直不跳出該部分flag=1;if(flag=0)break;P1=0 x7f;for(i=8;i0;i-)P1=_crol_(P1,1); /左移函數(shù)k=P1;switch(k)/數(shù)碼管顯示正在運行的設
22、備編號case 0 xfe: P0=0 x3f; break;case 0 xfd: P0=0 x06; break;case 0 xfb: P0=0 x5b; break;case 0 xf7: P0=0 x4f; break;case 0 xef: P0=0 x66; break;case 0 xdf: P0=0 x6d; break;case 0 xbf: P0=0 x7d; break;default: P0=0 x07; break; delay(500);for(i=8;i0;i-) P1=_cror_(P1,2);k=P1;switch(k)case 0 xfe: P0=0 x3
23、f; break;case 0 xfd: P0=0 x06; break;case 0 xfb: P0=0 x5b; break;case 0 xf7: P0=0 x4f; break;case 0 xef: P0=0 x66; break;case 0 xdf: P0=0 x6d; break;case 0 xbf: P0=0 x7d; break;default: P0=0 x07; break; delay(500);附錄五:多臺設備自動循環(huán)控制系統(tǒng)設計元器件目錄表序號元器件名稱數(shù)量1STC89C52單片機1塊28段1位LED數(shù)碼管1個3白色藍光LED發(fā)光二極管8只4500限流電阻8只51k電阻1只610k電阻1只7102排阻1個812M晶振1個930pF電容2只1010F電解電容1只11排針、導線若干12輕觸按鈕3個17
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。