久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

微機原理課程設計——交通燈控制系統(共五則)

時間:2019-05-15 11:39:31下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《微機原理課程設計——交通燈控制系統》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《微機原理課程設計——交通燈控制系統》。

第一篇:微機原理課程設計——交通燈控制系統

設計要求:

(1)利用8253定時,8259中斷及8255輸出實現交通燈模擬控制。

(2)實現能自動控制和手動控制。(3)實現能隨時可以調整自動模式的綠燈和紅燈時間

設計目的

電子課程設計是電子技術學習中非常重要的一個環節,是將理論知識和實踐能力相統一的一個環節,是真正鍛煉學生能力的一個環節。交通燈能保證行人過馬路的安全,控制交通狀況等優點受到人們的歡迎,在很多場合得到了廣泛的應用。

交通燈是采用計算機通過編寫匯編語言程序控制的。紅燈停,綠燈行的交通規則。廣泛用于十字路口,車站, 碼頭等公共場所,成為人們出行生活中不可少的必需品,由于

計算機技術的成熟與廣泛應用,使得交通燈的功能多樣化,遠遠超過老式交通燈, 交通燈的數字化給人們生產生活帶來了極大的方便,而且大大地擴展了交通燈的功能。諸如閃爍警示、鳴笛警示,時間程序自動控制、倒計時顯示,所有這些,都是以計算機為基礎的。還可以根據主、次干道的交通狀況的不同任意設置各自的不同的通行時間。或者給紅綠色盲聲音警示的人性化設計。現在的交通燈系統很多都增加了智能控制環節,比如對闖紅燈的車輛進行拍照。當某方向紅燈亮時,此時相應的傳感器開始工作,當有車輛通過時,照相機就把車輛拍下。

要將交通燈系統產品化,應該根據客戶不同的需求進行不同的設計,應該在程序中增加一些可以人為改變的參數,以便客戶根據不同的需要隨時調節交通燈。因此,研究交通燈及擴大其應用,有著非常現實的意義。設計內容

交通燈控制系統

利用8253定時器、8255等接口,設計一電路,模擬十字路口交通燈控制。要求能實現自動控制和手動應急控制。

具體要求如下:

1)在一個十字路口的一條主干道和一條支干道分別裝上一套紅、綠、黃三種信號燈。

2)在一般情況下,主干道上的綠燈常亮,而支干道總是紅燈。

3)當檢測到支干道上來車時,主干道的綠燈轉為黃燈,持續4S后,又變為 紅燈,同時支干道由紅燈變為綠燈。

4)支干道綠燈亮后,或者檢測到主干道上來了三輛車,或者雖未來三輛車,但綠燈已經持續了25秒,則支干道立即變為黃燈,同時主干道由紅燈變為綠燈。設計要求

在Proteus環境下,結合課程設計題目,設計硬件原理圖,搭建硬件電路

軟件設計

1、采用模塊化程序結構設計軟件,可將整個軟件分成若干功能模塊。

2、畫出程序流程圖。

3、根據流程圖,編寫源程序。

4、在Proteus環境下,仿真調試程序 設計原理與硬件電路

要完成本實驗,首先必須了解交通路燈的亮滅規律。本實驗需要用到實驗箱上八個發光二極管中的六個,即紅、黃、綠各兩個。不妨將L1(綠)、L2(黃)、L3(紅)做為南北方向的指示燈,將L4(綠)、L5(黃)、L6(紅)做為東西方向的指示燈。而交通燈的亮滅規律為:初始態是兩個路口的紅燈全亮,之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。閃爍若干次后,再切換到東西路口方向,重復上述過程。各發光二極管的陽極通過保護電阻接到+5V的電

源上,陰極接到輸入端上,因此使其點亮應使相應輸入端為低電平。在以上的敘述基礎上,本實驗添加了東西方向S2、南北方向S3緊急切換按鈕各一個,當緊急按鈕按下時,相應方向緊急切換為綠燈,以便特種車輛通行。另外,本實驗以低電平觸發中斷申請,表示有特種車通過。

本實驗中斷處理程序的應用,最主要的地方是如何保護進入中斷前的狀態,使得中斷程序執行完畢后能回到交通燈中斷前的狀態。要保護的地方,除了累加器ACC、標志寄存器PSW外,還要注意:一是主程序中的延時程序和中斷處理程序中的延時程序不能混用,本實驗給出的程序中,主程序延時用的是

R5、R6、R7,中斷延時用的是R3、R4和新的R5。第二,主程序中每執行一步經74LS273的端口輸出數據的操作時,應先將所輸出的數據保存到一個單元中。因為進入中斷程序后也要執行往74LS273端口輸出數據的操作,中斷返回時如果沒有恢復中斷前74LS273端口鎖存器的數據,則顯示往往出錯,回不到中斷前的狀態。還要注意一點,主程序中往端口輸出數據操作要先保存再輸出,例如有如下操作:

MOV A,#0F0H(0)MOVX @R1,A(1)MOV SAVE,A(2)

程序如果正好執行到(1)時發生中斷,則轉入中斷程序,假設中斷程序返回主程序前需要執行一句MOV A,SAVE指令,由于主程序中沒有執行(2),故SAVE中的內容實際上是前一次放入的而不是(0)語句中給出的0F0H,顯示出錯,將(1)、(2)兩句順序顛倒一下則沒有問題。發生中斷時確定方向的綠燈亮10秒,然后返回中斷前的狀態。

程序及硬件系統調試情況

程序運行結果: 東西路右拐和南北路左拐綠燈點亮5秒,直通到均為紅燈 5秒后,黃燈亮3秒鐘。此時南北方向仍維持紅燈點亮。東西方向直通,為綠燈,南北 方向紅燈 黃燈再亮三秒之后,東西路左拐和南北路右拐綠燈點亮 南北方向的黃燈亮3秒鐘后,南北方向直通,延時5秒 閉合A口開關,四個路口全紅燈,表明緊急狀態。

設計總結與體會

經過這兩周的課程設計, 做關于交通燈系統設計,我認真查閱資料,學習關于這方面的知識,比如說要了解8086芯片中各個引腳的功能,怎么樣去使用8255這個可編程并行接口芯片,怎么樣使用8253來定時及輸出一定頻率的脈沖以及交通有哪些規則.在理論學習的基礎上,又下了一次苦工夫,算是明白了設計一個系統的過程;也讓我體會到要想成功地設計某個東西,光學好專業知識是不夠的,必須要系統的知識,無論在哪方面都要有個明白的概念,只有這樣才不至于在設計過程中摸不著頭腦,知道去哪些是需要查的資料,還有一點,我覺得我在芯片編程方面,特別是在初始化方面是我最大的困難,或許是我的匯編語言學得不夠好,我只

能借助參考資料,查每一條指令的作用與功能,這樣一來又鞏固了我的對匯編語言的了解.而且在設計中,把死板的課本知識變得生動有趣,激發了學習的積極性。把學過的計算機編譯原理的知識強化,能夠把課堂上學的知識通過自己設計的程序表示出來,加深了對理論知識的理解。以前對與計算機操作系統的認識是模糊的,概念上的,現在通過自己動手做實驗,從實踐上認識了操作系統是如何處理命令的,如何協調計算機內部各個部件運行,對計算機編譯原理的認識更加深刻。

第二篇:微機原理與接口技術課程設計-交通燈控制系統

版權所有

微機原理課程設計

報 告 書

課 題 名

班 級

學 號

姓 名

指導教師 日 期

目錄 設計目的................................................................................................2 2 設計內容................................................................................................2 3 設計要求................................................................................................2 4 設計原理與硬件電路............................................................................3 5 程序流程圖............................................................................................5 6 程序代碼................................................................................................5 7 程序及硬件系統調試情況....................................................................9 8 設計總結與體會..................................................................................10 9 參考文獻..............................................................................................10 設計目的

電子課程設計是電子技術學習中非常重要的一個環節,是將理論知識和實踐能力相統一的一個環節,是真正鍛煉學生能力的一個環節。交通燈能保證行人過馬路的安全,控制交通狀況等優點受到人們的歡迎,在很多場合得到了廣泛的應用。

交通燈是采用計算機通過編寫匯編語言程序控制的。紅燈停,綠燈行的交通規則。廣泛用于十字路口,車站, 碼頭等公共場所,成為人們出行生活中不可少的必需品,由于計算機技術的成熟與廣泛應用,使得交通燈的功能多樣化,遠遠超過老式交通燈, 交通燈的數字化給人們生產生活帶來了極大的方便,而且大大地擴展了交通燈的功能。諸如閃爍警示、鳴笛警示,時間程序自動控制、倒計時顯示,所有這些,都是以計算機為基礎的。還可以根據主、次干道的交通狀況的不同任意設置各自的不同的通行時間。或者給紅綠色盲聲音警示的人性化設計。現在的交通燈系統很多都增加了智能控制環節,比如對闖紅燈的車輛進行拍照。當某方向紅燈亮時,此時相應的傳感器開始工作,當有車輛通過時,照相機就把車輛拍下。

要將交通燈系統產品化,應該根據客戶不同的需求進行不同的設計,應該在程序中增加一些可以人為改變的參數,以便客戶根據不同的需要隨時調節交通燈。因此,研究交通燈及擴大其應用,有著非常現實的意義。

設計內容

交通燈控制系統

利用8253定時器、8255等接口,設計一電路,模擬十字路口交通燈控制。要求能實現自動控制和手動應急控制。設計要求

在Proteus環境下,結合課程設計題目,設計硬件原理圖,搭建硬件電路 軟件設計

1、采用模塊化程序結構設計軟件,可將整個軟件分成若干功能模塊。

2、畫出程序流程圖。

3、根據流程圖,編寫源程序。

4、在Proteus環境下,仿真調試程序 設計原理與硬件電路 程序流程圖 程序代碼

