基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)_第1頁
基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)_第2頁
基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)_第3頁
基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)_第4頁
基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、基于AT89S51單片機(jī)的工業(yè)順序控制的綜合設(shè)計(jì)摘要: 中斷在工業(yè)順序控制中的應(yīng)用是非?;A(chǔ)而且頻繁的。本次設(shè)計(jì)是中斷在工業(yè)順序控制中的綜合設(shè)計(jì),在設(shè)計(jì)過程中通過中斷來實(shí)現(xiàn)二極管循環(huán)亮燈以及故障報(bào)警等功能。通過匯編語言,仿真模擬軟件等多種軟件來完成的。關(guān)鍵詞:中斷;工業(yè)順序控制;匯編;仿真 Abstract: This design is interrupted in the industrial application of sequence control, cycle in the design process by interrupt diode lights and fault al

2、arm and other functions. Through the assembly language, simulation software and other software to complete. The design results are in conformity with requirements, overall is quite successful。Key words: interrupt; Industrial sequence control; Assembly; The simulation第 13 頁 (共 14頁)1 引言中斷(Interrupt)是一

3、種被廣泛使用的計(jì)算機(jī)技術(shù)。中斷技術(shù)實(shí)質(zhì)上是一種資源共享技術(shù),是解決資源競爭的有效方法,最終實(shí)現(xiàn)多項(xiàng)任務(wù)共享一個(gè)資源。而中斷系統(tǒng)又叫作中斷管理系統(tǒng),其功能是使處理機(jī)對外界異步事件具有處理能力。在實(shí)際的工業(yè)控制中對中斷的實(shí)時(shí)性要求是比較高的,也應(yīng)用得很普遍。怎么樣實(shí)時(shí)響應(yīng)中斷,并在中斷服務(wù)程序中及時(shí)完成相應(yīng)任務(wù)是本次設(shè)計(jì)的重點(diǎn)。本次設(shè)計(jì)是中斷在工業(yè)順序控制中的應(yīng)用,主要目的是為了讓我們了解中斷在生活中的應(yīng)用并且讓我們對知識(shí)的學(xué)習(xí)和鞏固有進(jìn)一步的加深。這次課程設(shè)計(jì)是通過89S51位單片機(jī)實(shí)現(xiàn),用單片機(jī)的P1P7做輸出口接八只發(fā)光二極管,用兩個(gè)外部中斷控制運(yùn)行和模擬故障,編寫程序,使發(fā)光二極管循環(huán)點(diǎn)亮

4、模擬順序控制,有故障時(shí)使P7發(fā)光點(diǎn)亮報(bào)警。同時(shí)需要面對兩方面的問題:一個(gè)是軟件的設(shè)計(jì),也就是使發(fā)光二極管循環(huán)亮燈和故障報(bào)警控制功能的程序編輯;另一個(gè)是硬件的設(shè)計(jì),。首先我需要通過protel將設(shè)計(jì)的實(shí)物的電路圖畫出來,再根據(jù)電路圖連接實(shí)物電路。在軟件編輯技術(shù)方面,需要靈活的掌握匯編語言并合理有效的利用匯編語言編程實(shí)現(xiàn)我們預(yù)期的軟件功能; 2 系統(tǒng)總體設(shè)計(jì)2.1 涉及的基礎(chǔ)知識(shí)中斷:在單片機(jī)系統(tǒng)中,中斷技術(shù)主要用于實(shí)時(shí)監(jiān)測與控制,也就是要求單片機(jī)能及時(shí)地響應(yīng)中斷請求源提出的服務(wù)請求,并作出快速響應(yīng)和及時(shí)處理。這些工作就是由單片機(jī)內(nèi)的中斷系統(tǒng)來實(shí)現(xiàn)的。當(dāng)中斷請求源發(fā)出中斷請求時(shí),如果中斷請求被允許

5、的話,單片機(jī)暫時(shí)中止當(dāng)前正在執(zhí)行的主程序,轉(zhuǎn)到中斷服務(wù)處理程序處理中斷服務(wù)請求。中斷服務(wù)處理程序處理完中斷請求后,再回到原來被中止的程序處繼續(xù)執(zhí)行被中斷的主程序。如果單片機(jī)沒有中斷系統(tǒng),單片機(jī)的大量時(shí)間可能會(huì)浪費(fèi)在查詢是否有服務(wù)請求發(fā)生的定時(shí)查詢操作上,即否認(rèn)是否有服務(wù)請求發(fā)生,都必須去查詢。采用中斷技術(shù)完全消除了單片機(jī)在查詢方式中的等待現(xiàn)象,大大提高了單片機(jī)的工作效率和實(shí)時(shí)性。由于中斷工作方式的優(yōu)點(diǎn)極為明顯,所以,單片機(jī)的片內(nèi)硬件中都帶有中斷系統(tǒng)。AT89S51單片機(jī)指令系統(tǒng):規(guī)定89S51單片機(jī)內(nèi)操作的語句或命令。指令是CPU按人們的意圖來完成某種操作的命令,以英文名稱或縮寫形式作為助詞符

