單片機課程設計,單片機實現的順序控制_第1頁
單片機課程設計,單片機實現的順序控制_第2頁
單片機課程設計,單片機實現的順序控制_第3頁
單片機課程設計,單片機實現的順序控制_第4頁
單片機課程設計,單片機實現的順序控制_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、電氣及自動化課程設計報告題 目: 單片機實現的順序控制 課 程: 單片機系統(tǒng)設計與Proteus仿真 學生姓名: 學生學號: 年 級: 專 業(yè): 班 級: 指導教師: 2015年9月目錄一、課程設計性質和目的1二、軟件介紹11、 Proteus12、 Keil uVision42三、設計要求及原理說明21 、課程設計的任務與要求22 、原理說明2四、設計主要流程3五、順序程序設計5六、電路的設計與仿真7七、總結11八、參考書籍11一、課程設計性質和目的單片機課程設計是單片機原理與應用及C51程序設計課程結束后的一門綜合性實踐課。利用所學知識用單片機實現順序控制。所選題目單片機實現的順序控制緊密

2、結合所學的主要內容,加深鞏固所學知識,同時對所學內容進行擴展,有一定的深度和廣度。通過電路設計、安裝、調試等一系列環(huán)節(jié)的實施使我對單片機有了更進一步的了解,并且是我有了以下收獲。(1)加強了對單片機和C語言的認識,充分掌握和理解設計各部分的工作原理、設計過程、選擇芯片器件、模塊化編程等多項知識。(2)用單片機模擬實現具體應用,使個人設計能夠真正使用。(3)把理論知識與實踐相結合,充分發(fā)揮個人能力,并在實踐中鍛煉。(4)提高了利用已學知識分析和解決問題的能力。二、軟件介紹1、 ProteusProtues軟件是英國Lab Center Electronics公司出版的EDA工具軟件(該軟件中國總

3、代理為廣州風標電子技術有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前比較好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協同仿真,一鍵切換到PCB設計,真正實現了從概念到產品的完整設計。是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM

4、、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MATLAB等多種編譯器。2、 Keil uVision4KeilC51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、鏈接器、庫管理和一個功能強大的仿真調試器等在內的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(Vision)將這些部分組合在一起。運行Keil軟件需要WIN98、NT、WIN2000、WINXP

5、等操作系統(tǒng)。如果你使用C語言編程,那么Keil幾乎就是你的不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調試工具也會令你事半功倍。三、設計要求及原理說明1 、課程設計的任務與要求在工業(yè)生產中,利用單片機的數字量輸出可實現順序控制。例如,注塑機工藝過程大致按“合模注射延時開模產伸產退”順序動作,用單片機控制很容易實現。單片機的P1.0-P1.6控制注塑機的7道工序,7道工序用控制7只發(fā)光二極管的點亮來模擬。設定每道工序時間轉換以延時來表示。P3.3為“故障”開關,合上為故障報警??刂芇1.7上的音響發(fā)出報警聲響。報警聲響只有在工作期間才會響起,而停止工作期間報

6、警不會響起。P3.4腳上的單刀雙擲開關作為“啟動”或“停止”開關。設定前6道工序中只有一位輸出,只點亮1只發(fā)光二極管,第7道工序有3位同時輸出(P1.6、P1.5、P1.4上的3只發(fā)光二極管同時點亮)。2 、原理說明本題目利用單片機的P1.0-P1.6輸出的高低電平來控制發(fā)光二極管的亮與滅,表示工業(yè)生產過程的順序控制進程,P1.7輸出的高低電平控制是否發(fā)出警報聲響。P3.3與P3.4作為輸出,單片機檢測P3.3與P3.4的輸出電平,來判斷“故障”或“停止”開關的狀態(tài)。四、設計主要流程先分析設計要求,根據設計要求來設定代碼程序,然后進行代碼的編寫,接著對代碼進行編譯校驗,檢查錯誤,改正錯誤。接著

7、根據設計要求和代碼,進行順序控制器的原理電路圖設計,此步要在Protues軟件進行繪制仿真,然后根據設計要求對繪制出的原理電路圖進行測試,如若不符合設計要求繼續(xù)更改,直至符合要求為止。然后進行電路模擬,將符合設計要求的電路先行保存。再將源程序代碼用Keil軟件生成hex文件。再利用stc軟件將生成的hex文件傳輸到單片機中完成驗證。大致設計流程如下圖所示。(“生成hex文件并傳輸到單片機中”,這一設計步驟由于電腦原因無法連接C51單片,所以無法實現。)分析結果,書寫設計報告開始設計控制要求分析分析確定輸入輸出設備順序控制程序設計顯示設計程序設計模擬調試分析問題解決問題聯機調試 流程圖 五、順序

8、程序設計通過分析設計要求可知,需要完成單片機P1.0-P1.6輸出的高低電平來控制發(fā)光二極管的亮與滅,表示工業(yè)生產過程的順序控制進程,P1.7輸出的高低電平控制是否發(fā)出警報聲響。P3.3與P3.4作為輸出,單片機檢測P3.3與P3.4的輸出電平,來判斷“故障”或“停止”開關的狀態(tài)。則設計程序代碼及其解釋如下:void main() EX1=1; /外部中斷1允許 IT1=0; /電平觸發(fā)中斷 EA=1; /總中斷允許 while(1) P1&=0xfe; /工序1,完成后進入工序2 Delay(2000); P1&=0xfd; /工序2,完成后進入工序3 Delay(2000)

9、; P1&=0xfb; Delay(2000); P1&=0xf7; Delay(2000); P1&=0xef; Delay(2000); P1&=0xdf; Delay(2000); P1&=0x8f; Delay(2000); /7道工序完成,重新開始循環(huán) void int1_isp() interrupt 2 /外部中斷1中斷服務函數 P=P3_4; /報警 在keil軟件中測試如下:六、電路的設計與仿真順序控制器的原理電路及仿真如下圖2所示。電路中的7個發(fā)光二極管從上到下分別代表7道工序。仿真運行,發(fā)光二極管將按順序控制規(guī)律來點亮。P3.4引腳

10、上的單刀雙擲開關用來選擇控制操作啟動(向上)或停止(向下)。P3.3引腳上的開關閉合,表示發(fā)生故障,從而控制P1.7上的音響發(fā)出警報響。報警聲響只有在工作期間才會響起,而停止工作期間警報不會響起。P1口的P1.0P1.6接七只發(fā)光二極管,P1.7接報警器,P3.4接開工啟動開關,P3.2接外部故障輸入模擬開關。 主程序流程圖:當程序啟動,開啟中斷,并使P1、P3口初始化,當給start開始信號即P3.4得電時,運行主程序中使發(fā)光二極管得電的程序,從L0至L7,按順序每次只點亮一只二極管,并延時一段時間,然后點亮下一只二極管,當第七只二極管得電延時完成后,程序跳轉到工序1開始的地方,按此規(guī)律從工

11、序1到工序7依次循環(huán)進行下去。 中斷服務子程序:當外部故障輸入模擬開關即P3.3得電時,運行中斷子程序,先使P1=0x00即關閉輸出保護現場,speak=1使報警器報警。然后判斷故障情況,如果故障清除,則恢復現場跳出中斷子程序回到主程序;如果故障沒有清除,則報警器繼續(xù)報警直至故障清除。開始開中斷,P1、P3口初始化等開工工序1延時工序2延時工序7延時關輸出保護現場報警恢復現場返回清除? 圖2. 順序控制器的原理電路 對原理電路進行仿真調試如下:圖3.仿真電路調試1(一)、在調試過程1中,當按下按鈕開關后會發(fā)現7個發(fā)光二極管會從上到下依次由“亮”到“滅”,而此時P3.4引腳上的單刀雙擲開關置于啟

12、動(向上)處,此時電路正常工作。如圖2所示(二)、當單刀雙擲開關置于停止(向下)處時電路狀態(tài)如圖3所示。最后三個發(fā)光二極管會亮,前四個會滅,并保持這種狀態(tài)。(三)、當單刀雙擲開關置于啟動(向上)處時,將P3.3引腳上的開關閉合,此時電路狀態(tài)如圖4所示。此時電路處在“故障”狀態(tài),LS1處SOUNDER 會發(fā)出警報聲,表示電路故障。圖4.仿真電路調試2圖5.仿真電路調試3 七、總結通過本課程設計,我對單片機的工作原理以及運用要求有了更進一步的了解,對我的動手能力,編程能力都有很大的幫助。這次課程設計的控制要求有:用七只發(fā)光二極管模擬工業(yè)控制中的7道工序,高電平點亮,每道工序用定時器進行工序間的順序轉換。我首先收集了大量的資料,查找有關集成芯片和器件的文獻,只有對各種元器件有了充分的了解之后在實際的操作才會更快。在操作過程中我發(fā)現自己的電路圖接對了,但是卻無法仿真出來,仔細檢查后發(fā)現沒有把代碼加入電路中??梢娙绻粚φ麄€設計的每一個細節(jié)都了解的清清楚楚的話,哪怕做對了,你都搞不懂這是怎么回事。這告訴我們,以后無論在工作還是在生活中,都要認真對待每一個細節(jié),不能得過且過,不求甚解。 在編程方面一直是我的弱項,好多程序我都搞不明白,這個時候我都會盡量去問同學,在課程設計的過程中,同學之間的相互幫助是相當

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論