A_PORT EQU 200H B_PORT EQU 202H C_PORT EQU 204H CTRL_PORT EQU 206H

CLK0 EQU 100H CLK1 EQU 102H CTRL EQU 106H DATA SEGMENT BUF1 DB 09H,11H,21H,12H,0CH,4AH,89H,49H BUF2 DB 0C5H,0A3H,95H,93H,95H,13H,15H,23H,0H DATA ENDS STACK SEGMENT PARA STACK 'STACK' DB 100 DUP(?)STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AL,10010000B MOV DX,CTRL_PORT OUT DX,AL MOV AL,0 MOV DX,B_PORT OUT DX,AL MOV DX,C_PORT OUT DX,AL CALL PLAY LEA SI,BUF1 LEA BX,BUF2 AAA1: MOV CH,[BX] MOV CL,CH AND CL,00001111B

CALL SHOW1 CALL DELAY CALL SHOW2 CALL DELAY JMP AAA6 AAA4: MOV DX,A_PORT IN AL,DX AND AL,00000001B CMP AL,00000000B JNZ AAA7 MOV AL,00001001B MOV DX,B_PORT OUT DX,AL MOV AL,10010000B MOV DX,C_PORT OUT DX,AL JMP AAA4 AAA7: MOV DX,A_PORT IN AL,DX AND AL,00000010B CMP AL,00000000B JNZ AAA4 CMP CL,0 JNZ AAA5 INC SI INC BX MOV AL,[BX] CMP AL,0 JNZ AAA1 JMP START

AAA5: DEC CL DEC CH CALL SHOW2 CALL DELAY AAA6: MOV DX,A_PORT IN AL,DX AND AL,00000010B CMP AL,00000010B JNZ AAA6 JMP AAA4

SHOW1 PROC MOV AL,[SI] MOV DX,B_PORT OUT DX,AL RET SHOW1 ENDP

SHOW2 PROC MOV AL,CH MOV DX,C_PORT OUT DX,AL RET SHOW2 ENDP

PLAY PROC MOV AL,00110111B MOV DX,CTRL OUT DX,AL MOV AX,1000

MOV DX,CLK0 OUT DX,AL MOV AL,AH OUT DX,AL RET PLAY ENDP

DELAY PROC PUSH CX MOV CX,0F5FH LOOP1: LOOP LOOP1 POP CX RET DELAY ENDP

CODE ENDS END START 程序及硬件系統調試情況 程序運行結果:

1. 東西路右拐和南北路左拐綠燈點亮5秒,直通到均為紅燈 2. 5秒后,黃燈亮3秒鐘。此時南北方向仍維持紅燈點亮。3. 東西方向直通,為綠燈,南北 方向紅燈

4. 黃燈再亮三秒之后,東西路左拐和南北路右拐綠燈點亮 5. 南北方向的黃燈亮3秒鐘后,南北方向直通,延時5秒 6. 閉合A口開關,四個路口全紅燈,表明緊急狀態。設計總結與體會

經過這兩周的課程設計, 做關于交通燈系統設計,我認真查閱資料,學習關于這方面的知識,比如說要了解8086芯片中各個引腳的功能,怎么樣去使用8255這個可編程并行接口芯片,怎么樣使用8253來定時及輸出一定頻率的脈沖以及交通有哪些規則.在理論學習的基礎上,又下了一次苦工夫,算是明白了設計一個系統的過程;也讓我體會到要想成功地設計某個東西,光學好專業知識是不夠的,必須要系統的知識,無論在哪方面都要有個明白的概念,只有這樣才不至于在設計過程中摸不著頭腦,知道去哪些是需要查的資料,還有一點,我覺得我在芯片編程方面,特別是在初始化方面是我最大的困難,或許是我的匯編語言學得不夠好,我只能借助參考資料,查每一條指令的作用與功能,這樣一來又鞏固了我的對匯編語言的了解.而且在設計中,把死板的課本知識變得生動有趣,激發了學習的積極性。把學過的計算機編譯原理的知識強化,能夠把課堂上學的知識通過自己設計的程序表示出來,加深了對理論知識的理解。以前對與計算機操作系統的認識是模糊的,概念上的,現在通過自己動手做實驗,從實踐上認識了操作系統是如何處理命令的,如何協調計算機內部各個部件運行,對計算機編譯原理的認識更加深刻。參考文獻

[1] 彭虎、周佩玲、傅忠謙.《微機原理里與接口技術》(第2版)[M] 北京:電子工業出版社 2008,149-187 [2] 周明德.《微型計算機系統原理及應用》[M] 北京:清華大學出版社,1998;

第三篇:微機原理課程設計——洗衣機控制系統

微機原理與接口技術課程設計

設計題目:設計者:專業 : 班級 : 學號 :

洗衣機控制系統設計

電氣工程及其自動化 1

課程設計的意義

1.1 洗衣機的發展狀況概述

1.洗衣機的發展史

洗衣服是每個家庭都無法逃避的家庭勞動。洗衣機的出現給人們的生活帶來了相當大的方便,它的普及大大降低了大多數家庭的體力勞作。

1858年,美國人漢密爾頓·史密斯制成了第一臺洗衣機。1874年,美國人比爾·布萊克斯發明了第一臺人工攪動式洗衣機,使得“手洗時代”受到了挑戰。1910年美國人研制出了第一臺電動式洗衣機。1922年美國瑪塔依格公司生產出了第一臺攪拌式洗衣機。1932年美德克斯航空公司研制成功了第一臺前裝式滾筒式洗衣機,這臺機衣機能夠使洗滌、漂洗、脫水三個步驟在同一個滾中操作。與此同時,世界各地也相繼出現了洗衣機。洗衣機工業快速迅猛地發展起來。

1937年第一臺自動洗衣機問世。1955年日本研制出波輪式洗衣機。60年代日本出現了半自動洗衣機。70年代生產出了波輪式套桶全自動洗衣機。70年代后期以電腦控制的全自動洗衣機在日本問世。80年代“模糊控制”開始應用于洗衣機中,使得洗衣機能夠通過模糊控制使洗衣機操作更加簡單,實現智能化。近半個多世紀里,在工業發達國家,全自動洗衣機技術得到廣范的應用,其年總產量及社會普及率均以達到相當高的水平。

2.我國洗衣機的發展現狀

洗衣機在中國起步較晚,1978年才開始正式生產家用洗衣機。隨著改革開放的不斷深入,經濟的持續增長,人民生活水平的普遍提高,人們對于洗衣機的認識也在不斷發展,進入80年代后,中國洗衣機行業一直保持著旺盛的發展形勢。目前,洗衣機在我國城市甚至廣大農村已得到大范圍的普及。中國洗衣機市場正處于快速更新換代階段,市場潛力巨大,隨著家用電器的自動化、智能化發展,人們對于洗衣機的期望也越來越高。1983年,中國洗衣機產量由1978年的400臺增至365萬臺。此后全國各處都大規模的引進國外先進洗衣機技術。中國的洗衣機發展突飛猛進,先進技術的引進、吸收和創新,極大地促進了中國洗衣機的生產能力和產業質量。經過三十年的發展,我國的洗衣機年產量已位于世界第一,將近為世界總年產量的四分之一。

1.2課程設計的意義

課程設計進一步鍛煉同學們在微機原理應用方面的實際工作能力。計算機科學在應用上得到飛速發展,因此,學習這方面的知識必須緊密聯系實際:掌握這方面的知識更要強調解決實際問題的能力。學會面對一個實際問題,如何去自己收集資料,如何自己去學習新的知識,如何自己去制定解決問題的方案并通過實踐不斷地去分析和解決前進道路上的問題。《微機原理與接口技術》課程是我們電氣工程及其自動化專業本科生必修的一門技術基礎課程。通過該課程的學習使學生對微機系統有一個全面的了解、掌握常規芯片的使用方法、掌握簡單微型計算機應用系統軟硬的設計方法。

洗衣機控制系統的設計

2.1 設計內容

系統設計并建立一個由微機控制的洗衣機控制系統,并完成: 1.給水和排水的自動控制。2.用戶定時時間的設定。3.電機的正反轉。

4.各種定時和故障報警電路。5.定時開、關機的控制。6.三分鐘延時啟動的保護。

7.設計相應的A/D、D/A、鍵盤、顯示接口和傳感器測量水位電路,可在線鍵盤參數設置、定時檢測、顯示、報警,其中控制輸出部分采用模擬量或開關量進行控制。

8,寫出相應工作原理,編寫程序及程序流程圖。

希望實現的功能:智能檢測

待洗衣物的智能檢測是智能洗衣機能夠實現智能的關鍵技術之一。智能檢測利用了模糊控制原理,根據各類傳感器提供的洗滌物狀態和洗衣機運行參數進行模糊推理。通過各類傳感器對布量、布質、溫度、濁度的檢測來確定洗滌過程中的洗滌水位,洗滌時間,漂洗次數,排水時間,脫水時間等等。三

總體設計方案

3.1 洗衣機系統原理與設計思想

圖 1洗衣機示意圖

洗衣機的系統(1).滌脫水系統

它主要有盛水桶,洗滌桶和波輪組成。盛水桶又稱為外桶,主要用來盛放洗滌液。盛水桶固定在鋼制底板上,通過4根吊桿懸掛在洗衣機箱體上。電動機,離合器,排水閥等部件都裝在桶底下面。洗滌桶又稱為脫水桶或者離心桶,也稱為內桶,它的主要功能是用來盛放衣物,在洗滌或漂洗時配合波輪完成洗滌或漂洗功能,在脫水時便成為離心式的脫水桶。波輪是全自動洗衣機中對衣物產生機械作用的主要部件。按波輪的形狀來分,基本上有小波輪(直徑在160mm左右)的渦卷式水流和大波輪(直徑在300mm左右)新水流兩類。