6、。用助記符、符號(hào)地址、標(biāo)號(hào)等表示的書寫程序的語言,即匯編語言指令。2.2解決問題的思路單片機(jī)可以實(shí)現(xiàn)時(shí)序控制、時(shí)間控制等,用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng),因此選擇單片機(jī)作為控制芯片。按照單片機(jī)系統(tǒng)擴(kuò)展與系統(tǒng)配置狀況,單片機(jī)應(yīng)用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)及典型系統(tǒng)等。89S51單片機(jī)是本次課程設(shè)計(jì)運(yùn)用的主要原件。中斷設(shè)計(jì)是用一個(gè)帶有八個(gè)發(fā)光二極管的單片機(jī)最小應(yīng)用系統(tǒng),即為由發(fā)光二極管、晶振、復(fù)位、電源等電路和必要的軟件組成的單個(gè)系統(tǒng)。為了實(shí)現(xiàn)在編程中使用循環(huán)移位法來實(shí)現(xiàn)亮燈的程序,通過增加亮燈程序中循環(huán)的次數(shù)來保證亮燈的時(shí)間不是太快以至于難以觀察,所以選擇通過調(diào)用中斷來解

7、決出現(xiàn)故障時(shí)的亮燈方式以及鳴喇叭的控制等。2.2.1 設(shè)計(jì)原理圖圖 2-1 設(shè)計(jì)原理2.2.2 電路板PCB圖圖2-2 電路板PCB圖2.3 總體方案89S51的P1.0-P1.6控制控制發(fā)光二極管的閃爍,為低電平有效,設(shè)定每道工序時(shí)間轉(zhuǎn)換為延時(shí),P3、P4為開工啟動(dòng)開關(guān),高電平啟動(dòng)。P3.3為外部故障輸入模擬開關(guān),低電平報(bào)警,P1.7為報(bào)警聲音輸出,低電平有效。3 硬件設(shè)計(jì)3.1 89S51單片機(jī)引腳圖及引腳功能介紹本次設(shè)計(jì)的中斷功能就是基于89S51單片機(jī)的基礎(chǔ)上實(shí)現(xiàn)的,首先我們了解一下該單片機(jī)的基本信息:首先,AT89S51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes

8、 ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,AT89S51在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。并且它具有完整的輸入輸出、控制端口、以及內(nèi)部程序存儲(chǔ)空間。與我們通常意義上的微機(jī)原理類似,可以通過外接A/D,D/A轉(zhuǎn)換電路及運(yùn)放芯片實(shí)現(xiàn)對傳感器傳送信息的采集,且能夠提供以點(diǎn)陣或LCD液晶及外接按鍵實(shí)現(xiàn)人機(jī)交互,能對內(nèi)部眾多I/O端口連接步進(jìn)電機(jī)對外圍設(shè)備進(jìn)行精確操控,具有

9、強(qiáng)大的工控能力。我們先來簡單認(rèn)識(shí)一下,它的引腳如圖2-1所示:圖3-1 89S51引腳示意圖單片機(jī)89S51的40個(gè)引腳大致可分為以下幾類:1 電源及時(shí)鐘引腳Vcc、Vss;XTAL1、XTAL2.控制和I/O引腳。2 控制引腳、ALE/、/Vpp、RST(即RESET)。3 I/O口引腳P0、P1、P2、P3,為4個(gè)8位I/O口外部引腳。接著我們了重點(diǎn)了解一下AT89S51單片機(jī)的I/O口:P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),

10、P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序

11、存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89S51的一些特殊功能口,如下所示: 口管腳 備選功能 P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3

12、.2 (外部中斷0) P3.3 (外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 (外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸 出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí)

13、,將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 :外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /VPP:當(dāng)保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),將內(nèi)部鎖定為RESET;當(dāng)端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。

14、 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。在了解這些端口的功能后,我們就可以根據(jù)這些來編寫與之相應(yīng)的程序了。3.2 軟件設(shè)計(jì)本次課程設(shè)計(jì)的系統(tǒng)由硬件和軟件組成,在硬件原理圖搭建完成上電之后,我們還不能看到二極管循環(huán)亮燈的現(xiàn)象,我們還需要編寫程序控制單片機(jī)管腳電平的高低變化,來實(shí)現(xiàn)發(fā)光二極管的一亮一滅。軟件編程是本次課程設(shè)計(jì)的重點(diǎn)和難點(diǎn)。我編程實(shí)現(xiàn)二極管亮燈的方法是循環(huán)移位法,循環(huán)移位法是采用循環(huán)程序結(jié)構(gòu)進(jìn)行編程。我們在程序一開始就給P1口送一個(gè)數(shù),這個(gè)數(shù)本身就讓P1.0先低,其他位為高,然后延時(shí)一段時(shí)間,再讓這個(gè)數(shù)據(jù)向高位移動(dòng),然后再輸出至

