微機原理實訓報告

2022-08-02 12:24:02 字數 3433 閱讀 6268

實訓報告書

實訓名稱: 微機原理及應用

系 (部資訊工程系

專業班級: 網路工程11-1班

指導教師: 張清菊許晉京

完成日期2013/12/13

山東科技大學泰山科技學院

目錄一、 實訓要求2

1.1設計基本要求2

1.2進一步設計要求2

二、實訓內容2

1、電梯工作方式2

2、進一步設計要求2

三、系統方案設計3

四、系統硬體設計3

五、系統軟體設計4

六、模組具體設計4

6.1鍵盤掃瞄程式4

6.2 led顯示程式7

6.3電梯排程演算法11

七、電梯排程系統流程圖12

八、電梯排程程式**13

九、參考文獻25

模擬電梯

一、 實訓要求

1、設計基本要求

用鍵盤、按鈕、發光二極體和 led顯示單元來模擬電梯工作過程。樓層設為 8層,用鍵盤鍵入希望停的樓層, 8 個發光二極體顯示希望停的樓層,led指示電梯當前所在樓層,按鈕用來啟、停電梯。電梯正常執行時以每 2 秒1層的速度上公升或下降。

2、進一步設計要求

除執行按鈕外,再設計幾個按鈕,模擬更多的電梯執行功能,如:

(1)直達按鈕。若按此按鈕,電梯按直達方式執行,即對執行期間新鍵入的停靠樓層(即使是同方向未到樓層)亦不停,直達終點樓層;

(2)急停按鈕。電梯執行中,若按此按鈕,則電梯立即停在下一到達的樓層;

(3)斷電待修按鈕。按下該鈕電梯不能工作,再按一下才能重新工作;

(4)其它功能按鈕(由設計者自由發揮)。

二、實訓內容

1電梯工作按以下方式執行:

(1)設當前電梯停在某層(八段碼顯示相應樓層,8個led全滅)。鍵入1~8數字鍵,如鍵入的數字與當前電梯停層同,則什麼亦不動作,若不同則相應樓層的led亮;如再按執行鍵,則電梯自動判別上公升或下降(在執行過程中八段碼顯示樓層變化)一直到達希望停的樓層(八段碼顯示該樓層,相應led滅)。

(2)設當前電梯正在上公升或下降執行(此時八段碼顯示樓層變化,led指示希望抵達的樓層),若鍵入新的希望停的樓層數字(相應的led亮),則對同方向(上公升或下降)未到的樓層能停,對其它情況則先停原希望停的樓層,然後按執行鍵後繼續執行)。如下幾例:

① 設電梯當前在2層,向上執行,led指示希望在6層停,此時若鍵入4,則電梯將在4樓停,若再按執行鍵,則繼續執行至6層停;

② 同上情況,若鍵入的不是4而是8,則電梯將先停在6層,再按執行鍵,執行至8層停;

③ 同上情況,若鍵入的不是4(或8),而是1,則電梯先停在6層,再按執行鍵,執行至1層停。

2.進一步設計要求

除執行按鈕外,再設計幾個按鈕,模擬更多的電梯執行功能,如:

(1)直達按鈕。若按此按鈕,電梯按直達方式執行,即對執行期間新鍵入的停靠樓層(即使是同方向未到樓層)亦不停,直達終點樓層;

(2)急停按鈕。電梯執行中,若按此按鈕,則電梯立即停在下一到達的樓層;

(3)斷電待修按鈕。按下該鈕電梯不能工作,再按一下才能重新工作;

(4)其它功能按鈕(由設計者自由發揮)。

三、系統方案設計

本設計主要是利用微機應用實驗平台來模擬電梯的執行,用到了平台上的乙個非編碼鍵盤、led顯示器、八段數碼管等模組。

當電梯靜止狀態時,無論外部哪一層有請求,電梯都由靜止狀態轉入向上或向下執行的狀態,直到到達請求的樓層;當電梯處於向上執行的狀態時,此時高於該樓層向上的請求和內部請求級別最高,其次是所有樓層向下的請求,再次是低於該樓層向上的請求;當電梯處於向下執行的狀態時則情況相反。

由於中斷級別在隨著電梯所處樓層的不同而變化,而且中斷源比較多。所以用每乙個中斷源直接和中斷控制器相連,需要用到多個8259a級聯,很不方便。為解決這個問題,首先定義三個單位元組變數req_u、req_d和req_in分別儲存電梯每一層向上、向下和內部的請求,每乙個變數用低8位,每一位代表一層。