(2).進水系統

波輪式全自動洗衣機的進排水系統都采用了電磁閥控制。為了對桶內的水位進行檢測和控制,洗衣機上都安裝有水位控制器(水位開關)。波輪式全自動套桶洗衣機使用最多的水位開關是空氣壓力式開關,主要有氣壓傳感器裝置,控制裝置及電觸點開關3部分組成,用來監視水位的高低。此外電磁閥分進水和排水電磁閥,進水電磁閥是洗衣機上的自動進水開關,它受水位開關動斷觸點的控制。而排水電磁閥是全自動洗衣機上的自動排水裝置,同時還起改變離合器工作狀態。進水、排水電磁閥是采用電流流過線圈形成磁場的原理,洗衣機電磁閥在進,排水時使用,220V交流電壓與電磁閥線圈接通,形成磁場,電磁線圈吸合。自

動打開香蕉閥門,洗衣機里的水就順著管道流出去了。斷電后,電磁閥線圈失去電流,磁場消失,電磁鐵松開,橡膠閥門自動關閉,洗衣機里的水就流不出去了。

(3).動機及傳動系統

波輪式全自動套桶洗衣機的電動機及傳動系統主要由電動機和離合器組成,離合器又有普通離合器和減速離合器兩種。其中普通離合器用在采用小波輪的套桶洗衣機上,這種洗衣機在洗滌或者漂洗時波輪的轉速和脫水時離心桶的轉速相同,目前各種大波輪新水流套桶洗衣機普遍采用減速離合器,它在洗滌,漂洗時波輪的轉速較慢,而脫水時離心桶的轉速較快。電動機同時作為洗滌和脫水時的動力源,普遍采用主,副繞組完全對稱的電容式電動機。

洗衣機的基本工作原理

洗衣機的洗滌原理是由模擬人工洗滌衣物發展而來的,即通過翻滾、摩擦、水的沖刷等機械作用以及洗滌劑的表面活化作用,將附著在衣物上的污垢除掉,以達到洗凈衣物的目的。現今,大多數的全自動洗衣機都使用以單片機為核心的控制電路來控制電動機、數碼顯示管、進水閥、排水閥及蜂鳴器的電壓輸出,使洗衣機根據程序運轉。而在設計全自動洗衣機的控制系統時,要把握好洗滌、漂洗和脫水的時間:

(1).洗滌時間

有人認為,洗滌時間越長,衣物就洗得越干凈。其實不然,如果洗滌時間超過一定的限度,衣物不但不會隨洗滌時間的延長而提高洗凈度,反而會加速衣物的磨損,還會造成能源的浪費。實驗證明,洗衣機(波輪式洗衣機)的最佳洗滌時間為5~10分鐘,最長也不應超過15分鐘。

(2).漂洗時間

在漂洗剛開始的3分鐘時間內,殘留在衣物上的表面活性劑脫落最快。此后,活性劑脫落趨緩,漂洗10分鐘后活性劑幾乎不再脫落。一般采用貯水方式漂洗,每次3分鐘,漂洗2~3次就可以了。

(3).脫水時間

電動機高速地轉動洗滌桶,水份就會由于離心力而脫離衣物被甩出去。脫水時間一般為2~3分鐘,時間太短會造成脫水不夠徹底,太長又可能會損壞衣物。

總體設計思想

首先構思系統的總體結構,根據設計要求確定好系統大致的硬件組成及其結構,其次根據系統的各個功能把軟件分為幾個不同的模塊。依次實現各個模塊的功能,最后把各個模塊組合起來已完成整個系統的功能。3.2 洗衣過程流程圖

3.3 設計流程圖

弄清系統的需求根據系統的需求設計出相應的硬件電路在確定系統硬件結構的基礎上,把軟件劃分為各個模塊調試各個模塊,并組成一個完整的系統

硬件設計

4.1 硬件設計概要

用Intel的8086作為控制芯片,配合其他接口電路及配套的芯片組成洗衣機的控制電路。主要用到8255串行通行芯片,74LS137三線八線譯碼器發出片選信號,AD0809以及DA0832模數、數模轉換芯片。用一個電位計和AD0809模擬水量信號,DA0832和LM324運放最和來控制直流電機的正反轉和停止。此外還用到了4*4掃描鍵盤作為輸入設備,兩個共陰數碼管作為顯示設備。詳情見各個芯片的介紹。

4.2 所用到的芯片及其各自功能說明 4.2.1芯片列表

8086,8284,74LS138,8255,AD0809,DA0832,74LS02,LM324 4.2.2 8086的功能簡介

Intel 8086是一個由Intel于1978年所設計的16位微處理器芯片,是x86架構的鼻祖。不久,Intel 8088就推出了,擁有一個外部的8位數據總線,允許便宜的芯片用途。它是以8080和8085(它與8080有組合語言上的原始碼兼容性)的設計為基礎,擁有類似的寄存器組,但是數據總線擴充為16位。總線界面單元(Bus Interface Unit)透過6字節預存(prefecth)的隊列(queue)喂指令給執行單元(Execution Unit),所以取指令和執行是同步的,8086 CPU有20條地址線,可直接尋址1MB的存儲空間,每一個存儲單元可以存放一個字節(8位)二進制信息。為了便于對存儲器進行存取操作,每一個存儲單元都有一個惟一的地址與之對應,其地址范圍用十進制表示為0~1048575,用十六進制表示為00000H~FFFFFH。

Intel 8086擁有四個16位的通用寄存器,也能夠當作八個8位寄存器來存取,以及四個16位索引寄存器(包含了堆棧指標)。資料寄存器通常由指令隱含地使用,針對暫存值需要復雜的寄存器配置。它提供64K 8 位元的輸出輸入(或32K 16 位元),以及固定的向量中斷。大部分的指令只能夠存取一個內存位址,所以其中一個操作數必須是一個寄存器。運算結果會儲存在操作數中的一個。

Intel 8086有四個 內存區段(segment)寄存器,可以從索引寄存器來設定。區段寄存器可以讓 CPU 利用特殊的方式存取1 MB內存。8086 把段地址左移 4 位然后把它加上偏移地址。大部分的人都認為這是一個很不好的設計,因為這樣的結果是會讓各分段有重疊。盡管這樣對組合語言而言大部分被接受(也甚至有

用),可以完全地控制分段,使在編程中使用指針(如C 編程語言)變得困難。它導致指針的高效率表示變得困難,且有可能產生兩個指向同一個地方的指針擁有不同的地址。更壞的是,這種方式產生要讓內存擴充到大于 1 MB 的困難。而 8086 的尋址方式改變讓內存擴充較有效率。

在這個系統中,8086作為整個系統的主控芯片,用來控制協調整個系統的工作。

4.2.3

8284的功能簡介

向8086CPU提供外部的基準時鐘信號,并把時鐘信號進行功率放大。

4.2.3 74LS138的功能簡介

74LS138 為3 線-8 線譯碼器,共有 54/74S138和 54/74LS138 兩種線路結構型式,其工作原理如下:

當一個選通端(E3)為高電平,另兩個選通端(E1)和/(E2))為低電平時,可將地址端(A、B、C)的二進制編碼在一個對應的輸出端以低電譯出。

利用 E1、E2和E3可級聯擴展成 24 線譯碼器;若外接一個反相器還可級聯擴展成 32 線譯碼器。

若將選通端中的一個作為數據輸入端時,74LS138還可作數據分配器,在該系統中,74LS138用來產生各芯片的片選信號。

4.2.4 8255的功能簡介

8255特性

(1)一個并行輸入/輸出的LSI芯片,多功能的I/O器件,可作為CPU總線與外圍的接口.(2)具有24個可編程設置的I/O口,即使3組8位的I/O口為PA口,PB口和PC口.它們又可分為兩組12位的I/O口,A組包括A口及C口(高4位,PC4~PC7),B組包括B口及C口(低4位,PC0~PC3).A組可設置為基本的I/O口,閃控(STROBE)的I/O閃控式,雙向I/O3種模式;B組只能設置為基本I/O或閃控式I/O兩種模式,而這些操作模式完全由控制寄存器的控制字決定.8255引腳功能

RESET:復位輸入線,當該輸入端處于高電平時,所有內部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。

CS:芯片選擇信號線,當這個輸入引腳為低電平時,即/CS=0時,表示芯片被選中,允許8255與CPU進行通訊;/CS=1時,8255無法與CPU做數據傳輸.RD:讀信號線,當這個輸入引腳為低電平時,即/RD=0且/CS=0時,允許8255通過數據總線向CPU發送數據或狀態信息,即CPU從8255讀取信息或數據。

WR:寫入信號,當這個輸入引腳為低電平時,即/WR=0且/CS=0時,允許CPU將數據或控制字寫入8255。

D0~D7:三態雙向數據總線,8255與CPU數據傳送的通道,當CPU 執行

輸入輸出指令時,通過它實現8位數據的讀/寫操作,控制字和狀態信息也通過數據總線傳送。

PA0~PA7:端口A輸入輸出線,一個8位的數據輸出鎖存器/緩沖器,一個8位的數據輸入鎖存器。

PB0~PB7:端口B輸入輸出線,一個8位的I/O鎖存器,一個8位的輸入輸出緩沖器。

PC0~PC7:端口C輸入輸出線,一個8位的數據輸出鎖存器/緩沖器,一個8位的數據輸入緩沖器。端口C可以通過工作方式設定而分成2個4位的端口,每個4位的端口包含一個4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號輸出或狀態信號輸入端口。'

A0,A1:地址選擇線,用來選擇8255的PA口,PB口,PC口和控制寄存器.當A0=0,A1=0時,PA口被選擇;

當A0=0,A1=1時,PB口被選擇;