15、P1口,這樣就實(shí)現(xiàn)亮燈循環(huán)的效果了。另外,就是報(bào)警程序中對于蜂鳴器工作時(shí)高低電平的控制以及第七個(gè)信號(hào)燈亮燈的控制。由于蜂鳴器的一端接電源,則其運(yùn)作時(shí)是需要低電平,而二極管運(yùn)作也是需要一個(gè)低電平,我們只需要在啟動(dòng)報(bào)警程序的時(shí)候給其賦予低電平即可正常工作。其主程序的流程圖如圖3-2,中斷服務(wù)子程序的流程圖如圖3-3。3-2 主程序流程圖 圖3-3 中斷服務(wù)子程序4 運(yùn)行與測試使用軟件編寫程序,使用KeiluVision軟件將生成的Uv2項(xiàng)目導(dǎo)入到軟件中,并按電路圖連接好線路,接線圖如圖4-1,確認(rèn)無誤后進(jìn)行調(diào)試。圖4-1 電路接線圖運(yùn)行開始時(shí)發(fā)光二極管無變化,需要波動(dòng)開關(guān)s1,使它置于高電位這時(shí)會(huì)

16、發(fā)現(xiàn)發(fā)光二極管會(huì)自右往左的依次閃爍,并且循環(huán),如圖4-2、圖4-3所示。圖4-2 循環(huán)示意圖(部分) 圖4-3 循環(huán)示意圖(部分)此時(shí)按下開關(guān)s2,發(fā)光二極管的亮燈情況會(huì)停止在由P1.6端口輸出地第七個(gè)燈上,與此同時(shí)另一端的蜂鳴器會(huì)發(fā)出報(bào)警信息,如圖4-4所示。當(dāng)再次點(diǎn)擊s2時(shí)示意故障排除后二極管會(huì)像開始的時(shí)候一樣循環(huán)亮燈。圖4-4 中斷示意圖 至此,整個(gè)設(shè)計(jì)的運(yùn)行環(huán)節(jié)順利完成,達(dá)到預(yù)期目的??偨Y(jié)由于本次課程設(shè)計(jì)含括了軟件和硬件知識(shí),并讓我切實(shí)體會(huì)到了中斷在實(shí)際中的應(yīng)用,所以在完成課程設(shè)計(jì)的同時(shí)也讓我們了解到知識(shí)在生活中的重要性,還間接地反映了我們在軟硬件設(shè)計(jì)和制作方面的不足。在這一段時(shí)間的設(shè)

17、計(jì)過程中我從對原理圖的設(shè)計(jì)、程序的編譯到對電路板各元器件的連接和程序的運(yùn)行等工作,讓我充實(shí)的體會(huì)到了課程設(shè)計(jì)的樂趣。一些原理雖然看似簡單,但做起來卻是一個(gè)細(xì)致的工作。另外,通過本次課程設(shè)計(jì),我對Protel 99 SE軟件的認(rèn)識(shí)達(dá)到了一個(gè)新的層次,當(dāng)然,在課程設(shè)計(jì)的過程中我也遇到了諸多的困難,一些是經(jīng)過自己的摸索得到解決,一些是在同學(xué)和老師的幫助下理解運(yùn)用,總之這是個(gè)不斷學(xué)習(xí),不斷嘗試,不斷進(jìn)步的過程,也是我們發(fā)揮我們想象力和創(chuàng)造力的過程,在這個(gè)過程中,不斷地磨練自己的耐心,耐性,無論是理論還是現(xiàn)實(shí)都讓我獲益匪淺。通過這一次的設(shè)計(jì)讓我深深的了解了我在軟件、硬件方面的許多不足之處,對于今后的學(xué)習(xí)

18、和工作都有了一次很好的借鑒經(jīng)驗(yàn)。參考文獻(xiàn)1 李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ).第3版.北京:北京航空航天大學(xué)出版社,2007.2 蔡美琴,張為民.MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用.第2版.北京:高等教育出版社,2004.3 張培仁.基于 C 語言編程 MCS-51 單片機(jī)原理與應(yīng)用M . 北京:清華大學(xué)出版社,2003.4 張毅剛,彭喜元 彭宇.單片機(jī)原理及應(yīng)用.第二版.北京:高等教育出版社,2010.5 趙娜,趙剛,于珍珠等.基于51 單片機(jī)的溫度測量系統(tǒng)J. 微計(jì)算機(jī)信息,2007.6 周潤景,張麗娜基于PROTEUS 的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真M北京:航空航天大學(xué)出版社,2006.附件 代碼編寫ORG 0000HSJMP MAINORG 0013HLJMP INTOMAIN: MOV P1,#OOHORL P3,#00HP001: JNB P3.4,P011 ;開工嗎? ORL IE,#84HORL IP,#04HMOV PSW,#OOH ;初始化MOV SP,#53HP012: MOV P1,#01H ;第一道工序ACALL P

溫馨提示

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

評論

0/150

提交評論