例如,req_u為 00000110b,這代表在2層和3層有向上的請求。8253定時器每隔20ms產生一次中斷,中斷程式便去執行掃瞄鍵盤,當掃瞄到有電梯內部或者外部按鍵時,將請求儲存到變數中。每到乙個狀態時再檢查請求變數req_u、req_d和req_in的值,根據電梯的執行方向和變數中的請求,來決定電梯下一步的執行。

設電梯的當前樓層為floor(floor=1~8),執行方向為dir(dir=0,向上;dir=1,向下),在電梯執行的工程中,用數碼管輸出floor值顯示當前的樓層。led輸出req_in的值顯示電梯內已經請求的樓層。

四、系統硬體設計

由於採用了pc機資源和微機實驗平台,不需要其他的硬體電路。利用了微機平台上的8253定時/計數器、8255並行介面單元、8259可程式設計中斷控制器、led單元、非編碼鍵盤、數碼管顯示單元等等。

系統結構框圖,如圖1所示。

圖1 系統結構框圖

五、系統軟體設計

本設計的軟體設計的思路:通過軟體程式設計使8253輸出定時訊號申請中斷,在中斷服務程式中掃瞄鍵盤,如果有按鍵,修改相應的變數位,並輸出內部請求變數req_in到發光二極體顯示當前的內部請求樓層。在主程式中,查詢變數的值,根據電梯排程演算法執行電梯。

程式主要包括以下主要模組:鍵盤掃瞄程式、led顯示程式、電梯排程演算法。

六、模組具體設計

6.1鍵盤掃瞄程式

1、8255並行介面單元

利用8255可程式設計並行口做乙個掃瞄鍵盤實驗,把按鍵輸入的鍵碼,顯示在由8279控制的8段數碼管上。8255pa口做鍵盤輸入線,pb口作掃瞄線。

(1)8255實驗原理圖

圖2 8255實驗原理圖

(2)8255晶元:8255作為主機與外設的連線晶元,必須提供與主機相連的3個匯流排介面,即資料線、位址線、控制線介面。同時必須具有與外設連線的介面a、b、c口。

由於8255可程式設計,所以必須具有邏輯控制部分,因而8255內部結構分為3個部分:與cpu連線部分、與外設連線部分、控制部分。

①與cpu連線部分:根據定義,8255能並行傳送8位資料,所以其資料線為8根d0~d7。由於8255具有3個通道a、b、c,所以只要兩根位址線就能定址a、b、c口及控制暫存器,故位址線為兩根a0~a1。

此外cpu要對8255進行讀、寫與片選操作,所以控制線為片選、復位、讀、寫訊號。各訊號的引腳編號如下:資料匯流排db:

控制匯流排cb:片選訊號、復位訊號rst、寫訊號、讀訊號。當cpu要對8255進行讀、寫操作時,必須先向8255發片選訊號選中8255晶元,然後發讀訊號或寫訊號對8255進行讀或寫資料的操作。

②與外設介面部分:根據定義,8255有3個通道a、b、c與外設連線,每個通道又有8根線與外設連線,所以8255可以用24根線與外設連線,若進行開關量控制,則8255可同時控制24路開關。各通道的引腳編號如下:

a口:編號為pa0~pa7,用於8255向外設輸入輸出8位並行資料。 b口:

編號為pb0~pb7,用於8255向外設輸入輸出8位並行資料。c口:編號為pc0~pc7,用於8255向外設輸入輸出8位並行資料,當8255工作於應答i/o方式時,c口用於應答訊號的通訊。

微機與組網實訓實踐報告

姓名 趙勁雄 學號 1208010224 班級 軟體工程1202 計算機網路的拓撲結構,即是指網上計算機或裝置與傳輸媒介形成的結點與線的物 理構成模式。主要由通訊子網決定。網路的結點有兩類 一類是轉換和交換資訊的轉接結點,包括結點交換機 集線器和終端控制器等 另一類是訪問結點,包括計算機主機和終端等...

微機原理專案報告

微機原理專案七 姓名 李守燁 班級 08級機電2班 指導老師 史豔國 學號 080101010398 時間 2011 5 21 目錄1題目及要求 2 2過程示意圖 2 3總體設計思路 3 3.1步進電機的模擬 3 3.2控制系統的啟停控制 3 3.3指示燈的控制 3 3.4數碼管靜態顯示 3 4系統...

微機原理實習報告

微機實習報計科091班 2組 告2010年6月10日 表基於tdn md88的交通燈 1 設計目的 利用tdn微機原理試驗箱及單元電路,實現對一道路交通燈的控制。二 小組成員及主要分工 三 技術要求 1 設計完成交通燈的電路 2 採用tdn試驗箱上的8255 8259 8088完成 3 程式設計中採...