當A0=1,A1=0時,PC口被選擇;當A0=1.A1=1時,控制寄存器被選擇

4.2.5 AD0809的功能簡介

1、ADC0809 是8 位逐次逼近型A/D轉換器。它由一個8路模擬開關、一個地址鎖存譯碼器、一個A/D 轉換器和一個三態輸出鎖存器組成(見圖1)。多路開關可選通8個模擬通道,允許8 路模擬量分時輸入,共用A/D 轉換器進行轉換。三態輸出鎖器用于鎖存A/D 轉換完的數字量,當OE 端為高電平時,才可以從三態輸出鎖存器取走轉換完的數據。

2、AD0809 的工作原理

IN0-IN7:8 條模擬量輸入通道

ADC0809 對輸入模擬量要求:信號單極性,電壓范圍是0-5V,若信號太小,必須進行放大;輸入的模擬量在轉換過程中應該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。

地址輸入和控制線:4條

ALE 為地址鎖存允許輸入線,高電平有效。當ALE線為高電平時,地址鎖存與譯碼器將A,B,C 三條地址線的地址信號進行鎖存,經譯碼后被選中的通道的模擬量進轉換器進行轉換。A,B 和C 為地址輸入線,用于選通IN0-IN7 上的一路模擬量輸入。通道選擇表如下表所示。

C B A 選擇的通道

0 0 0 IN0

0 0 1 IN1

0 1 0 IN2

0 1 1 IN3 0 0 IN4 0 1 IN5 1 0 IN6 1 1 IN7

數字量輸出及控制線:11 條

ST 為轉換啟動信號。當ST 上跳沿時,所有內部寄存器清零;下跳沿時,開始進行A/D 轉換;在轉換期間,ST 應保持低電平。EOC 為轉換結束信號。當EOC 為高電平時,表明轉換結束;否則,表明正在進行A/D 轉換。OE為輸出允許信號,用于控制三條輸出鎖存器向單片機輸出轉換得到的數據。OE=1,輸出轉換得到的數據;OE=0,輸出數據線呈高阻狀態。D7-D0 為數字量輸出線。

CLK為時鐘輸入信號線。因ADC0809的內部沒有時鐘電路,所需時鐘信號必須由外界提供,通常使用頻率為500KHZ,VREF(+),VREF(-)為參考電壓輸入。

4.2.6 DA0832芯片的功能簡介

DAC0832是8分辨率的D/A轉換集成芯片。與微處理器完全兼容。這個DA芯片以其價格低廉、接口簡單、轉換控制容易等優點,在單片機應用系統中得到廣泛的應用。D/A轉換器由8位輸入鎖存器、8位DAC寄存器、8位D/A轉換電路及轉換控制電路構成。

DAC0832的主要特性參數如下:

分辨率為8位;

電流穩定時間1us;

可單緩沖、雙緩沖或直接數字輸入;

只需在滿量程下調整其線性度;

單一電源供電(+5V~+15V);

低功耗,200mW。DAC0832結構:

D0~D7:8位數據輸入線,TTL電平,有效時間應大于90ns(否則鎖存器的數據會出錯);

ILE:數據鎖存允許控制信號輸入線,高電平有效;

CS:片選信號輸入線(選通數據鎖存器),低電平有效;

WR1:數據鎖存器寫選通輸入線,負脈沖(脈寬應大于500ns)有效。由ILE、CS、WR1的邏輯組合產生LE1,當LE1為高電平時,數據鎖存器狀態隨輸入數據線變換,LE1的負跳變時將輸入數據鎖存;

XFER:數據傳輸控制信號輸入線,低電平有效,負脈沖(脈寬應大于500ns)有效;

WR2:DAC寄存器選通輸入線,負脈沖(脈寬應大于500ns)有效。由WR1、XFER的邏輯組合產生LE2,當LE2為高電平時,DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負跳變時將數據鎖存器的內容打入DAC寄存器并開始D/A轉換。

IOUT1:電流輸出端1,其值隨DAC寄存器的內容線性變化;

IOUT2:電流輸出端2,其值與IOUT1值之和為一常數;

Rfb:反饋信號輸入線,改變Rfb端外接電阻值可調整轉換滿量程精度;

Vcc:電源輸入端,Vcc的范圍為+5V~+15V;

VREF:基準電壓輸入線,VREF的范圍為-10V~+10V;

AGND:模擬信號地

DGND:數字信號地 DAC0832的工作方式:

根據對DAC0832的數據鎖存器和DAC寄存器的不同的控制方式,DAC0832有三種工作方式:直通方式、單緩沖方式和雙緩沖方式。

4.2.7 LM324芯片功能簡介

LM324系列器件為價格便宜的帶有真差動輸入的四運算放大器。與單電源應用場合的標準運算放大器相比,它們有一些顯著優點。該四放大器可以工作在低到3.0伏或者高到32伏的電源下,靜態電流為MC1741的靜態電流的五分之一。共模輸入范圍包括負電源,因而消除了在許多應用場合中采用外部偏置元件的必要性。每一組運算放大器可用圖1所示的符號來表示,它有5個引出腳,其中“+”、“-”為兩個信號輸入端,“V+”、“V-”為正、負電源端,“Vo”為輸出端。兩個信號輸入端中,Vi-(-)為反相輸入端,表示運放輸出端Vo的信號與該輸入端的位相反;Vi+(+)為同相輸入端,表示運放輸出端Vo的信號與該輸入端的相位相同。

LM324的引腳排列圖

LM324的特點: 1.短跑保護輸出 2.真差動輸入級

3.可單電源工作:3V-32V 4.低偏置電流:最大100nA 5.每封裝含四個運算放大器。6.具有內部補償的功能。7.共模范圍擴展到負電源 8.行業標準的引腳排列 9.輸入端具有靜電保護功能 4.3 硬件電路設計系統原理圖及其說明

微機總線擴展鍵盤DB譯碼電路并行接口功放電路電機驅動電路排水閘驅動電路進水閘驅動電路AB門開關定時器A/D時鐘電路水位傳感器啟動按鈕及電路IRQiDBIRQjIRQk

圖4.3-1系統總體框架。圖4.3-2系統硬件電路

軟件設計

5.1 流程圖及其說明

正傳washytpe秒并刷新數碼管開始判斷按下啟動鍵FalseTure停轉5秒秒并刷新數碼管設置洗衣方式其他反轉washtype秒秒并刷新數碼管FalseWashtype=151從鍵盤讀一個數據2Washtype=10停轉5秒秒并刷新數碼管修改顯示參數更新剩余時間設置洗衣時間設置定時洗衣時間判斷到達定時時間TureFalse判斷到達洗衣時間TureTure排水并顯示當前水量False進水打開并顯示當前水量False判斷水排干Ture判斷水滿甩干,電機加速正傳2分鐘漂洗若干次并甩干,流程同上故障 服務中斷程序有故障標志嗎?False結束,電機停轉,三分鐘開機保護14

說明:軟件可以分為10大塊,分別為主程序、鍵盤掃描子程序、參數設置子程序、延時子程序、顯示子程序、進水子程序、排水子程序、甩干子程序、停止及開機延時保護子程序組成。其中,進水、洗衣、排水為一次洗衣的三個不同狀態,由相應的子程序來控制電機的運動和進水排水。它們的關系如圖5.1-2.主程序參數設置進水洗衣排水甩干停止及開機保護鍵盤掃描延時顯示 圖5.1-2

5.2 源程序及其說明

CODE SEGMENT

ASSUME

CS:CODE

WASHTIME DW

20H

WASHTYPE DW

08H

ONTIME DW

00H

TIME DW

0

ADPORT EQU

0010H

ORG

1000H

IOCONPT EQU

0FF2BH

IOAPT EQU

0FF28H

IOBPT EQU

0FF29H

IOCPT EQU

0FF2AH

ORG

10E0H

DAPORT EQU

0020H

ORG

10A0H

MAIN PROC

;鍵盤參數設置

MOV

AL,01H

CALL

CONVERS

CALL

DISP

;顯示01,提示輸入洗衣時間

CALL

KEY

MOV

DL,10

MUL

DL

MOV

WASHTIME,AX

CALL

KEY

CBW

ADD

WASHTIME,AX

K1: MOV

AL,02

;顯示02;提示選擇洗衣方式

CALL

CONVERS

CALL

DISP

CALL

KEY

CMP

AL,2

JA

K1

CMP

AL,1

JB

K1

CMP

AL,1

JE

RUOXI

CMP

AL,2

JE

QIANGXI

RUOXI: MOV

WASHTYPE,08H

JMP

NEXT

QIANGXI: MOV

WASHTYPE,0FH

NEXT: MOV

AL,03

;顯示3,提示輸入定時時間

CALL

CONVERS

CALL

DISP

CALL

KEY

MOV

DL,10

MUL

DL

MOV

ONTIME,AX

CALL

KEY

CBW

ADD

ONTIME,AX

MOV

CX,ONTIME

LOOP

K2

K2: CALL

DELAY

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

ADD

AX,WASHTIME

ADD

AX,WASHTIME

ADD

AX,WASHTIME

MOV

TIME,AX

CALL

STEP1

;洗衣

MOV

CX,WASHTIME

LOOP

WASH

CALL

STEP3

CALL

SHUAIGAN

CALL

STEP1

;漂洗

MOV

CX,WASHTIME

LOOP

WASH

CALL

STEP3

CALL

SHUAIGAN

CALL

STEP1

;漂洗

MOV

CX,WASHTIME

LOOP

WASH

CALL

STEP3

CALL

SHUAIGAN

CALL

STOP

;洗衣完成,三分鐘啟動保護

JMP

MAIN

MAIN ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;WASH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

WASH PROC

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

DX,DAPORT

DACON1: MOV

AL,0FFH

