畢業(yè)論文-二階對象控制系統(tǒng)設計(PC機)_第1頁
畢業(yè)論文-二階對象控制系統(tǒng)設計(PC機)_第2頁
畢業(yè)論文-二階對象控制系統(tǒng)設計(PC機)_第3頁
畢業(yè)論文-二階對象控制系統(tǒng)設計(PC機)_第4頁
畢業(yè)論文-二階對象控制系統(tǒng)設計(PC機)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGE37摘要:計算機控制系統(tǒng)就是利用計算機來實現(xiàn)生產過程自動控制的系統(tǒng)。通信與網絡技術、微電子技術的高速發(fā)展,給計算機控制技術帶來了巨大的變革。人們利用這種技術可以完成常規(guī)控制技術無法完成的任務,達到常規(guī)控制技術無法達到的性能指標。本次二階對象控制系統(tǒng)就是采用通過用戶在鍵盤上輸入PID參數(shù),從而選取合適的主要參數(shù)Kp,Ki,Kd和采用周期T,使整個系統(tǒng)具有滿意的動態(tài)特征,并滿足穩(wěn)態(tài)誤差要求。關鍵詞:二階對象、控制、PID參數(shù)、A/D、D/A目錄1概述…………32課程設計任務及解決方案…………32.1課程設計任務……………………32.2系統(tǒng)設計解決方案………………43系統(tǒng)硬件的設計………43.1系統(tǒng)硬件設計方案………………43.2D/A轉換電路………53.3A/D轉換電路………4系統(tǒng)軟件的設計…………74.1程序設計思想及流程……………74.2A/D轉化子程序……………………4.3鍵盤讀入子程序…………………104.4屏幕顯示子程序…………………115任務分工及總結………125.1任務分工……………125.2總結…………………12參考文獻………………………14附錄………………15附錄一系統(tǒng)硬件連接圖………………15附錄二程序清單………16二階對象控制系統(tǒng)設計(采用PC機)1概述通信與網絡技術、微電子技術的高速發(fā)展,給計算機控制技術帶來了巨大的變革。人們利用這種技術可以完成常規(guī)控制技術無法完成的任務,達到常規(guī)控制技術無法達到的性能指標。自動控制技術在許多領域里獲得了廣泛的應用。所謂自動控制,就是在沒有人直接參與的情況下,通過控制器使生產過程自動地按照預定的規(guī)律運行。近年來,計算機已成為自動控制技術不可分割的重要組成部分,并為自動控制技術的發(fā)展和應用開辟了廣闊的新天地。本次課程設計是采用PC機設計二階系統(tǒng)的控制器,通過用戶在鍵盤上輸入PID參數(shù),從而將二階系統(tǒng)的參數(shù)控制在一定范圍之內。2課程設計任務及解決方案2.1課程設計任務1、采用運算放大器搭建如圖2-1所示的二階系統(tǒng),觀察并記錄該二階系統(tǒng)的階躍響應曲線,判斷二階系統(tǒng)的穩(wěn)定性。2、運用PC機設計控制器,使如圖所示的二階不穩(wěn)定對象的穩(wěn)態(tài)精度≤5%,調節(jié)時間≤60s,超調量≤20%。3、設計人機接口,能用鍵盤修改控制器參數(shù),如P、I、D參數(shù),并能通過LED或CRT顯示器顯示穩(wěn)態(tài)值、穩(wěn)態(tài)誤差、超調量、調節(jié)時間。圖2-1二階對象控制系統(tǒng)2.2系統(tǒng)設計解決方案本設計采用的主要硬件有PC機,DAC0832,AD574和標準CRT顯示器。其硬件電路的基本環(huán)節(jié)由PC機,鍵盤輸入電路,A/D轉換電路,D/A轉換電路和CRT顯示電路組成。硬件原理方框圖如圖2-2所示。圖2-2硬件原理方框圖3系統(tǒng)硬件的設計3.1系統(tǒng)硬件設計方案PC機PID控制器PC機PID控制器DAC0832G(s)干擾AD574圖3-1系統(tǒng)方框圖設定值與PC機連接的芯片有,輸入:AD574輸入鍵盤輸出:DAC0832輸出CRT顯示器3.2D/A轉換電路D/A轉換器是一種將數(shù)字信號轉換成模擬信號的器件,本設計采用的是DAC0832芯片,它是一種常用的電流輸出型的8位數(shù)模轉換器。在電路中使用了CMOS電流開關和控制邏輯,從而達到較低的功耗和較低的輸出漏電流誤差。采用特殊的電路結構可與TTL邏輯輸入電平相兼容。1201202193184175DAC0832166157148139121011圖3-2DAC0832引腳圖SKIPIF1<0SKIPIF1<0AGNDD3D2D1D0SKIPIF1<0SKIPIF1<0DGNDSKIPIF1<0SKIPIF1<0SKIPIF1<0SKIPIF1<0D4D5D6D7SKIPIF1<0SKIPIF1<0分辨率:8位;電流建立時間:1SKIPIF1<0;線性度(在整個溫度范圍內):8位;單一電源:+5~15V(直流)DAC0832的引腳如圖3-2所示,各引腳功能介紹如下:(1)SKIPIF1<0:片選信號(低電平有效)。(2)SKIPIF1<0;輸入鎖存允信號(高電平有效)。(3)SKIPIF1<0:寫1(低電平有效)。當SKIPIF1<0為低電平時,用來將輸入數(shù)據(jù)傳送到輸入鎖存器;當SKIPIF1<0為高電平時,輸入鎖存器中的數(shù)字被鎖存;當SKIPIF1<0為高電平,又必須是SKIPIF1<0和SKIPIF1<0同時為低時,才能將鎖存器中的數(shù)據(jù)進行更新。以上三格外控制信號構成第一級輸入鎖存。(4)SKIPIF1<0:寫2(低電平有效)。該信號與SKIPIF1<0配合,可使鎖存器中的數(shù)據(jù)傳送到DAC寄存器中進行轉換。(5)SKIPIF1<0:傳送控制信號(低電平有效)。SKIPIF1<0將與SKIPIF1<0配合使用,構成第二級鎖存。(6)D7~D0:數(shù)字輸入量。(7)SKIPIF1<0和SKIPIF1<0:DAC電流輸出1和2。(8)SKIPIF1<0:參考電壓輸入,要求外部接一個精密的電源。(9)SKIPIF1<0:數(shù)字電路供電電壓,一般為+5~+15V。(10)SKIPIF1<0:反饋電阻(11)AGND和DGND:模擬地和數(shù)字地。本設計利用DAC0832的擴展接口,DAC0832有3種工作方式,分別是直通方式、單緩沖方式和雙緩沖方式,本設計采用的是雙緩沖方式,PC機對DAC0832的寄存器進行控制,先把數(shù)據(jù)寫入寄存器,再將寄存器內容寫入DAC寄存器并啟動轉換。3.3A/D轉換電路設計中采用的模數(shù)轉換器是AD574A型芯片,A/D轉換電路將輸入的模擬電壓(或電流)轉換成數(shù)字量。AD574A是單片高速12位逐次比較型A/D轉換器,內置雙極性電路構成的混合集成轉換顯片,具有外接元件少,功耗低,精度高等特點,并且具有自動校零和自動極性轉換功能,只需外接少量的阻容件即可構成一個完整的A/D轉換器。AD574A的主要特點如下:圖3-3AD574A引腳圖圖3-3AD574A引腳圖非線性誤差:小于±1/2LBS或±1LBS。轉換速率:25SKIPIF1<0。模擬電壓輸入范圍:0—10V和0—20V,0—±5V和0—±10V兩檔四種。電源電壓:±15V和5V。數(shù)據(jù)輸出格式:12位/8位。芯片工作模式:全速工作模式和單一工作模式。AD574A的引腳如圖3-3所示,各引腳功能如下:(1)V+:數(shù)字邏輯部分電源+5V。(2)SKIPIF1<0:數(shù)據(jù)模式選擇端,通過此引腳可選擇數(shù)據(jù)縱線是12位或8位輸出。(3)SKIPIF1<0:片選信號端,低電平有效。(4)A0:字節(jié)選擇控制線。與SKIPIF1<0端用來控制啟動轉換的方式和數(shù)據(jù)輸出格式。須注意的是,SKIPIF1<0端TTL電平不能直接與+5V或0V連接。(5)SKIPIF1<0:讀數(shù)據(jù)轉換控制信號。(6)CE:啟動轉換信號,高電平有效。可作為A/D轉換啟動或讀數(shù)據(jù)的信號。(7)SKIPIF1<0和SKIPIF1<0:模擬部分供電的正電源和負電源,為±12V或±15V。(8)REFOUT:10V內部參考電壓輸出端。(9)REFIN:基準電源電壓輸入端。(10)BIPOFF:補償調整。接至正負可調的分壓網絡,以調整ADC輸出的零點。(11)DGND和AGND:數(shù)字地和模擬地。(12)DB0~DB11:數(shù)字量輸出。(13)STS:工作狀態(tài)指示信號端,當STS=1時,表示轉換器正處于轉換狀態(tài),當STS=0時,聲明A/D轉換結束,通過此信號可以判別A/D轉換器的工作狀態(tài),作為單片機的中斷或查詢信號之用。(14)10SKIPIF1<0和20SKIPIF1<0:模擬量10V和20V量程的輸入端。AD574和PC機系統(tǒng)的基本組成主要有PC機、A/D轉換器和計算機接口。其中PC機是核心部分,主機通過接口啟動PC機工作,以使CPU資源向其它請求開放。PC機發(fā)出控制信號以啟動A/D轉換器進行采樣。4系統(tǒng)軟件的設計4.1程序設計思想及流程在設計中,程序分為主程序,A/D轉換模塊,D/A轉換模塊,鍵盤輸入模塊和屏幕顯示模塊五個模塊組成。主程序流程圖如圖4-1所示。下面分別將主程序,A/D轉化子程序,鍵盤讀入子程序,屏幕顯示子程序的流程圖做簡單說明。圖4-1主程序流程圖先對程序進行初始化,輸入R-SET值,在顯示器上畫出坐標和表頭,對KID參數(shù)進行設置,運行程序,計算機將鍵盤輸入值轉化為二進制的形式,在進行計算,讀20次AD轉化結果,,然后對其濾波,再將采樣值轉化為電壓形式,然后將其顯示在顯示器上,再調用PID記法程序,將結果輸出.4.2A/D轉化子程序A/D574是將模擬信號轉化為數(shù)字信號的芯片,在啟動前需選好通道,然后通過R/C管腳來控制A/D的工作狀態(tài),并且通過對STS的查詢來判斷轉化是否完成.圖4-24.3鍵盤讀入子程序由鍵盤上讀入的鍵值為ASCII值,在進行運算時需二進制的形式,并且在每次輸入新的數(shù)值時,需要將前一次的輸入值的二進制數(shù)乘上一個權,在把她與新的數(shù)值的二進制數(shù)求和.圖4-3鍵盤讀入程序流程圖4.4屏幕顯示子程序在屏幕上以描點的形式畫出波形圖,將每次采樣值分成25mV一個小格,當采樣值為-5.0時,Y軸坐標為465,當采樣值增大時,采樣值的Y坐標為465減去其格數(shù),每采樣一次X坐標值自動增1,直到達到C_P=640時,把C_P清零從頭開始描點圖4-4屏幕顯示程序流程圖5任務分工及總結5.1任務分工任務完成人員硬件焊接姚遠,王宇主程序王穎A/D、D/A轉換程序王攀,王穎鍵盤讀入程序、PID算法王宇屏幕顯示程序王攀報告書寫王宇,姚遠5.2總結王穎:通過這次課程設計,我學到了很多。我深刻的了解了計算機控制在現(xiàn)代工業(yè)控制中的作用,和優(yōu)勢。通過計算機我們可以對不穩(wěn)定的系統(tǒng)進行控制。完成更復雜的控制,來滿足現(xiàn)代工業(yè)需要。這次試驗使我熟悉了AD574芯片的使用方法和性能。AD574是模數(shù)裝換芯片,將模擬信號裝換成數(shù)字信號,是實現(xiàn)數(shù)字控制的基礎。它將系統(tǒng)輸出模擬信號轉換成數(shù)字信號,將數(shù)字信號送給計算機分析和處理。利用計算機的強大的計算功能,來勢完成數(shù)字PID算法。對系統(tǒng)進行調解。計算機再將計算結果傳給DAC0832數(shù)模轉換芯片。再將數(shù)據(jù)字信號轉換為模擬信號。送給二階被控對象,對其進行調節(jié)。計算機要將讀入的數(shù)據(jù)顯示顯示器上。計算機要講讀入的數(shù)據(jù)加以處理才能正確顯示在顯示器上。先將讀入的數(shù)字信號進行濾波處理,然后再將它們轉化為電壓的形式。再將它們轉化為ASCII送顯示。計算機根據(jù)數(shù)據(jù)在顯示器上進行描點畫圖。系統(tǒng)的給定值、KP、KI和KD的值由鍵盤輸入。對他們要進行二進制轉換,才能進行數(shù)據(jù)處理。正個控制構成主要是數(shù)據(jù)類型的轉換。和PID控制算法的設計。數(shù)字PID還設計到采樣周期設計。采樣周期應以越小越好。數(shù)字PID的控制能力更強的,能夠滿足復雜工業(yè)控制。姚遠:本次設計是基于二階對象控制系統(tǒng)設計的要求,讓我們在跨入工作前就提前去實踐完成一些設計項目,很大程度上提高了我們的動手能力。此次課程設計使我明白了課程設計是一項高強度、多配合的團隊工作。使我們懂得如何在工作學習中與人交流、配合,使工作效率較高,工作效果較好某個人的離群都可能導致整項工作的失敗。課程設計中只有一個人知道原理是遠遠不夠的,必須讓每個人都知道,否則一個人的失誤會導致整個設計的失敗。同時使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論。總之,此次課程設計充分鍛煉了我們分析問題和解決問題的能力,使我們的知識不僅僅停留在理論階段,為我們的計算機控制相關知識的學習和動手能力的提升提供了很好的鍛煉機會。這次設計我負責的是設計的報告書寫部分,這一段相比整個任務來說相對比較簡單,原以為任務會輕松完成,不過還是問題不斷。其實這次課程設計,給我最大的啟示就是要在這么短的時間里完成這個復雜的程序靠一個人的力量是很難完成的,這需要幾個人的通力合作。而此次計控課程設計算得上大學四年最后一次真正意義上的需要團隊合作才能完成的任務。王宇:課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程。通過本次課程設計,使我對我們所學習的計算機硬件基礎,計算機控制系統(tǒng),匯編語言編程有了更深刻的認識和掌握。并把所學的理論知識運用到實際系統(tǒng)的設計和解決問題中。我們小組的題目是:二階對象控制系統(tǒng)的設計(PC機實現(xiàn))。我負責了硬件的焊接,報告的書寫和鍵盤讀入,PID算法部分程序。硬件的焊接和報告的書寫雖然已經做過很多次但還是需要認認真真去完成才能保證不出差錯。另外鍵盤讀入上關于二進制和ASCII碼的轉換需要注意,而PID算法則是在熟悉了二階對象后,應用所學控制知識來解決的。另外通過這次設計我再次體會到了團隊合作的力量。把整項工作具體化,大家分工合作,極大的提高了工作效率。總之,此次課程設計充分鍛煉了我們分析問題和解決問題的能力,使我們的知識不僅僅停留在理論階段,讓理論在實踐中得到升華,為我們的計算機控制相關知識的學習和動手能力的提升提供了很好的鍛煉機會。王攀:本次課程設計,我主要負責屏幕顯示部分子程序的編寫。當接到這個分工時,我確實有點為難,因為以前并沒有系統(tǒng)學習屏幕顯示這部分的程序,所以這次只有自己查閱相關程序,來從頭開始學習。屏幕顯示程序主要包括字符的顯示和和圖形曲線的顯示,其顯示的原理基本相同,在字符和圖形顯示方式下,屏幕都被分成一系列的點陣。當要顯示字符時,每個字符的顯示以點陣為單位,顯示信息以ASCCⅡ的形式存放,通過以系列的硬件自動處理后給顯示器顯示;圖形顯示方式提供了多種分辨率,每一個小方格稱為一個像素點,把不同的像素值寫入到這些像素點,像素點就有了不同的顏色,則屏幕上可以顯示相應的圖形。通過為期一周的計算機控制課程設計,我在課外擴充了很多實踐知識,主要有以下收獲:通過這次課程設計使我對課本上學到的知識有了更深的認識,并在對理論知識的應用過程中,增強了自己的動手設計能力,補充和完善了知識結構,更激發(fā)了我對計算機控制學習并應用的興趣;有了文獻檢索的能力,特別是如何利用Intel網及學校的數(shù)字圖書館資源檢索需要的文獻資料,知道了怎樣能快速的找到自己需要的資料,并充分利用網絡來擴充自己的知識;根據(jù)所得資料和課本所學知識,學會了如何分析問題,發(fā)現(xiàn)問題和解決問題的能力,將網絡資源真正轉化為自己的知識;在設計過程中也遇到了一些自己解決不了的問題,通過和小組其他組員的溝通與交流找到了解決方案,加強了與同學合作與交流的能力,同時也逐步樹立了遇到困難戰(zhàn)勝困難的信心。參考文獻[1]黃勤等.計算機硬件技術基礎實驗教程.重慶大學出版社,2004年[2]李群芳等.單片微型計算機機與接口技術.電子工業(yè)出版社,2005年[3]王建華等.計算機控制技術.高等教育出版社,2002年[4]范立南等.單片微型計算機控制系統(tǒng)設計.人民郵電出版社,2003年[5]單片機實驗指導書.西安唐都科技儀器公司.2006年附錄附錄1系統(tǒng)硬件連接圖附錄二程序清單.486DATASEGMENT'DATA'H_PORTEQU200H;讀取數(shù)據(jù)高8位口地址L_PORTEQU201H ;讀取數(shù)據(jù)低4位口地址CH_PORTEQU205H;通道選擇端口地址IN_PORTEQU202H;輸入寄存器地址DAC_PORTEQU204H;DAC寄存器地址X_PDW10R_SETDW1000K_SETDW28O_SETDW40960DATAADW8DUP(0)BUFFDW9,8,7,6,5,4,3,2,1,0,0,1,2,3,4,5,6,7,8,9MES1DB'"B"--BEGIN,"E"--EXIT,"S"--SET',0AH,0DH,'$'DISPDB'CH0R_SET:V',0AH,0DH,'$'DISP1DB'CH0000000V',0DH,'$'MES_KPDB'PLEASESETVALUEKp=','$'MES_KIDB'PLEASESETVALUEKI=','$'KONGDB'',0DH,'$'CHAODB'',0DH,'$'CBUFFDW4DUP(0)MESS0DB'+5.000V'MESS1DB'-5.000V'CH_NUMDB0OUTDADB0FLAG1DB0FLAG2DB0KEYBUFDB6COUNTDB?KEYNUMDB6DUP(?)MES2DB'R_SET(mV)=','$'EKDW0EK1DW1KPDW3KIDW1KPPDW0KIIDW0OUTDA1DB0M1DW1PMAXDW0PMAX1DW0DATAENDSSTCKSEGMENTPARASTACK'STACK'DB256DUP(0)STCKENDSCODESEGMENTMAINPROCFARASSUMECS:CODE,DS:DATA,SS:STCKSTART:PUSHDSMOVAX,0PUSHAXMOVAX,DATAMOVDS,AXLEADX,MES2;顯示輸入提示信息MOVAH,09HINT21HLEADX,KEYBUFMOVAH,0AHINT21H;從鍵盤輸入系統(tǒng)設定值MOVBX,0;將從鍵盤接收的數(shù)據(jù)轉換成二進制數(shù)MOVDI,0LLP:MOVAL,KEYNUM[DI]ANDAL,0FHMOVAH,0XCHGAX,BXMOVCX,10MULCXADDBX,AXINCDIMOVAX,DICMPAL,COUNTJZLLP0JMPLLPLLP0:MOVR_SET,BX;存放設定值MOVDATAA[4],BXMOVCH_NUM,2;設定值送顯示緩存區(qū)CALLDISPH1MOVCH_NUM,0CALLTT;在屏幕上畫坐標LEADX,MES1;送操作提示符屏幕上顯示MOVAH,09HINT21HLEADX,dispMOVAH,09HINT21HAJ:MOVAH,01HINT16H;查詢是否有鍵按下JZAJ;沒有鍵按下,繼續(xù)循環(huán)MOVAH,0INT16H;有鍵按下,讀鍵值CMPAL,'B'JZPL;開始鍵按下,轉置標志程序JMPAJ;無操作鍵按下,轉循環(huán)程序PL:LEADX,CHAOMOVAH,09HINT21HLEADX,DISP1;送顯示緩存區(qū)數(shù)據(jù)屏幕上顯示MOVAH,09HINT21HLP:MOVDI,0MOVCX,20LP00:CALLSAMP0;讀20次A/D轉換結果LOOPLP00CALLSAMP1;20個數(shù)據(jù)由大到小排列CALLSAMP2;求中間16個數(shù)據(jù)平均值CALLBTOD;標尺變換,將采集樣變換為電壓毫伏值CMPFLAG2,0JZNEXTMOVFLAG2,0PUSHAXPUSHBXPUSHCXMOVBX,R_SETMOVCX,BXMOVAX,PMAXSUBAX,BX;PMAX減去預設值JSNNDIVCXMOVBH,4MOVBL,10LEADI,CBUFFWW:MOV[DI],AXINCDIINCDIMOVCX,R_SETMOVAX,DXMULBLDIVCXDECBHJZNNJMPWWNN:POPCXPOPBXPOPAXCALLBFB;轉換超調量的百分比LEADX,CHAOMOVAH,09HINT21HNEXT:CALLSDATA;傳送到內存CALLDISPH;送顯示預處理,將電壓值轉換成ASCII碼CALLDISPL;送屏幕顯示;CMPFLAG1,0;JZLP03CALLCT;調控制算法程序CALLDAOUT;送數(shù)到D/A轉換CMPFLAG1,0JZLP03CALLPOINT;將當前采集樣在屏幕描點LP03:MOVECX,300000HLP02:LOOPDLP02MOVAH,01HINT16H;查詢是否有鍵按下JZLP;沒有鍵按下,繼續(xù)循環(huán)MOVAH,0INT16H;有鍵按下,讀鍵值CMPAL,'E'JZLPQ;退出鍵按下,轉退出程序CMPAL,'B'JZLPB;開始鍵按下,轉置標志程序CMPAL,'P'JZLPP;停止鍵按下,轉清標志程序CMPAL,'S'JZLPS;設置鍵按下轉設置子程序JMPLP;無操作鍵按下,轉循環(huán)程序LPQ:MOVOUTDA,60HCALLDAOUTRETLPS:LEADX,MES_KPMOVAH,09HINT21HLEADX,KEYBUFMOVAH,0AHINT21HCALLZHUANGMOVKP,BXLEADX,KONGMOVAH,09HINT21HLEADX,MES_KIMOVAH,09HINT21HLEADX,KEYBUFMOVAH,0AHINT21HCALLZHUANGMOVKI,BXLEADX,KONGMOVAH,09HINT21HJMPSTARTLPB:MOVFLAG1,1;置系統(tǒng)控制開始標志JMPLPLPP:MOVFLAG1,0;置系統(tǒng)控制停止標志JMPLPMAINENDPBFBPROCNEAR;進行顯示預處理LEADI,CHAOADDDI,29MOVAX,CBUFF[0]ADDAL,30HINCDIMOV[DI],ALMOVAX,CBUFF[2]ADDAL,30HINCDIMOV[DI],ALMOVAX,CBUFF[4]ADDAL,30HINCDIMOV[DI],ALMOVAL,'.'INCDIMOV[DI],ALMOVAX,CBUFF[6]ADDAL,30HINCDIMOV[DI],ALRETBFBENDPZHUANGPROCNEARMOVBX,0;將從鍵盤接收的數(shù)據(jù)轉換成二進制數(shù)MOVDI,0ZLP:MOVAL,KEYNUM[DI]ANDAL,0FHMOVAH,0XCHGAX,BXMOVCX,10MULCXADDBX,AXINCDIMOVAX,DICMPAL,COUNTJNZZLPRETZHUANGENDPCTPROCNEARMOVAX,R_SETMOVDX,DATAASUBAX,DX;AX等于EKMOVEK,AxMULKPMOVOUTDA,AHRETCTENDPCT1PROCNEARMOVDX,DATAAMOVAX,R_SETCMPAX,DXJBCTFUSUBAX,DXMOVEK,AXMULKP;DX:AX中存積;MOVBX,EK1;MOVCX,EK;ADDBX,CX;標度變換MOVCX,100DIVCXCMPDX,6JBBTOD11INCAXBTOD11:MOVCX,255MULCXMOVCX,100DIVCXCMPDX,51JBBTOD10INCAXBTOD10:MOVBL,80HSUBBLJMPOUTDAOUTCTFU:SUBDX,AXMOVAX,DXMULKPMOVCX,255MULCXMOVCX,100DIVCXCMPDX,6JBBTOD111INCAXBTOD111:MOVCX,100DIVCXCMPDX,51JBBTOD110INCAXBTOD110:MOVBL,80HADDBL,ALOUTDAOUT:MOVOUTDA,BLRETCT1ENDPPOINTPROCNEARMOVAX,DATAAADDAX,5000CWDMOVCX,25DIVCXMOVDX,465SUBDX,AX;計算縱坐標值MOVCX,X_P;計算橫坐標值INCX_PCMPX_P,640JNZPOINT0MOVX_P,10POINT0:MOVAH,0CH;在屏幕上描點MOVAL,14MOVBH,0INT10HRETPOINTENDPTTPROCNEAR;在屏幕上畫坐標MOVAH,0;置屏幕顯示模式MOVAL,12HINT10HMOVBH,0MOVBL,0INT10HMOVCX,10;畫Y軸坐標MOVDX,470MOVAH,0CHYTT:MOVAL,02INT10HDECDXCMPDX,55JNZYTTMOVDX,265;畫X軸坐標XTT:INT10HINCCXCMPCX,610JNZXTTMOVCX,607;畫X軸坐標箭頭MOVDX,262UPX:INT10HINCDXINCCXCMPCX,610JNZUPXDOWNX:INT10HDECCXINCDXCMPCX,606JNZDOWNXMOVCX,7;畫Y軸坐標箭頭MOVDX,58UPY:INT10HINCCXDECDXCMPCX,10JNZUPYDOWNY:INT10H;在Y軸上做標志INCCXINCDXCMPCX,14JNZDOWNYMOVDX,65MOVCX,11MARK:INT10H;在X軸上做標志ADDDX,40CMPDX,505JNZMARKMOVDX,264MOVCX,10MARK1:INT10HADDCX,40CMPCX,650JNZMARK1MOVBX,000FHMOVBP,SEGMESS0MOVES,BPMOVBP,OFFSETMESS0MOVDL,02MOVDH,4MOVBL,1FHMOVAL,0MOVAH,13HMOVCX,07HINT10HMOVBP,OFFSETMESS1MOVDL,02MOVDH,29MOVBL,1FHMOVAL,0MOVAH,13HMOVCX,07INT10HRETTTENDPSAMP0PROCNEAR;讀A/D 轉換結果PUSHCXMOVDX,CH_PORT;通道選擇端口地址MOVAL,CH_NUMADDAL,40H;選擇通道0OUTDXMOVCX,100HLP1:LOOPLP1;延時ANDAL,0FH;給AD574送啟動信號脈沖(低電平)OUTDXMOVCX,10LP2:LOOPLP2ADDAL,40H;給AD574送啟動信號脈沖(高電平)OUTDXMOVDX,L_PORTLP3:INAL,DXTESTAL,01H;測STS信號JNZLP3;未轉換完,繼續(xù)查詢MOVDX,H_PORTINAL,DX;讀高8位MOVAH,ALINCDXINAL,DX;讀低4位SHRAX,4MOVBUFF[DI],AXINCDIINCDIPOPCXRETSAMP0ENDPSAMP1PROCNEAR;對A/D轉換結果排序MOVBX,19MOVCX,BXSAMP10:MOVSI,38SAMP11:MOVAX,BUFF[SI]CMPAX,BUFF[SI-2]JAEUNCHEXCH:XCHGBUFF[SI-2],AXMOVBUFF[SI],AXUNCH:DECSIDECSILOOPSAMP11DECBXMOVCX,BXCMPBX,0JNESAMP10RETSAMP1ENDPSAMP2PROCNEAR;求平均值MOVCX,16MOVAX,0MOVSI,4SAMP20:MOVBX,BUFF[SI]ADDAX,BXINCSIINCSILOOPSAMP20RETSAMP2ENDPBTODPROCNEAR;標度變換MOVCL,4SHRAX,CLMOVCX,2442MULCXMOVCX,1000DIVCXCMPDX,501JBBTOD1INCAXBTOD1:SUBAX,5000pushaxCMPAX,PMAXJBUNPASSPMAXMOVFLAG2,1MOVPMAX,AXUNPASSPMAX:POPAXRETBTODENDPSDATAPROCNEAR;讀數(shù)至內存MOVCL,CH_NUMADDCL,CLMOVCH,0MOVSI,CXMOVDATAA[SI],AXRETSDATAENDPDAOUTPROCNEAR;實現(xiàn)D/A轉換MOVAL,OUTDAMOVDX,IN_PORTOUTDX,AL;傳送輸入寄存器MOVDX,DAC_PORTOUTDX,AL;傳送DAC寄存器RETDAOUTENDPDISPHPROCNEAR;進行顯示預處理MOVAX,0MOVDI,AXMOVDX,DATAA[DI]LEADI,DISP1MOVAH,0ADDDI,4ADDDX,0JNSLP4NEGDXMOVAL,'-'JMPLP5LP4:MOVAL,''LP5:MOV[DI],ALMOVAX,DXCWDMOVCX,1000DIVCXADDAL,30HINCDIMOV[DI],ALMOVAL,'.'INCDIMOV[DI],ALMOVAX,DXMOVCL,100DIVCLADDAL,30HINCDIMOV[DI],ALMOVAL,AHMOVAH,0MOVCL,10DIVCLADDAL,30HINCDIMOV[DI],ALMOVAL,AHADDAL,30HINCDIMOV[DI],ALRETDISPHENDPDISPH1PROCNEAR;進行顯示預處理MOVAL,CH_NUMADDALMOVAH,0MOVDI,AXMOVDX,DATAA[DI]LEADI,DISPMOVAH,0ADDDI,11ADDDX,0JNSLP44NEGDXMOVAL,'-'JMPLP55LP44:MOVAL,''LP55:MOV[DI],ALMOVAX,DXCWDMOVCX,1000DIVCXADDAL,30HINCDIMOV[DI],ALMOVAL,'.'INCDIMOV[DI],ALMOVAX,DXMOVCL,100DIVCLADDAL,30HINCDIMOV[DI],ALMOVAL,AHMOVAH,0MOVCL,10DIVCLADDAL,30HINCDIMOV[DI],ALMOVAL,AHADDAL,30HINCDIMOV[DI],ALRETDISPH1ENDPDISPLPROCNEAR;送數(shù)據(jù)屏幕顯示LEADX,DISP1MOVAH,09HINT21HRETDISPLENDPCODEENDSENDSTART基于C8051F單片機直流電動機反饋控制系統(tǒng)的設計與研究基于單片機的嵌入式Web服務器的研究MOTOROLA單片機MC68HC(8)05PV8/A內嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機溫度控制系統(tǒng)的研制基于MCS-51系列單片機的通用控制模塊的研究基于單片機實現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調節(jié)器單片機控制的二級倒立擺系統(tǒng)的研究基于增強型51系列單片機的TCP/IP協(xié)議棧的實現(xiàn)基于單片機的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機系統(tǒng)的圖像采集與處理技術的研究基于單片機的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機的交流伺服電機運動控制系統(tǒng)研究與開發(fā)基于單片機的泵管內壁硬度測試儀的研制基于單片機的自動找平控制系統(tǒng)研究基于C8051F040單片機的嵌入式系統(tǒng)開發(fā)基于單片機的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機實現(xiàn)一種基于單片機的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機的在線間歇式濁度儀的研制基于單片機的噴油泵試驗臺控制器的研制基于單片機的軟起動器的研究和設計基于單片機控制的高速快走絲電火花線切割機床短循環(huán)走絲方式研究基于單片機的機電產品控制系統(tǒng)開發(fā)基于PIC單片機的智能手機充電器基于單片機的實時內核設計及其應用研究基于單片機的遠程抄表系統(tǒng)的設計與研究基于單片機的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機系統(tǒng)單片機系統(tǒng)軟件構件開發(fā)的技術研究基于單片機的液體點滴速度自動檢測儀的研制基于單片機系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機的電能采集終端的設計和應用基于單片機的光纖光柵解調儀的研制氣壓式線性摩擦焊機單片機控制系統(tǒng)的研制基于單片機的數(shù)字磁通門傳感器基于單片機的旋轉變壓器-數(shù)字轉換器的研究基于單片機的光纖Bragg光柵解調系統(tǒng)的研究單片機控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機的多生理信號檢測儀基于單片機的電機運動控制系統(tǒng)設計Pico專用單片機核的可測性設計研究基于MCS-51單片機的熱量計基于雙單片機的智能遙測微型氣象站MCS-51單片機構建機器人的實踐研究基于單片機的輪軌力檢測基于單片機的GPS定位儀的研究與實現(xiàn)基于單片機的電液伺服控制系統(tǒng)用于單片機系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機的時控和計數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機和CPLD的粗光柵位移測量系統(tǒng)研究單片機控制的后備式方波UPS提升高職學生單片機應用能力的探究基于單片機控制的自動低頻減載裝置研究基于單片機控制的水下焊接電源的研究基于單片機的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機的氚表面污染測量儀的研制基于單片機的紅外測油儀的研究96系列單片機仿真器研究與設計基于單片機的單晶金剛石刀具刃磨設備的數(shù)控改造基于單片機的溫度智能控制系統(tǒng)的設計與實現(xiàn)基于MSP430單片機的電梯門機控制器的研制基于單片機的氣體測漏儀的研究基于三菱M16C/6N系列單片機的CAN/USB協(xié)議轉換器基于單片機和DSP的變壓器油色譜在線監(jiān)測技術研究基于單片機的膛壁溫度報警系統(tǒng)設計基于AVR單片機的低壓無功補償控制器的設計基于單片機船舶電力推進電機監(jiān)測系統(tǒng)基于單片機網絡的振動信號的采集系統(tǒng)基于單片機的大容量數(shù)據(jù)存儲技術的應用研究基于單片機的疊圖機研究與教學方法實踐基于單片機嵌入式Web服務器技術的研究及實現(xiàn)基于AT89S52單片機的通用數(shù)據(jù)采集系統(tǒng)基于單片機的多道脈沖幅度分析儀研究機器人旋轉電弧傳感角焊縫跟蹤單片機控制系統(tǒng)基于單片機的控制系統(tǒng)在PLC虛擬教學實驗中的應用研究基于單片機系統(tǒng)的網絡通信研究與應用基于PIC16F877單片機的莫爾斯碼自動譯碼系統(tǒng)設計與研究基于單片機的模糊控制器在工業(yè)電阻爐上的

溫馨提示

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

評論

0/150

提交評論