版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 《微型計(jì)算機(jī)原理與接口技術(shù)》</p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 設(shè)計(jì)題目:電梯升降設(shè)計(jì)</p><p> 班 級(jí):通行09-1 </p><p> 姓 名: </p><p> 學(xué) 號(hào):
2、</p><p> 指導(dǎo)老師: </p><p> 2011年12月29日</p><p><b> 摘要</b></p><p> 隨著現(xiàn)代經(jīng)濟(jì)和城市生活的發(fā)展,電梯成為人們?nèi)粘I畋夭豢缮俚拇焦ぞ?,電梯性能的好壞?duì)人們生活的影響越來越顯著。傳統(tǒng)繼電器電梯控制系統(tǒng),由于繼電器本身的機(jī)械和電磁慣性大
3、,大大降低了電梯系統(tǒng)的可靠性和安全性。為了保證電梯運(yùn)行既高效節(jié)能又安全可靠,必須改進(jìn)電梯控制方式。根據(jù)順序邏輯控制的需要發(fā)展起來的可編程控制器,它是專門為工業(yè)環(huán)境應(yīng)用而設(shè)計(jì)的數(shù)字運(yùn)算操作的電子裝置。8088CPU編程可靠性高,能夠保證電梯正常、安全、可靠地運(yùn)行。同時(shí),由于電機(jī)交流變頻調(diào)速技術(shù)的發(fā)展,電梯的拖動(dòng)方式己由原來直流調(diào)速逐漸過渡到了變頻調(diào)速,不僅能滿足乘客的舒適感和保證平穩(wěn)的精度,還可以降低能耗,節(jié)約能源,減小運(yùn)行費(fèi)用。本文將基
4、于8088CPU的變頻調(diào)速方法應(yīng)用到電梯系統(tǒng)中,并對(duì)此方法進(jìn)行研究。</p><p> 交流電梯與交流電機(jī)的發(fā)展緊密相連,至今已有三十多年的發(fā)展歷史,經(jīng)歷了由簡(jiǎn)單到復(fù)雜、由低級(jí)到高級(jí)的發(fā)展歷程,大致可以劃分為三個(gè)階段:</p><p> 第一個(gè)階段是70年代,其主要標(biāo)志是交流雙速電梯,它采用改變牽引電機(jī)極對(duì)數(shù)來實(shí)現(xiàn)調(diào)速。電機(jī)通常采用兩種或兩種以上不同極對(duì)數(shù)的繞組制成,其中極數(shù)少的繞組稱
5、為高速繞組,用于電梯的起動(dòng)及穩(wěn)速運(yùn)行,極數(shù)多的繞組稱為低速繞組,用于電梯的制動(dòng)及維修。</p><p> 第二個(gè)階段是80年代盛行的交流調(diào)壓調(diào)速電梯,其性能優(yōu)越于交流雙速電梯。調(diào)壓調(diào)速的方法是通過改變?nèi)喈惒诫姍C(jī)定子端的供電電壓實(shí)現(xiàn)電機(jī)的調(diào)速,其制動(dòng)多采用能耗制動(dòng)。</p><p> 第三個(gè)階段是90年代,變壓變頻調(diào)速電梯(VVVF電梯)開始占據(jù)了世界電梯的市場(chǎng)。VVVF電梯通過調(diào)節(jié)電
6、機(jī)定子繞組供電電壓的幅值和頻率來實(shí)現(xiàn)轉(zhuǎn)速的調(diào)節(jié)。電梯傳動(dòng)系統(tǒng)中,由于大量采用微機(jī)控制技術(shù)和脈寬調(diào)制技術(shù) (PWM技術(shù)),其運(yùn)行效率得到了大幅度的提高,電梯的體積大為縮小。在我國,電梯工業(yè)起步較晚,改革開放以來,也取得了一定的進(jìn)步。但遺憾的是,這些公司多為合資公司,電梯控制關(guān)鍵部分的變頻器、控制器等重要組成部分很大程度依靠進(jìn)口,其核心技術(shù)牢牢控制在國外大公司手中。</p><p> 本文8255芯片對(duì)電梯驚醒控制
7、,且應(yīng)用了七段顯示數(shù)碼管對(duì)樓層進(jìn)行顯示。</p><p> 關(guān)鍵詞:電梯,可編程控制器,變頻調(diào)速,旋轉(zhuǎn)編碼器</p><p><b> 目錄</b></p><p> 一、實(shí)習(xí)目的 …………………………………………………………………3</p><p> 二、實(shí)習(xí)內(nèi)容與要求………………………………………………………
8、…3</p><p> 三、實(shí)驗(yàn)報(bào)告要求……………………………………………………………3</p><p> 四、電梯的工作方式…………………………………………………………3</p><p> 五、總體設(shè)計(jì)思路……………………………………………………………4</p><p> 六、系統(tǒng)硬件電路設(shè)計(jì)……………………………………………………
9、…5</p><p> 1、設(shè)計(jì)結(jié)構(gòu)………………………………………………………………………5</p><p> 2、模塊分析………………………………………………………………………5</p><p> 3、畫出響應(yīng)的電路圖……………………………………………………………6</p><p> 七、軟件設(shè)計(jì) ……………………………………………
10、……………………6</p><p> 1.主要設(shè)計(jì)模塊要求……………………………………………………………… 6</p><p> 2.程序流程圖 …………………………………………………………………… 7</p><p> (1)主程序框圖. .………………………………………………………………… 7</p><p> ?。?)中斷服務(wù)程序
11、框圖…………………………………………………………… 8</p><p> ?。?)電梯算法流程圖……………………………………………………………… 8</p><p> 八、實(shí)現(xiàn)程序………………………………………………………………… 8</p><p> 九、設(shè)計(jì)體會(huì)………………………………………………………………… 16</p><p>
12、 十、參考資料………………………………………………………………… 17</p><p><b> 一、實(shí)習(xí)目的</b></p><p> 1.掌握七段數(shù)碼管工作原理; </p><p> 2.掌握計(jì)算機(jī)對(duì)輸入信號(hào)檢測(cè)和輸出控制的基本方法; </p><p> 3.掌握常用按鈕、發(fā)光二極管的使用方法。 </
13、p><p> 4.提高學(xué)生的動(dòng)手能力,達(dá)到理論和實(shí)踐緊密結(jié)合。</p><p><b> 二、實(shí)習(xí)內(nèi)容與要求</b></p><p><b> 1. 實(shí)習(xí)內(nèi)容 </b></p><p> 首先了解電梯運(yùn)行規(guī)律,我們結(jié)合實(shí)際假設(shè)電梯的幾種運(yùn)行情況: </p><p> ?。?/p>
14、1)若當(dāng)前電梯停在某層(七段碼顯示相應(yīng)樓層,7個(gè)LED 全滅)。鍵入1~9數(shù)字鍵,如鍵入的數(shù)字與當(dāng)前電梯停層同,則不產(chǎn)生動(dòng)作;若不同則相應(yīng)樓層的LED亮;如再按運(yùn)行鍵,則電梯自動(dòng)判別上升或下降(在運(yùn)行過程中七段碼顯示樓層變化)一直到達(dá)希望停的樓層(七段碼顯示該樓層,相應(yīng)LED亮); </p><p> (2)若當(dāng)前電梯正在上升或下降運(yùn)行中(此時(shí)七段碼顯示樓層變化,LED指示希望抵達(dá)的樓層);若鍵入新的希望停的樓
15、層數(shù)字(相應(yīng)的LED亮),則對(duì)同方向(上升或下降)未到的樓層能停,對(duì)其它情況則先停原來按下的樓層,然后按運(yùn)行鍵后繼續(xù)運(yùn)行)。有如下幾種情況: </p><p> ? 電梯當(dāng)前在3層,向上運(yùn)行,LED 指示希望在5層停,此時(shí)若鍵入3,則電梯將在5樓停(同方向),若再按運(yùn)行鍵,則繼續(xù)運(yùn)行至7層停; </p><p> ? 鍵入的不是5而是7,則電梯將先停在7層,再按運(yùn)行鍵,運(yùn)行至7層停
16、; </p><p> ? 鍵入的不是7(或5),而是1,則電梯先停在7層(先達(dá)同方向樓層)。再按運(yùn)行鍵,運(yùn)行至1層停。 </p><p><b> 2.連接線路 </b></p><p> 并行接口電路選擇8255芯片,七段數(shù)碼管、LED 指示燈連接線路由學(xué)生自己設(shè)計(jì),可 </p><p> 參考實(shí)驗(yàn)指導(dǎo)書的
17、相關(guān)內(nèi)容。樓層數(shù)字鍵和運(yùn)行按鈕都可由PC機(jī)鍵盤代替 </p><p><b> 3.編寫程序 </b></p><p> 4.調(diào)試程序。匯編、連接后執(zhí)行程序,觀察電梯運(yùn)行情況。</p><p><b> 三、實(shí)習(xí)報(bào)告要求</b></p><p><b> 1.設(shè)計(jì)目的和內(nèi)容<
18、/b></p><p><b> 2.總體設(shè)計(jì)</b></p><p> ?。常布O(shè)計(jì):原理圖(接線圖)及簡(jiǎn)要說明</p><p> 4.設(shè)計(jì)結(jié)果和體會(huì)(包括遇到的問題及解決的方法)</p><p><b> 四、電梯的工作方式</b></p><p> 電梯
19、工作按以下方式運(yùn)行: </p><p> 1.假設(shè)當(dāng)前電梯停在某層(LED顯示相應(yīng)樓層, 5個(gè)發(fā)光二極管全滅)。鍵入數(shù)字鍵,如鍵入的數(shù)字與當(dāng)前電梯??繉酉嗤瑒t什么也不做,若不同則相應(yīng)樓層的發(fā)光二極管亮;電梯自動(dòng)判別上升或下降(在運(yùn)行過程中用八段碼來顯示樓層變化)一直到達(dá)希望停的樓層(八段碼顯示該樓層,相應(yīng) LED 滅)。 </p><p> 2.假設(shè)當(dāng)前電梯正在上升或下降運(yùn)行(此時(shí)八
20、段碼顯示樓層變化, LED 指示希望抵達(dá)的樓層),若鍵入新的希望停靠的樓層數(shù)字(相應(yīng)的 LED 亮),則對(duì)同方向(上升或下降)未到的樓層能??浚瑢?duì)其它情況則先??吭认M5臉菍樱缓罄^續(xù)運(yùn)行)。</p><p><b> 如下幾例: </b></p><p> 設(shè)電梯當(dāng)前在 2層,向上運(yùn)行,LED指示希望在4層停,此時(shí)若鍵入3,則電梯將在3樓停,然后繼續(xù)運(yùn)行至4
21、層停; </p><p> 同上情況,若鍵入的不是 3而是5,則電梯將先停在4層,然后運(yùn)行至5層停; </p><p> 同上情況,若鍵入的不是 3(或5),而是1,則電梯先停在4層,然后運(yùn)行至1層停。 </p><p><b> 五、總體設(shè)計(jì)思路</b></p><p> 本設(shè)計(jì)主要是利用微機(jī)應(yīng)用實(shí)驗(yàn)平臺(tái)來模擬
22、電梯的運(yùn)行,用到了平臺(tái)上的一個(gè)非編碼鍵盤、LED顯示器、八段數(shù)碼管等模塊。</p><p> 有5個(gè)樓層,需要用5個(gè)按鍵模擬電梯中的請(qǐng)求按鈕,用5個(gè)按鍵模擬5個(gè)樓層每層向上請(qǐng)求的按鈕,再用5個(gè)模擬5個(gè)樓層每層向下請(qǐng)求的按鈕。非編碼鍵盤有16個(gè)鍵,可以用1-5號(hào)鍵模擬電梯內(nèi)的按鈕,用6-0號(hào)鍵模擬每層向上請(qǐng)求的按紐,A-E模擬每層向下請(qǐng)求的按紐。</p><p> 當(dāng)電梯靜止?fàn)顟B(tài)時(shí),無論
23、外部哪一層有請(qǐng)求,電梯都由靜止?fàn)顟B(tài)轉(zhuǎn)入向上或向下運(yùn)行的狀態(tài),直到到達(dá)請(qǐng)求的樓層;當(dāng)電梯處于向上運(yùn)行的狀態(tài)時(shí),此時(shí)高于該樓層向上的請(qǐng)求和內(nèi)部請(qǐng)求級(jí)別最高,其次是所有樓層向下的請(qǐng)求,再次是低于該樓層向上的請(qǐng)求;當(dāng)電梯處于向下運(yùn)行的狀態(tài)時(shí)則情況相反。</p><p> 由于中斷級(jí)別在隨著電梯所處樓層的不同而變化,而且中斷源比較多。所以用每一個(gè)中斷源直接和中斷控制器相連,需要用到多個(gè)8259A級(jí)聯(lián),很不方便。為解決這個(gè)
24、問題,首先定義三個(gè)單字節(jié)變量REQ_U、REQ_D和REQ_IN分別存儲(chǔ)電梯每一層向上、向下和內(nèi)部的請(qǐng)求,每一個(gè)變量用低5位,每一位代表一層。例如,REQ_U為 00000110B,這代表在2層和3層有向上的請(qǐng)求。8253定時(shí)器每隔20ms產(chǎn)生一次中斷,中斷程序便去執(zhí)行掃描鍵盤,當(dāng)掃描到有電梯內(nèi)部或者外部按鍵時(shí),將請(qǐng)求存儲(chǔ)到變量中。每到一個(gè)狀態(tài)時(shí)再檢查請(qǐng)求變量REQ_U、REQ_D和REQ_IN的值,根據(jù)電梯的運(yùn)行方向和變量中的請(qǐng)求,來
25、決定電梯下一步的運(yùn)行。</p><p> 設(shè)電梯的當(dāng)前樓層為floor(floor=1~7),運(yùn)行方向?yàn)閐ir(dir=0,向上;dir=1,向下),在電梯運(yùn)行的工程中,用數(shù)碼管輸出floor值顯示當(dāng)前的樓層。LED輸出REQ_IN的值顯示電梯內(nèi)已經(jīng)請(qǐng)求的樓層。</p><p> 六、系統(tǒng)硬件電路設(shè)計(jì)</p><p> 由于采用了PC機(jī)資源和微機(jī)實(shí)驗(yàn)平臺(tái),不需
26、要其他的硬件電路。利用了微機(jī)平臺(tái)上的8253定時(shí)/計(jì)數(shù)器、8255并行接口單元、LED單元、非編碼鍵盤、數(shù)碼管顯示單元等等。</p><p> 系統(tǒng)結(jié)構(gòu)框圖,如圖1所示。</p><p><b> 1、設(shè)計(jì)結(jié)構(gòu):</b></p><p><b> 圖1 系統(tǒng)結(jié)構(gòu)框圖</b></p><p>&
27、lt;b> 2、模塊分析:</b></p><p> (1)可編程定時(shí)/計(jì)數(shù)器8253</p><p> 定時(shí)/計(jì)數(shù)器8253主要是用于定時(shí)20ms,觸發(fā)中斷進(jìn)行鍵盤掃描。電路連線是CLOCK0接Q6,分頻后頻率為46875Hz,OUT0接中斷IRQ2,每20ms中斷一次,GATE0接5v。計(jì)數(shù)器的初值應(yīng)該是3A9H。</p><p> ?。?/p>
28、2)8255并行接口單元</p><p> 8255主要是用于鍵盤的掃描和發(fā)光二極管的數(shù)據(jù)輸出。所以用8255A口的低7位接7個(gè)發(fā)光二極管,B口低4位接非編碼鍵盤的列線,高4位接鍵盤的行線。</p><p> (3) LED顯示系統(tǒng)</p><p> 雖然只用了1格LED顯示器,但為了數(shù)字更新更方便,主程序更加簡(jiǎn)單,故此系統(tǒng)選用動(dòng)態(tài)顯示方式。由于系統(tǒng)的軟件部分
29、的運(yùn)行時(shí)的核心程序是一直循環(huán)的,因此顯示程序也是在循環(huán)過程中一直被調(diào)用,從而實(shí)時(shí)地被顯示出來。</p><p><b> ?。?)非編碼鍵盤</b></p><p> 本系統(tǒng)采用的是行反轉(zhuǎn)法來掃描鍵盤的,調(diào)用鍵盤掃描的程序TESTKEY后,程序中的變量KEY的值就是按下的鍵的值,如果KEY為0FFH則表示無鍵盤輸入,為0~15 則按照上往下從左往右的順序分別代表每一
30、個(gè)按鍵按下的信息。不過此掃描程序沒有考慮到多個(gè)按鍵同時(shí)按下的情況。又因?yàn)槟M電梯的按鍵一般不會(huì)有兩個(gè)按鍵同時(shí)按下的情況,所以,多個(gè)按鍵的情況可以不予考慮。</p><p> 3、畫出相應(yīng)的電路圖:</p><p><b> 圖2 電路原理圖</b></p><p><b> 七、軟件設(shè)計(jì)</b></p>
31、<p> 本設(shè)計(jì)的軟件設(shè)計(jì)的思路:通過軟件編程使8253輸出定時(shí)信號(hào)申請(qǐng)中斷,在中斷服務(wù)程序中掃描鍵盤,如果有按鍵,修改相應(yīng)的變量位,并輸出內(nèi)部請(qǐng)求變量REQ_IN到發(fā)光二極管顯示當(dāng)前的內(nèi)部請(qǐng)求樓層。在主程序中,查詢變量的值,根據(jù)電梯調(diào)度算法運(yùn)行電梯。</p><p> 1.主要設(shè)計(jì)模塊要求</p><p> 程序主要包括以下主要模塊:鍵盤掃描程序、LED顯示程序、電梯調(diào)
32、度算法。</p><p> 鍵盤掃描程序:采用的是行反轉(zhuǎn)法來掃描鍵盤的,相應(yīng)的程序設(shè)計(jì)請(qǐng)參考實(shí)驗(yàn)指導(dǎo)書上實(shí)驗(yàn)3中的相關(guān)介紹。</p><p> LED顯示程序:本設(shè)計(jì)只用到了一個(gè)LED,只要將floor轉(zhuǎn)換為相應(yīng)的段碼。先輸出位碼,再輸出段碼,循環(huán)輸出就可以動(dòng)態(tài)顯示。為了循環(huán)的顯示,將LED顯示程序放在中斷服務(wù)程序中。相應(yīng)的程序設(shè)計(jì)請(qǐng)參考實(shí)驗(yàn)指導(dǎo)書上實(shí)驗(yàn)3中的相關(guān)介紹。</p&g
33、t;<p> 電梯調(diào)度算法:在設(shè)計(jì)時(shí)將電梯一次從下到上視為一次運(yùn)行(注意不一定從底層到頂層),同理,電梯一次從上到下也視為一次運(yùn)行(注意不一定從頂層到底層)。 </p><p> 當(dāng)電梯向上運(yùn)行時(shí): </p><p> 位于當(dāng)前層以下的向上請(qǐng)求都被忽略留
34、到下次向上運(yùn)行時(shí)處理。 </p><p> 位于當(dāng)前層以上的向上請(qǐng)求都被記錄留到此次運(yùn)行處理。 </p><p> 無論哪層的向下請(qǐng)求都被忽略留到下次向下運(yùn)行時(shí)處理。 </p><p> 當(dāng)電梯向下運(yùn)行時(shí): </p><
35、p> 位于當(dāng)前層以上的向下請(qǐng)求都被忽略留到下次向下運(yùn)行時(shí)處理。 </p><p> 位于當(dāng)前層以下的向下請(qǐng)求都被記錄留到此次運(yùn)行處理。 </p><p> 無論哪層的向上請(qǐng)求都被忽略留到下次向上運(yùn)行時(shí)處理。</p><p> 2.程序流程圖
36、 </p><p><b> 1)主程序框圖:</b></p><p><b> 圖3 主程序框圖</b></p><p> 2)中斷服務(wù)程序框圖:</p><p> 圖4 中斷服務(wù)程序框圖</p><p> 3)電梯算法流程圖:
37、</p><p> 其中,dir代表電梯的運(yùn)行方向,0代表電梯向上運(yùn)行,1代表向下運(yùn)動(dòng)。設(shè)REQ_U(n)代表第n層向上的請(qǐng)求,同樣,REQ_D(n) 代表第n層向下的請(qǐng)求,REQ_IN(n) 代表第n層內(nèi)部的請(qǐng)求。求next的方法為:電梯向上時(shí),next為內(nèi)部請(qǐng)求的最小值和向上請(qǐng)求的大于floor的最小值之間的小者。電梯向下時(shí),next為內(nèi)部請(qǐng)求的最大值和向下請(qǐng)求中小于floor的最大值之間的大者。沒有滿足要
38、求的時(shí)返回0。</p><p><b> 電梯算法流程圖:</b></p><p> 圖5 電梯算法流程圖</p><p><b> 八、實(shí)現(xiàn)程序</b></p><p> FNUM MACRO </p><p> LOCAL ML1 </p>&
39、lt;p><b> PUSH CX </b></p><p><b> PUSH AX </b></p><p><b> PUSH DX </b></p><p><b> PUSH SI </b></p><p> MOV CH
40、,13H </p><p> MOV CL,31H </p><p><b> MOV SI,9 </b></p><p> ML1: MOV AH,02H ; </p><p> MOV DH,CH </p><p> MOV DL,1FH </p><p>
41、<b> INT 10H </b></p><p> MOV AH,02H </p><p> MOV DL,CL </p><p><b> INT 21H </b></p><p><b> DEC CH </b></p><p><
42、b> INC CL </b></p><p><b> DEC SI </b></p><p><b> JNZ ML1 </b></p><p><b> POP SI </b></p><p><b> POP DX </b>
43、;</p><p><b> POP AX </b></p><p><b> POP CX </b></p><p><b> ENDM </b></p><p> SITUATION MACRO NOWF </p><p> LOCAL L
44、1,L2,L3,L4,L5,L6,L7,L8,PASS1 </p><p> MOV AH,03H </p><p><b> INT 10H </b></p><p><b> FNUM </b></p><p> MOV AH,02H </p><p><b
45、> INT 10H </b></p><p> MOV SI,101H </p><p> L0: MOV AH,0CH </p><p> MOV DX,LASTF </p><p> MOV CX,SI </p><p><b> MOV AL,0 </b><
46、;/p><p><b> INT 10H </b></p><p><b> INC SI </b></p><p> CMP SI,120H </p><p><b> JNE L0 </b></p><p> MOV BH,1H </p&
47、gt;<p> MOV SI,100H </p><p> L1: MOV AH,0CH </p><p> MOV DX,20H </p><p> MOV CX,SI </p><p> MOV AL,BH </p><p><b> INT 10H </b><
48、/p><p> ADD SI,1H </p><p><b> INC BH </b></p><p> CMP SI,120H </p><p><b> JNE L1 </b></p><p> MOV SI,20H </p><p> M
49、OV BH,1H </p><p> L2: MOV AH,0CH </p><p> MOV DX,SI </p><p> MOV CX,100H </p><p> MOV AL,BH </p><p><b> INT 10H </b></p><p>
50、 ADD SI,1H </p><p><b> INC BH </b></p><p> CMP SI,9BH </p><p><b> JNE L2 </b></p><p> MOV SI,100H </p><p> MOV BH,1H </p>
51、;<p> L3: MOV AH,0CH </p><p> MOV DX,9BH </p><p> MOV CX,SI </p><p> MOV AL,BH </p><p><b> INT 10H </b></p><p><b> INC BH &l
52、t;/b></p><p><b> INC SI </b></p><p> CMP SI,120H </p><p><b> JNE L3 </b></p><p> MOV SI,20H </p><p> MOV BH,1H </p>
53、<p> L4: MOV AH,0CH </p><p> MOV DX,SI </p><p> MOV CX,120H </p><p> MOV AL,BH </p><p><b> INT 10H </b></p><p> ADD SI,1H </p>
54、<p><b> INC BH </b></p><p> CMP SI,9BH </p><p><b> JNE L4 </b></p><p> MOV FLAG1,1 </p><p> MOV DI,NOWF ;NOWFLOOR </p><p&
55、gt; MOV SI,101H </p><p> L5: MOV AH,0CH </p><p> MOV DX,DI </p><p> MOV CX,SI </p><p><b> MOV AL,1 </b></p><p><b> INT 10H </b
56、></p><p><b> INC SI </b></p><p> CMP SI,120H </p><p><b> JNE L5 </b></p><p><b> ENDM </b></p><p> MOVEF MACRO N
57、OWF,LASTF </p><p> LOCAL L1,L2,L3,L4,L5,L6,L7,PASS1 </p><p> MOV BH,1H </p><p> MOV SI,100H </p><p> L1: MOV AH,0CH </p><p> MOV DX,20H </p>&l
58、t;p> MOV CX,SI </p><p> MOV AL,BH </p><p><b> INT 10H </b></p><p> ADD SI,1H </p><p><b> INC BH </b></p><p> CMP SI,120H &
59、lt;/p><p><b> JNE L1 </b></p><p> MOV SI,20H </p><p> MOV BH,1H </p><p> L2: MOV AH,0CH </p><p> MOV DX,SI </p><p> MOV CX,100H
60、 </p><p> MOV AL,BH </p><p><b> INT 10H </b></p><p> ADD SI,1H </p><p><b> INC BH </b></p><p> CMP SI,9BH </p><p>
61、;<b> JNE L2 </b></p><p> MOV SI,100H </p><p> MOV BH,1H </p><p> L3: MOV AH,0CH </p><p> MOV DX,9BH </p><p> MOV CX,SI </p><p&
62、gt; MOV AL,BH </p><p><b> INT 10H </b></p><p><b> INC BH </b></p><p><b> INC SI </b></p><p> CMP SI,120H </p><p>&
63、lt;b> JNE L3 </b></p><p> MOV SI,20H </p><p> MOV BH,1H </p><p> L4: MOV AH,0CH </p><p> MOV DX,SI </p><p> MOV CX,120H </p><p>
64、; MOV AL,BH </p><p><b> INT 10H </b></p><p> ADD SI,1H </p><p><b> INC BH </b></p><p> CMP SI,9BH </p><p><b> JNE L4 &l
65、t;/b></p><p> MOV FLAG1,1 </p><p> MOV DI,NOWF ;NOWFLOOR </p><p> L6: MOV SI,101H </p><p> L5: MOV AH,0CH </p><p> MOV DX,DI </p><p>
66、 MOV CX,SI </p><p><b> MOV AL,1 </b></p><p><b> INT 10H </b></p><p><b> INC SI </b></p><p> CMP SI,120H </p><p><
67、;b> JNE L5 </b></p><p> MOV AX,FLAG1 </p><p><b> CMP AX,1 </b></p><p> JNE PASS1 </p><p> XOR AX,AX </p><p> MOV FLAG1,AX </p
68、><p> MOV AH,09H </p><p> MOV DX,OFFSET MSGEN </p><p><b> INT 21H </b></p><p> MOV DX,OFFSET MSG3 </p><p><b> INT 21H </b></p&
69、gt;<p> MOV AH,01H </p><p><b> INT 21H </b></p><p> PASS1:MOV BX,06FFH </p><p> MOV CX,0FFFFH </p><p> TIME: LOOP TIME </p><p><
70、b> DEC BX </b></p><p><b> CMP BX,0 </b></p><p><b> JNE TIME </b></p><p> MOV SI,101H </p><p> L7: MOV AH,0CH </p><p>
71、 MOV DX,DI </p><p> MOV CX,SI </p><p><b> MOV AL,0 </b></p><p><b> INT 10H </b></p><p><b> INC SI </b></p><p> CM
72、P SI,120H </p><p><b> JNE L7 </b></p><p> MOV AX,NOWF </p><p> CMP AX,LASTF </p><p><b> JA PASS2 </b></p><p><b> INC DI
73、</b></p><p> JMP PASS3 </p><p> PASS2: CMP AX,LASTF </p><p> JNE PASS4 </p><p> JMP PASS3 </p><p> PASS4: DEC DI </p><p><b>
74、 PASS3: </b></p><p> CMP DI,LASTF ;LASTFLOOR </p><p><b> JNE L6 </b></p><p> MOV SI,101H </p><p><b> ENDM </b></p><p> D
75、ATA SEGMENT </p><p> MSG1 DB 'FLOOR YOU SIT NOW(JUST 1-9F):$' </p><p> MSG2 DB 'FLOOR YOU WANT GO(JUST 1-9F):$' </p><p> MSG3 DB 'INPUT ANY KEY TO START...$
76、39; </p><p> MSG4 DB 'WANT EXPERIENCE AGAIN (Y/N)..$' </p><p> MSGEN DB 0AH,0DH,'$' </p><p><b> NOWF DW ?</b></p><p> LASTF DW ?</p&g
77、t;<p> FLAG1 DW 1 </p><p> DATA ENDS </p><p> STACK SEGMENT </p><p> BUFS DB 100 DUP(?) </p><p> TOPS LABEL WORD </p><p> STACK ENDS </p>
78、;<p> CODE1 SEGMENT </p><p> ASSUME CS:CODE1, DS:DATA, SS:STACK </p><p> MAIN PROC </p><p> DSEG SEGMENT</p><p> TABLE DB 40H,06H,5BH,4FH,66H,6DH,7DH,07H
79、</p><p> DSEG ENDS</p><p> CSEG SEGMENT</p><p> ASSUME CS:CSEG,DS:DSEG</p><p> START: MOV AX,DSEG</p><p> MOV DS,AX</p><p>
80、 MOV AL,82H</p><p> MOV DX,9003H</p><p> LEA BX,TABLE</p><p> OUT DX,AL</p><p> MOV DX,8004H </p><p> MOV AX,0000H</p>
81、<p> MOV SI,AX</p><p> MOV AL,[BX+SI]</p><p> OUT DX,AL</p><p> MOV AL,02H</p><p> MOV DX,8002H</p><p> OUT DX,AL</p>
82、<p> MOV AL,0FFH</p><p> MOV DX,9003H</p><p> OUT DX,AL</p><p> MOV AL,00H</p><p> MOV DX,9003H</p><p> OUT DX,AL</p>
83、<p> ;---------------------------- </p><p> MOV CX, 500 </p><p> L1: MOV DX,8004H</p><p> MOV AX,0005H</p><p> MOV SI,AX</p>
84、;<p> MOV AL,[BX+SI]</p><p> OUT DX,AL</p><p> MOV AL,01H</p><p> MOV DX,8002H</p><p> OUT DX,AL</p><p> CALL DELAY</p>
85、<p> MOV DX,8004H</p><p> MOV AX,0000H</p><p> MOV SI,AX</p><p> MOV AL,[BX+SI]</p><p> OUT DX,AL</p><p> MOV AL,02H</p&g
86、t;<p> MOV DX,8002H</p><p> OUT DX,AL</p><p> CALL DELAY</p><p><b> LOOP L1</b></p><p> MOV DX,8004H</p><p> MOV A
87、L,00H</p><p> OUT DX,AL</p><p> MOV AL,00H</p><p> MOV DX,8002H</p><p> OUT DX,AL </p><p> DELAY PROC</p><p> PUSH B
88、X</p><p> PUSH CX</p><p> MOV BL,1</p><p> NEXT: MOV CX,1167</p><p> W10MS: LOOP W10MS</p><p> DEC BL</p><p> JNZ
89、 NEXT</p><p> MOV DX,8004H</p><p> MOV AL,00H</p><p> OUT DX,AL</p><p> MOV AL,00H</p><p> MOV DX,8002H</p><p> OUT
90、DX,AL</p><p><b> POP CX</b></p><p> POP BX </p><p><b> RET</b></p><p> DELAY ENDP</p><p> CSEG ENDS</p>
91、<p> END START</p><p><b> 九、設(shè)計(jì)體會(huì)</b></p><p> 在以前沒有這方面鍛煉的我,當(dāng)知道要做課程設(shè)計(jì)的時(shí)候心里面感覺有些害怕和擔(dān)心, 擔(dān)心自己不會(huì)或者做不好。但是當(dāng)真的要做的時(shí)候也只好進(jìn)自己作大的努力去做, 做到自己最好的。</p><p> 我們接到的題目是電梯升降控制設(shè)計(jì)時(shí)
92、,我們的主要任務(wù)就是要在上面加上自己的附加功能。開始想加什么功能便是我們最先需要思考的,總是不能很好的將其短線是數(shù)碼管很好的轉(zhuǎn)換和應(yīng)用。我們?cè)傧爰悠渌δ芰耍?我們首先想到的是加時(shí)間和日期, 但是得知很多同學(xué)都加這個(gè)功能,但是對(duì)于我來說,這門課程學(xué)的不是很好,而能力有限,也就不能達(dá)到要求了。</p><p> 接我們就要進(jìn)行我們的設(shè)計(jì),如何在這上面架這個(gè)功能是我們需要研究和學(xué)習(xí)的,我們?cè)谶@個(gè)過程中參閱資料,請(qǐng)教
93、同學(xué),終于做成了這個(gè)顯示時(shí)間和日期的附加功能。但是我們又遇到了一問題,在這個(gè)過程中,我們發(fā)現(xiàn)是調(diào)用過程中出現(xiàn)順序錯(cuò)誤,經(jīng)過這個(gè)我們不僅改正錯(cuò)誤,而且使自己的有關(guān)調(diào)用的知識(shí)也得到了加深和鞏固。</p><p> 我們?cè)谶@個(gè)過程中有很多自己的感受,我想很多同學(xué)都會(huì)和我有一樣的感受,那就是感覺匯編語言真的是很神奇,很有意思。但是我們的時(shí)間很緊迫,面臨期末考試,也沒有更多的時(shí)間去研究這些有趣的設(shè)計(jì)。我們從開始的擔(dān)心和害
94、怕漸漸變成了享受,享受著匯編帶給我們的快樂??粗约鹤龀鰜淼臇|西,心里面的感覺真的很好。雖然我們做的東西在別人看來很簡(jiǎn)單都還很簡(jiǎn)單,但是畢竟是我們自己親手,我們的能力有限,做起來也就不是那么得心應(yīng)手了。雖然借助了很多網(wǎng)絡(luò)資料,但是能對(duì)這些東西有一些了解,我也很高興了。我想微機(jī)原理課程設(shè)計(jì)和其他課程設(shè)計(jì)有共同的地方,那就是不僅加深和鞏固了我們的課本知識(shí),而且增強(qiáng)了我們自己動(dòng)腦,自己動(dòng)手的能力。但是我想他也有它的獨(dú)特指出,那就是讓我們進(jìn)入一
95、個(gè)神奇的世界,那就是編程。對(duì)于很多學(xué)過匯編或者其他的類似程序的同學(xué)來說,這不算新奇,但是對(duì)于我來說真的新奇,很有趣,也是我有更多的興趣學(xué)習(xí)微機(jī)原理和其他的匯編。</p><p> 在此感謝老師每天不辭勞苦的對(duì)我們指導(dǎo),也感謝同學(xué)們的幫助。</p><p><b> 十、參考資料</b></p><p> 1、《微型計(jì)算機(jī)原理與接口技術(shù)》
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 模擬電梯微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 2017微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 《微機(jī)原理》課程設(shè)計(jì)報(bào)告
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 微機(jī)原理課程設(shè)計(jì)課程設(shè)計(jì)----微機(jī)內(nèi)存擴(kuò)充卡
- 微機(jī)原理課程設(shè)計(jì)課程設(shè)計(jì)----微機(jī)內(nèi)存擴(kuò)充卡
- 微機(jī)原理課程設(shè)計(jì)----路燈控制設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)報(bào)告--秒表設(shè)計(jì)
- 微機(jī)原理串口通信課程設(shè)計(jì)
- 微機(jī)原理電子秒表課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)---打字練習(xí)
- 微機(jī)原理課程設(shè)計(jì)--圖形畫法
評(píng)論
0/150
提交評(píng)論