OUT

DX,AL

MOV

CX,WASHTYPE

LOOP

W1

W1: CALL

DELAY

DACON2: MOV

AL,80H

OUT

DX,AL

MOV

CX,8H

LOOP

W2

W2: CALL

DELAY

DACON3:

MOV

AL,00H

OUT

DX,AL

MOV

CX,WASHTYPE

LOOP

W3

W3: CALL

DELAY

MOV

AL,80H

OUT

DX,AL

MOV

CX,8H

LOOP

W4

W4: CALL

DELAY

DEC

TIME

MOV

AX,TIME

CALL

CONVERS

CALL

DISP

POP

DX

POP

CX

POP

BX

POP

AX

RET

WASH ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;STEP1;;;;;;;;;;;;;;;;;;;;;;;;

STEP1 PROC

;判斷水位

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

ADCONTORL: CALL

FORMAT

ADCON: MOV

AX,00

MOV

DX,ADPORT

OUT

DX,AL

DELAYS: LOOP

DELAYS

MOV

DX,ADPORT

MOV

DX,ADPORT

IN

AL,DX

PUSH

AX

CALL

CONVERS

CALL

DISP

POP

AX

CMP

AL,0EEH

JAE

LA

CALL

JINSHU

LA: MOV

DX,IOCONPT;水滿,關水

MOV

AL,89H

OUT

DX,AL

MOV

DX,IOCPT

IN

AL,DX

AND

AL,0FEH

PUSH

AX

MOV

DX,IOCONPT

MOV

AL,80H

OUT

DX,AL

MOV

DX,IOCPT

POP

AX

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

RET

STEP1 ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;JINSHU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

JINSHU

PROC

;控制進水

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

DX,IOCONPT

MOV

AL,89H

OUT

DX,AL

MOV

DX,IOCPT

IN

AL,DX

OR

AL,01H

PUSH

AX

MOV

DX,IOCONPT

MOV

AL,80H

OUT

DX,AL

MOV

DX,IOCPT

POP

AX

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

JMP

ADCON

JINSHU

ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;XIANSHI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

CONVERS:

;字符轉換

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

AH,AL

AND

AL,0FH

DISP:

DISP0:

DISP1:

MOV

BX,077AH MOV

DS:[BX],AL INC

BX MOV

AL,AH AND

AL,0F0H MOV

CL,04H SHR

AL,CL MOV

DS:[BX],AL POP

DX POP

CX POP

BX POP

AX RET

;顯示 PUSH

AX PUSH

BX PUSH

CX PUSH

DX MOV

DX,077FH MOV

AH,20H MOV

CX,00FFH MOV

BX,DX MOV

BL,DS:[BX] MOV

BH,0H PUSH

DX MOV

DX,0FF22H MOV

AL,CS:[BX+1060H] OUT

DX,AL MOV

DX,0FF21H MOV

AL,AH OUT

DX,AL LOOP

DISP1 POP

DX

DEC

DX

SHR

AH,01H

JNZ

DISP0

MOV

DX,0FF22H

MOV

AL,0FFH

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

RET

DATA1:

0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0AH

DB

86H,8EH,0FFH,0CH,89H,0DEH,0C7H,8CH,0F3H,0BFH

FORMAT:

;顯示初始化

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

BX,0

MOV

WORD PTR DS:[BX+077AH],0000H

ADD

BX,2

MOV

WORD PTR DS:[BX+077AH],0009H

ADD

BX,2

MOV

WORD PTR DS:[BX+077AH],0008H

POP

DX

POP

CX

POP

BX

POP

AX

RET;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;STEP3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

STEP3 PROC

;判斷水是否排干?

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX ADCON1TORL: CALL

FORMAT

ADCON1: MOV

AX,00

MOV

DX,ADPORT

OUT

DX,AL

MOV

CX,0500H

DB

DELAYSS: LOOP

DELAYSS

MOV

DX,ADPORT

IN

AL,DX

PUSH

AX

CALL

CONVERS

CALL

DISP

POP

AX

CMP

AL,08H

JBE

LAA

CALL

PAISHU

LAA: MOV

DX,IOCONPT;排干,停止排水

MOV

AL,89H

OUT

DX,AL

MOV

DX,IOCPT

IN

AL,DX

AND

AL,0FDH

PUSH

AX

MOV

DX,IOCONPT

MOV

AL,80H

OUT

DX,AL

MOV

DX,IOCPT

POP

AX

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

RET

STEP3 ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;PAISHU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

PAISHU PROC

;控制進水

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

DX,IOCONPT

MOV

AL,89H

OUT

DX,AL

MOV

DX,IOCPT

IN

AL,DX

OR

AL,02H

PUSH

AX

MOV

DX,IOCONPT

MOV

AL,80H

OUT

DX,AL

MOV

DX,IOCPT

POP

AX

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

JMP

ADCON1

PAISHU ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;SHUAIGAN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

SHUAIGAN PROC

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

DX,DAPORT

MOV

AL,0FFH

OUT

DX,AL

MOV

CX,80H

LOOP

SHUA1

SHUA1: CALL

DELAY

MOV

AL,80H

OUT

DX,AL

POP

DX

POP

CX

POP

BX

POP

AX

RET

SHUAIGAN ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;DELAY;;;;;;;;;;;;;;;;;;;;;;;;;;

DELAY:

POP

DX

POP

CX

POP

BX

POP

AX

MOV

CX,0FFFFH

DELAY1: LOOP

DELAY1

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

RET;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;STOP;;;;;;;;;;;;;;;;;;;;;;;;

STOP PROC

PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

CX,0FFFFH

LOOP

DE

DE: CALL

DELAY

POP

DX

POP

CX

POP

BX

POP

AX

RET

STOP ENDP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;鍵盤掃描;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

KEY: PUSH

AX

PUSH

BX

PUSH

CX

PUSH

DX

MOV

AL,0FFH

MOV

DX,0FF22H

OUT

DX,AL

MOV

BL,00H

MOV

AH,0FEH

MOV

CX,08H

KEY1: MOV

AL,AH

MOV

DX,0FF21H

OUT

DX,AL

SHL

AL,01H

MOV

AH,AL

NOP

NOP

NOP

NOP

NOP

NOP

MOV

DX,0FF23H

IN

AL,DX

NOT

AL

NOP

NOP

AND

AL,0FH

JNZ

KEY2

INC

BL

LOOP

KEY1

JMP

KEY

KEY2: TEST

AL,01H

JE

KEY3

MOV

AL,00H

JMP

KEY6

KEY3: TEST

AL,02H

JE

KEY4

MOV

AL,08H

JMP

KEY6

KEY4: TEST

AL,04H

JE

KEY5

MOV

AL,10H

JMP

KEY6

KEY5: TEST

AL,08H

JE

KEY

MOV

AL,18H

KEY6: ADD

AL,BL

CMP

AL,10H

JNC

FKEY

MOV

BL,AL

MOV

BH,0H

MOV

AL,BYTE PTR DS:[BX+DATA2]

POP

DX

POP

CX

POP

BX

POP

AX

FKEY: RET

DATA2: DB

07H,04H,08H,05H,09H,06H,0AH,0BH

DB

01H,00H,02H,0FH,03H,0EH,0CH,0DH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

CODE ENDS

END

MAIN 收獲、體會

在這次微機的課程設計中進一步熟悉的匯編語言的編程方法,借助現代的網絡技術,解決問題,不讓問題遺留到下一天,極大地加快的進度,也讓我們對匯編有了更深一層的認識,并且還讓我們初步領略到計算機控制的魅力,可謂一舉多得。

課程設計是我們從書本到實踐非常關鍵的一步,當代大學生動手創新能力是社會所急需的,正因如此我們應該加強對自身動手實踐能力的鍛煉。當今社會計算機科學在應用上得到飛速發展,因此,學習知識必須緊密聯系實際:掌握這方面的知識更要強調解決實際問題的能力。要著重學會面對一個實際問題,如何去自己收集資料,如何自己去學習新的知識,如何自己去制定解決問題的方案并通過實踐不斷地去分析和解決前進道路上的一切問題,最終到達勝利的彼岸。

課程設計中我們不僅培養了我們的實踐能力,也培養了我們發現問題、分析問題、解決問題的能力。在學習設計過程中我查詢了相關資料,也學習到了很多東西。感謝老師的諄諄教導和學校給我們提供了這么一次機會。

參考文獻

微型計算機技術及應用,戴梅萼,清華大學出版社

第四篇:微機原理交通燈課程設計

湖南科技大學

瀟湘學院信息與電氣工程系

《課程設計報告》

題 目: 硬件描述語言課程設計 專 業: 通信工程 班 級: 二班 姓 名: 學 號:

指導教師: 歐青立

2015 年 12 月 28 日

信息與電氣工程學院 課程設計任務書

2015 —2016

學年第 一 學期

專業:

通信工程

班級: 二班

學號: 姓名:

課程設計名稱:

微機原理與接口技術

設計題目:

基于PC機與8255的交通燈電路系統設計

完成期限:自 2015年月 14 日至

2015 年月 日共 2 周 設計依據、要求及主要內容(可另加附頁): 設計依據:

交通燈在我們的日常生活中很常見,現代化城市交通中交通燈已成為城市不可或缺的一部分。基于微處理器的交通燈控制系統成為主要設計方法。采用微處理器結合外圍芯片,通過軟件編程方式即可實現對交通燈的控制。設計內容及要求:

采用80868088控制器和8位并行接口芯片8255設計實現交通燈控制系統,編寫相關軟件程序。基本要求:

(1)采用Protel軟件或其它軟件繪制電路原理圖;

(2)初始狀態為全紅燈,等待5秒,LED顯示倒計時,然后東、西方向亮紅燈,南、北方向亮綠燈,時間為10秒,LED顯示倒計時;轉為南、北方向綠燈閃3秒,然后轉為黃燈3秒,LED顯示倒計時;再轉為東、西方向亮綠燈,南、北方向亮紅燈,時間為10秒,LED顯示倒計時;然后再轉為東、西方向綠燈閃3秒再轉為黃燈3秒,再次轉為東、西方向紅燈,南、北方向綠燈,以后按此循環。

提高要求:如果發生突發情況,能通過按鍵使東西或南北方向長時間紅燈。

指導教師(簽字):

批準日期:

****年**月**日

目錄

前言....................................................4 第一章 緒論..............................................5

1.1 設計的目的及要求.....................................................5 1.2 設計期望實現的目標...................................................5 1.3 目標的可行性分析.....................................................6 1.4 使用的技術和方法.....................................................6 第二章 內容..............................................7 2.1 設計步驟.....................................................7 2.2 詳細設計....................................................7

第三章 硬件設計..................................................7

3.1 8255A工作原理..............................................7 3.2 8088工作原理...............................................9 2.3 設計原理圖與PCB...........................................10 第四章 軟件設計.................................................11 3.1 程序分析...................................................11 3.1 程序代碼...................................................15 第四章 心得體會.................................................16 參考文獻.........................................................17

前言

在21世紀這個科技當道的年代,只要你敢想一切皆有可能。微機原理與接口技術作為大學本科通信電子專業的一門必修科目,對我們理解科學,認識科學的意義是深遠的。本次課程設計皆在提高我們對微機原理以及相關軟硬件的認識,提升理論與實踐的結合能力,在本次課程設計中將基于AEDK8688ET微機教學實驗系統來實現8259A、8255A芯片的工程應用設計。

本課程設計報告共分四章,在第一章中主要闡述課程設計的 意義與目的,并說明期望的目標。在第二章和第三章中分別就設計的硬件和軟件做詳細闡述,其中包括關鍵芯片的功能介紹,軟硬件的設計思路與實現。第四章為課程設計的心得體會。

當然目前自己的知識與水平是非常有限的,設計報告中還存在很多的不足與錯誤,懇請老師與讀者批評指正。在車輛日漸增多的今天,人們也越來越關注交通問題,而交通燈在安全行車過程中無疑起著十分重要的作用。現在交通燈一般都設在十字路口,用紅、綠、黃三種顏色的指示燈和一個倒計時的顯示計時器來控制行車, 對一般情況下的安全行車、車輛分流發揮著作用, 但根據實際行車過程中出現的情況, 主要有如下幾個缺點:

1、車道輪流放行時間相對固定, 不能根據實際情況中兩個車道的車輛多少來設置改變通行時間;

2、沒有考慮緊急車輛通過時, 兩車道應采取的措施。譬如, 有消防車通過執行緊急任務時, 兩個車道的車都應停止, 讓緊急車輛通過。因此如何合理高效地利用交通燈指示交通情況,是一個亟需解決的問題。

交通燈是采用計算機通過編寫匯編語言程序控制的。紅燈停,綠燈行的交通規則。廣泛用于十字路口,車站, 碼頭等公共場所,成為人們出行生活中不可少的必需品,由于計算機技術的成熟與廣泛應用,使得交通燈的功能多樣化,遠遠超過老式交通燈, 交通燈的數字化給人們生產生活帶來了極大的方便,而且大大地擴展了交通燈的功能。諸如閃爍警示、鳴笛警示,時間程序自動控制、倒計時顯示,所有這些,都是以計算機為基礎的。還可以根據主、次干道的交通狀況的不同任意設置各自的不同的通行時間。或者給紅綠色盲聲音警示的人性化設計。現在的交通燈系統很多都增加了智能控制環節,比如對闖紅燈的車輛進行拍照。當某方向紅燈亮時,此時相應的傳感器開始工作,當有車輛通過時,照相機就把車輛拍下。

要將交通燈系統產品化,應該根據客戶不同的需求進行不同的設計,應該在程序中增加一些可以人為改變的參數,以便客戶根據不同的需要隨時調節交通燈。因此,研究交通燈及擴大其應用,有著非常現實的意義。緒論

本次專業課程設計作為前階段學習知識的一個檢驗,培養了我們的動手能力以及獨立思考設計的能力,也是大學培養的一個重要實踐步驟。設計初期,我們通過網絡,圖書館等資源查找到利用微機原理與接口技術設計制作交通燈的相關信息,對不同的方案進行細致的分析比較。并且按照題意與實際情況進行改進,使之符合要求。然后按照電路圖進行接線,最終做出一個簡單的交通燈。制作過程中發現的一些問題通過共同的分析研究得到的解決,此次課程設計鞏固了前期的理論知識,增強了動手實踐能力。

程序主要是由定時子程序、發光二極管顯示子程序和中斷服務程序組成。包括對8255、8088等可編程器件的編程。

一、課程設計目的以及要求

1、課程設計題目:交通燈

使用8255A和8088模擬十字路口交通燈的閃爍情況

2、基本要求:

1、設計實驗電路

2、分析實驗原理

3、列出實驗接線表

4、采用匯編語言編寫實驗程序

5、通過實驗驗證功能的實現

6、編寫課程設計說明書。

3、初始條件:

運用所學的微機原理和接口技術知識;

微機原理和接口技術實驗室的實驗箱設備。

4、設計目的

? 掌握8255A方式0的使用與編程方法 ? PC機及配套的接口電路實驗裝置 ? IC芯片:8255A應用

? 利用并行I/O識別開關(4個),使相應的發光二極管發光。? 熟練掌握Altium designer10.0(或protel99)軟件對電路原理圖 4.1)設計期望實現的目標

因為本實驗是模擬交通燈控制實驗,所以要先了解實際交通燈的規律。假設一個十字路口為東西南北走向,初始狀態0為東西紅燈,南北紅燈。然后轉狀態1南北綠燈通車,東西紅燈。過一段時間轉狀態2,南北綠燈閃幾次轉亮黃燈,延時幾秒,南北仍然紅燈。最后循環至狀態1 5 4.2)目標的可行性分析

通過微機原理與接口課程的學習,在理論上設計目標是可以實現的,結合學校實驗教學系統在設計合適的軟硬件模塊能夠實現此課程設計的目標。

雙色LED是由一個紅色LED管芯和一個綠色LED管芯封裝在一起,公用負端。當紅色正端加高電平,綠色正端加低電平時,紅燈亮;紅色正端加低電平,綠色正端加高電平時,綠燈亮;兩端都加高電平時,黃燈亮。4.43)使用的技術和方法

通過實驗教學系統上搭建硬件環境,通過外設計算機提供軟件編譯環境兩者結合起來,由匯編實現編程控制。

二、內容

● 采用8255A設計交通燈控制的接口方案

● 插接電路 ● 編寫控制程序

1.設計步驟

(1)方案設計

考慮普通十字路口,交通燈的控制可分東西向和南北向兩組,每組可用紅、黃、綠三個燈進行交通管理,所以本方案要點是對六個交通燈進行控制。

由于燈光控制只需要開、關兩個狀態,所以可以采用開關量實施控制。開關量的輸出可以采用8255A的端口,由于開關量有6位,所以采用8位端口,又因為燈光控制不需要聯絡信號,所以按照方式0輸出即可。(2)電路插接

本實驗利用裝置提供的8255A芯片和邏輯電平顯示器進行。(3)編程與運行

2.詳細設計:

(1)電路原理:本課題的設計可通過實驗平臺上的一些功能模塊電路組成,由于各模塊電路內部已經連接,用戶在使用時只要設計模塊間電路的連接,因此,硬件電路的設計及實現相對簡單。完整系統的硬件連接如圖所示。硬件電路由定時模塊、發光二極管模塊、數碼管顯示模塊和緊急中斷模塊組成。

定時中斷子程序是本設計的重點,負責完成數碼管輸出數據刷新和各個狀態的處理切換。中斷子程序包括數碼管輸出數據刷新程序和各狀態處理程序。數碼管輸出數據刷新子程序是實現倒計時25s,用LEDOUT表示輸出的數據,cnt用來軟件計時1s,就是計數10個100ms。LED輸出是要將輸出的數據轉化為段選碼。根據當前的狀態跳轉到相應的處理程序,在處理程序中完成定時和狀態的切換。狀態1和3的流程是一樣的,先點亮對應的交通燈,再判斷定時到了就可以切換了。狀態2和4要實現黃燈的閃爍,間隔點亮和熄滅就可以了。狀態1和3處理程序的流程圖NUM是狀態1對應的PC口輸出。

外部中斷服務子程序主要用來處理緊急情況,將2個方向的車都停止運行,點亮所有紅燈。下次中斷來時恢復以前的狀態。用一個標志位FLAG判斷是第一次進入還是恢復狀態。

(2)編寫匯編程序通過8255A控制四個方向交通燈的狀態,具體假設設計狀態如下:

1、首先初始狀態0為東西南北都關燈。

2、然后經過一段時間后轉為狀態1東西綠燈通車,南北紅燈。

3、過一段時間轉為狀態2,東西綠燈閃幾次轉亮黃燈,延時幾秒,南北路口的仍然亮紅燈。

4、再轉狀態3,南北綠燈通車,東西紅燈。

5、過一段時間轉狀態4,南北綠燈閃幾次轉亮黃燈,延時幾秒,東西仍然紅燈。

6、最后返回至狀態1繼續循環。

說明:(1)實際上黃燈的閃爍由兩個狀態組成,例如南北紅燈同時東西黃燈亮與南北紅燈同時東西黃燈滅這兩個狀態的組成。所以端口一共有七組狀態。東西方向:PA0紅燈;PA1黃燈;PA3綠燈; 南北方向:PA4紅燈;PA5黃燈;PA6綠燈;

三、硬件設計

3.1 8255A的工作原理1、8255A的內部結構:

1)數據總線緩沖器:這是一個雙向三態的8位數據緩沖器,它是8255A與微機系統數據總線的接口。輸入輸出的數據、CPU輸出的控制字以及CPU輸入的狀態信息都是通過這個緩沖器傳送的。2)三個端口A,B和C:A端口包含一個8位數據輸出鎖存器和緩沖器,一個8位數據輸入鎖存器。B端口包含一個8位數據輸入/輸出鎖存器和緩沖器,一個8位數據輸入緩沖器。C端口包含一個8位數據輸出鎖存器和緩沖器,一個8位數據輸入緩沖器(輸入沒有鎖存器)。3)A組和B組控制電路:這是兩組根據CPU輸出的控制字控制8255工作方式的電路,它們對于CPU而言,共用一個端口地址相同的控制字寄存器,接收CPU輸出的一字節方式控制字或對C口按位復位字命令。方式控制字的高5位決定A組的工作方式,低3位決定B組的工作方式。對C口按位復位命令字可對C口的每一位實現置位或復位。A組控制電路控制A口和C口上半部,B組控制電路控制B口和C口下半部。

4)讀寫控制邏輯:用來控制把CPU輸出的控制字或數據送至相應端口,也由它來控制把狀態信息或輸入數據通過相應的端口送到CPU。、8255A的 工作方式: 方式0---基本輸入輸出方式; 方式1---選通輸入輸出方式;

方式2---雙向選通輸入輸出方式。

3、腳信號

8255A的引腳如有:分為數據線、地址線、讀/寫控制線、輸入/輸出端口線和電源線。D7~D0(data bus):三態、雙向數據線,與CPU數據總線連接,用來傳送數據。

(chip select):片選信號線,低電平有效時,芯片被選中。A1, A0(port address):地址線,用來選擇內部端口。(read):讀出信號線,低電平有效時,允許數據讀出。(write):寫入信號線,低電平有效時,允許數據寫入。

RESET(reset):復位信號線,高電平有效時,將所有內部寄存器(包括控制寄存器)清0。

PA7~PA0(port A):A口輸入/輸出信號線。PB7~PB0(port B):B口輸入/輸出信號線。PC7~PC0(port C):C口輸入/輸出信號線。VCC:+5V電源。GND:電源地線。3.2 8088工作原理

1)、任何微處理器(包括8086/8088)的地址總線、數據總線及部分控制總線均采用三態緩沖器式總線電路。所謂三態,是指它們的輸出可以有邏輯“1”、邏輯“0”和“浮空”三種狀態。當處于浮空狀態時,總線電路呈現極高的輸出阻抗,如同與外界“隔絕”一樣。總線電路的這種三態性,既保證了在任何時候,只允許此刻進行信息交換的設備占用總線,其他設備與總線“完全” 脫離,不會影響正常的信息傳遞,又為其他快速信息傳遞方式(如DMA)提供了必要條件。只要申請DMA方式傳遞,外總線可以完全“脫離”CPU的控制,而與存儲器或I/O設備直接進行信息交換。總線的三態性是現在問世的所有微處理器的共性。學習和使用微處理器必須認識到這一特性。對8086來說,還應該認識其CPU引腳的特殊性:此元件是存儲器電路中的一部分,它有28個端口,其中A1-A12為輸入端是A【0..14】網絡中一部分,而D0-D7就是D【0..7】網絡中的一部分,另外9 28腳和14腳為電源和接地,在制作QEWE和CS1端口時,在每個字母后面都要加一個斜杠

這個圖中8255元件是輸入輸出電路中的主要元件之一,D0-D7就是D【0..7】網絡中的一部分,A0-A1是A[0..14]網絡的一部分,其中PA0-PA7,PB0-PB7,PC0-PC7全部是IO輸出

四、實驗原理圖

五、pcb圖

六、程序:

PA55 EQU 0210H;8255PA口地址 PC55 EQU 0212H;8255PC口地址 P55CTL EQU 0213H;8255控制口地址;-----------LED燈----------------------PB55 EQU 211H D1 EQU 10H D2 EQU 50H DATA SEGMENT PB DB ? DATA ENDS STACK SEGMENT STACK STA DW 50 DUP(?)TOP EQU LENGTH STA STACK ENDS;-----------開始-----------------

CODE SEGMENT ASSUME CS:CODE,DS:CODE START: PUSH CS POP DS MOV DX,P55CTL;設置8255口為輸出口 MOV AL,80H OUT DX,AL;---------LED----------------------MOV DX,204H MOV AL,00H

OUT DX,AL;清LED

MOV DX,PB55;全紅 MOV AL,0FH OUT DX,AL MOV BX,7fH CALL DLY 11 CALL DLY CALL DLY CALL DLY CALL DLY;CALL BEGIN;CALL WRITE2;調用數碼管過程

BG: MOV AL,96H;南北綠,東西紅 OUT DX,AL MOV BX,D2 CALL DJS;計數

MOV DX,P55CTL;設置8255口為輸出口 MOV AL,80H OUT DX,AL;---------LED----------------------MOV DX,204H MOV AL,00H

OUT DX,AL;清LED

MOV DX,PB55;全紅;JMP XH1 MOV CX,03H JNZ XH1 XH1: MOV AL,9FH;綠滅 OUT DX,AL MOV BX,D1 CALL DLY MOV AL,96H;綠亮 OUT DX,AL MOV BX,D1 CALL DLY LOOP XH1 MOV AL,06H;南北黃 OUT DX,AL MOV BX,D1 12 CALL DLY MOV BX,D1 CALL DLY MOV AL,69H;南北紅,東西綠 OUT DX,AL MOV BX,D2 CALL DJS MOV DX,P55CTL;設置8255口為輸出口 MOV AL,80H OUT DX,AL;---------LED----------------------MOV DX,204H MOV AL,00H

OUT DX,AL;清LED MOV DX,PB55;全紅 MOV CX,03 XH2: MOV AL,6FH OUT DX,AL MOV BX,D1 CALL DLY MOV AL,69H OUT DX,AL MOV BX,D1 CALL DLY LOOP XH2 MOV AL,09H OUT DX,AL MOV BX,D1 CALL DLY MOV BX,D1 CALL DLY JMP BG;倒計時----DJS PROC NEAR PUSH DX 13 PUSH CX PUSH AX PUSH BX BEGIN: MOV AL,0 MOV CH,0 WRITE2: MOV AH,AL LEA BX,LED XLAT MOV CL,8H;分八位寫一個LED;-----------164驅動--WRITE1: MOV DX,PA55 OUT DX,AL PUSH AX MOV DX,P55CTL;利用8255PC5口控制DCLK,使DCLK產生一低電平到高電平的跳變

MOV AL,0AH;PC5置“0” OUT DX,AL MOV AL,0BH;PC5置“1”

OUT DX,AL POP AX RCR AL,1 DEC CL CMP CL,0 JNZ WRITE1 CALL DLY MOV AL,AH INC AL INC CH CMP CH,0AH;循環10次 JBE WRITE2;調用數碼管過程 POP DX POP CX 14 POP BX POP AX RET DJS ENDP;JMP BEGIN;---------延時1S--------------------DLY PROC NEAR PUSH CX MOV BL, 24 M2: MOV CX,2810H LOOP $ DEC BL JNZ M2 POP CX RET DLY ENDP

;-----------數碼管編碼----------------------LED: DB 09H,01H,1FH,41H,49H,99H,0DH,25H,9FH,03H;9 8 7 6 5 4 3 2 1 0 CODE ENDS;------------

END START

七、心得體會

此次實習可以說是獲益匪淺。通過查閱了很多資料,了解了許多匯編程序的思想,擴展了自己的視野,不再僅僅局限于書本中幾條簡短的程序,而且更重要的是明白寫程序的態度:仔細謹慎,精益求精。在程序中添加了黃燈閃爍,更加醒目。另外加入能夠實現各路口綠燈顯示時間不同,適應在主干道和支線路口中使用。在系統加電調試中,針對一些問題,熟練掌握了根據原理分步測試,將錯誤之處縮小的最小范圍內。

實驗的完成需要扎實的基礎知識,這次實驗不僅是對課程內容掌握程度的一次考驗,而且是一次很好的訓練機會,訓練了我們查找資料的能力。通過此次課程設計的鍛煉,自己的動手能力有了很大的提高,查找問題、解決問題的能力也有了相應的進步。在本次的實驗過程中,遇到很多困難,毫無頭緒的時候,毅力和堅持的勇氣很重要,支撐我們走過實驗的每一步。在這次課程設計的過程中,我無論是在關于 X86 系列的相關知識或在接口芯片的初始化及應用方面還是在利用所學到知識全面設計系統方面收獲都很大。為以后從事軟件的設計開發打下了良好的基礎樹立獨立從事研發的信心,同時也培養了我認真的做事態度。通過設計交通燈數字控制系統將軟硬充分相結合,學會了很多有用的知識鍛煉了軟硬相互協調的能力。同時也增強了全面系統考慮問題的能力,以及硬件設計能力。可以說這次課程設計很成功,在自己學習獨立思考的情況下找到了分析問題解決問題的方法。這對以后的學習和工作具有重要的指導意義!雖然花了很長時間編寫軟件程序設計,但這一切還是理論上的。希望學校能提供機會和條件,讓我們能夠去真正地將理論和實踐相結合。通過這次程序,感覺自己所掌握的知識是那么的有限,還有許多需要改進和不足的地方,同時也幫助了我怎樣學好這門課程,增加了我對這門學科的興趣。通過這次實習報告的設計,使我更加清楚以后的發展及學習的方向。最后感謝老師這個學期的指導和幫助!參考文獻

[1]李國洪.可編程器件EDA技術與實踐[M].北京:機械工業出版社,2004:100-123.[2]翟殿堂,方敏,歷光偉.基于EDA的多功能計時器設計[J].信息技術,2008,17(11):39-45.[3]奚素霞.基于EDA技術的數字電路設計[J].重慶科技學院學報(自然科學),2009,11(4):124-151.[4]候伯亨,顧新.VHDL硬件描述語言與數字邏輯電路設計[M].西安:西安電子科技大學出版社,1999:5-7.[5]趙輝.基于EDA技術的數字系統設計[J].電子設計工程,2012,20(2):34-37.[6]周永亮,王軍民,薛良玉,胡文寶.基于CPLD的時間信號精確同步研究[J].石油天然氣學報,2011,33(4):105-108.[7]喬橋,張弛,鄒安陽.基于CPLD的扭簧分選儀交流伺服系統的設計[J].武漢紡織大學學報,2011,24(3):62-65.[8]王永祥.基于CPLD的兩相步進電機細分驅動器設計[J].宜春學院學報,2011,33(4):52-53.[9]劉凱,王紅航.電子搶答器的EDA設計與實現[J].電子元器件應用,2010,12(8):54-57.[10]侯寶生.基于VHDL的數字倍頻器設計[J].科學技術與工程,2009,9(3):705-708..17

第五篇:微機原理課程設計-8255控制交通燈

微機原理課程設計:8255模擬交通燈

1、目的:學習8255使用方法,學習模擬交通燈控制的方法,學習雙色燈的使用。

2、要求:控制4個雙色LED燈(可發紅,綠,黃光),模擬十字路口交通燈管理。

3、電路及連線

PC0-PC3連DG1-DG4,PC4-PC7連DR1-DR4。8255片選CS8255連138譯碼處210H。

4、說明(1)因為本實驗是模擬交通燈控制實驗,所以要先了解實際交通燈的變化規律。假設一個十字路口為東西南北走向。初始狀態0為東西紅燈,南北紅燈。然后轉狀態1南北綠燈通車,東西紅燈。過一段時間轉狀態2,南北綠燈閃幾次轉亮黃燈,延時幾秒,東西仍然紅燈。再轉狀態3,東西綠燈通車,南北紅燈。過一段時間轉狀態4,東西綠燈閃幾次轉亮黃燈,延時幾秒,南北仍然紅燈。最后循環至狀態1。

(2)雙色LED是由一個紅色LED管芯和一個綠色LED管芯封裝在一起,公用負端。當紅色正端加高電平,綠色正端加低電平時,紅燈亮;紅色正端加低電平,綠色正端加高電平時,綠燈亮;兩端都加高電平時,黃燈亮。(3)74LS240為8輸入輸出的反向驅動器。

5、完成的任務

(1)利用計算機和微機原理試驗箱,將實驗6的程序Tlamp_88.asm在試驗箱運行和調試。全速運行,觀察整體效果。單步運行,觀察程序每條語句額執行效果,理解語句含義。(2)修改實驗連線為,PC7-PC4連DG1-DG4,PC3-PC0連DR1-DR4。8255片選CS8255連138譯碼處210H孔。將Tlamp_88.asm另存為jiaotong.asm。修改jiaotong.asm,實現交通燈原有功能。

(3)修改實驗連線為,PB7-PB4連DG1-DG4,PB3-PB0連DR1-DR4。8255片選CS8255連138譯碼處210H孔。將jiaotong.asm另存為jiaotong2.asm。修改jiaotong2.asm,實現交通燈原有功能。

(4)將jiaotong2.asm另存為jiaotong3.asm。修改jiaotong3.asm,實現交通燈各個燈亮和滅的時間是原有時間的3倍。

6、實驗程序框圖

7、源程序: Tlamp_88.asm

;FOR

EAT 598 PC55

EQU 212H

211 P55CTL EQU 213H D1

EQU 10H

D2

EQU 50H

DATA

SEGMENT PB

DB ? DATA

ENDS STACK

SEGMENT STACK STA

DW 50 DUP(?)TOP

EQU LENGTH STA STACK

ENDS CODE

SEGMENT ASSUME CS:CODE,DS:DATA START:

PUSH

CS

POP

DS

MOV

DX,P55CTL

;設置為全輸出

MOV

AL,80H

OUT

DX,AL

MOV

DX,204H

MOV

AL,00H

OUT

DX,AL

;清LED

MOV

DX,PC55

;全紅

MOV

AL,0FH

OUT

DX,AL

MOV

BX,7fH

CALL

DLY BG:

MOV

AL,96H

;南北綠,東西紅

OUT

DX,AL

MOV

BX,D2

CALL

DLY

MOV

CX,03H XH1:

MOV

AL,9FH

;南北綠滅

OUT

DX,AL

MOV

BX,D1

CALL

DLY

MOV

AL,96H

;南北綠亮

OUT

DX,AL

MOV

BX,D1

CALL

DLY

LOOP

XH1

MOV

AL,06H

;南北黃

OUT

DX,AL

MOV

BX,D1

CALL

DLY

MOV

BX,D1

CALL

DLY

MOV

AL,69H;南北紅,東西綠

OUT

DX,AL

MOV

BX,D2

CALL

DLY

MOV

CX,03

XH2:

MOV

AL,6FH;東西綠滅

OUT

DX,AL

MOV

BX,D1

CALL

DLY

MOV

AL,69H

;東西綠亮

OUT

DX,AL

MOV

BX,D1

CALL

DLY

LOOP

XH2

MOV

AL,09H

;東西黃

OUT

DX,AL

MOV

BX,D1

CALL

DLY

MOV

BX,D1

CALL

DLY

JMP

BG

DLY

PROC

NEAR

PUSH

CX

DDD:

MOV

CX,0FFFH CCC:

LOOP

CCC

DEC

BX

CMP

BX,0

JNE

DDD

POP

CX

RET

DLY

ENDP

CODE

ENDS END

START

下載微機原理課程設計——交通燈控制系統(共五則)word格式文檔
下載微機原理課程設計——交通燈控制系統(共五則).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    微機原理課程設計

    匯編程序設計題 題目一 密碼設置模擬 該程序可以進行密碼的設置(第一次)和修改(已設置密碼)。要求輸入的密碼不顯示。 題目二 計算器 編輯程序可以實現鍵盤輸入數據與運算符......

    微機原理課程設計

    《微機原理》課程設計報告 時間 學 院 專業班級 姓 名 學 號 合 作 者 指導教師 成 績 2013 年 11 月摘要 本文針對可燃氣體檢測模塊MQ—K1,綜合運用《微機原理》所學知識......

    微機原理課程設計

    接口技術課程設計 一、 設計內容 設計一個投票統計器,完成投票、計票統計和票數顯示等功能。 二、設計原理及方案 在8086最小工作模式下,連接一塊8255A芯片。在 8255A的C端口......

    微機原理課程設計

    電子信息科學與技術《微機原理》課程設計 一、本次課程設計的目的和意義 學習和掌握計算機中常用接口電路的應用和設計技術,充分認識理論知識對應用技術的指導性作用,進一步加......

    微機原理課程設計

    合肥工業大學 計算機與信息學院 課程設計 課程:微機原理與接口技術設計 專業班級:計算機科學與技術班 學號:2 姓名: 一、設計題目及要求: 利用 8259A中斷,實現對8253多種計數......

    微機原理課程設計

    一、設計題目 單片機綜合試驗儀——計數/中斷模塊 二、功能及性能指標 顯示計數,記到15就重新開始計數 三、設計目的 1 了解單片機綜合實驗儀基本構成和分模塊設計方法。掌......

    微機原理課程設計總結

    微機原理課程設計總結 以前從沒有學過關于匯編語言的知識,起初學起來感覺很有難度。當知道要做課程設計的時候心里面感覺有些害怕和擔心, 擔心自己不會或者做不好。但是當真的......

    微機原理課程設計總結

    微機原理課程設計總結以前從沒有學過關于匯編語言的知識,起初學起來感覺很有難度。當知道要做課程設計的時候心里面感覺有些害怕和擔心, 擔心自己不會或者做不好。但是當真的......

主站蜘蛛池模板: 国产精品久久久久9999| 嫩草伊人久久精品少妇av| 蜜臀av久久国产午夜福利软件| 国产av剧情md精品磨豆| 一女被多男玩喷潮视频| 激情综合色综合啪啪五月丁香搜索| 精品国产一区二区av麻豆不卡| 久久精品人人槡人妻人人玩| 人妻插b视频一区二区三区| 日韩欧美中文字幕公布| 精品国产男人的天堂久久| 999国内精品永久免费视频| 国产成人免费一区二区三区| 色丁狠狠桃花久久综合网| 免费无码国产v片在线观看| 男女裸交无遮挡啪啪激情试看| 精品精品国产欧美在线| 激情爆乳一区二区三区| 亚欧乱色熟女一区二区| 992tv精品视频tv在线观看| 亚洲另类激情综合偷自拍图片| 人妻久久久一区二区三区| 亚洲人成欧美中文字幕| 人妻教师痴汉电车波多野结衣| 成人国内精品久久久久一区| 人妻少妇精品视频二区| 中文字幕无码日韩欧免费软件| 亚洲精品国产一区二区精华| 蜜芽久久人人超碰爱香蕉| 亚洲aⅴ天堂av天堂无码| 亚洲香蕉视频天天爽| 久久精品一本到99热免费| 国产区在线观看成人精品| 国产精品亚洲欧美大片在线观看| 老师黑色丝袜被躁翻了av| 无码一区二区波多野结衣播放搜索| 无码国产精品一区二区免费久久| 无码人妻精品中文字幕免费东京热| 婷婷五月六月激情综合色中文字幕| 最新中文字幕av无码专区不| 成人午夜看黄在线尤物成人|