微機實習報計科091班 2組
告2023年6月10日
表基於tdn-md88的交通燈
1、設計目的
利用tdn微機原理試驗箱及單元電路,實現對一道路交通燈的控制。
二.小組成員及主要分工
三、技術要求
1、設計完成交通燈的電路
2、採用tdn試驗箱上的8255、8259、8088完成
3、程式設計中採用軟體控制數碼管顯示(難點)
四、試驗器材
tdn-md86/88實驗箱一台,8255一片,8259一片,8088一片,數碼管一組,發光二極體一組。
五、設計和除錯環境
tdn-md88教學試驗系統
六、題目分析、工作原理、設計思想
題目分析:
我們所做的交通燈是控制單路口處車輛和行人的通過及停止的簡易交通燈。因此需要兩個燈和一塊用於顯示倒計時的數碼塊來控制車輛和行人的通行、停留問題。其中兩個燈分為紅綠黃色,主要根據3隻燈的亮滅情況來控制車輛,當紅燈滅綠燈亮的時候車輛可以通過,而紅燈亮綠燈滅時車輛就要停止通行。
數碼塊用於顯示倒計時的時間以控制人,當倒計時開始時人通行,倒計時結束後行人就要等待。
設計思想:
在意開始啟動交通燈時設定為紅燈亮,讓車輛先通行,行人等待,數碼快開始倒計時,此時為車通行時間。然後當數碼塊倒計時到0時車通行的時間結束,轉而黃燈開始閃爍,經過4秒後,跳轉到綠燈,此時,行人路暢通,車停止,通過,不斷地迴圈正常的進行。
特殊情況:
通行道遇到緊急狀況時,封封鎖通道進行處理,此時,紅燈全亮,延長一段時間後,處理結束,進入正常的狀態,車輛人都可以暢通。
工作原理:
通過向8259寫入程式來控制其他器件的工作。在程式一開始寫入中斷向量和各晶元的控制方式字,以確保發生中斷是正確的響應中斷及晶元正確的工作狀態。接下來的程式就是控制8255,8255選擇工作方式1,a、b、c、口都做基本的輸入輸出。
通過8255a口先讓紅燈亮。。中斷允許後就開始執行中斷程式,此時通過8255的a口先讓紅燈全亮,8255的b口控制數碼塊顯示倒計時資料,8255的c口控制在那一塊數碼塊上顯示。中斷結束後跳轉到上面控制8255的程式處又繼續依次執行。
七、電路圖
整套電路系統由控制系統模組、交通燈輸出控制顯示模組、倒計時時顯示模組組成。交通燈輸出顯示採用高亮度紅綠雙色發光二極體,倒計時採用高亮紅色7段led發光數碼管顯示,採用共陰數碼管。系統電路圖如下所示:
八、程式
主要分為四大模組:
第一,led 的閃爍,第二,數碼管的倒計時,第三,中斷的響應,第四,整體的試驗成功.
完整的主程式:
七段碼的賦值
0209:0000 6fh0209:0005 66h
0209:0001 7fh0209:0006 4fh
0209:0002 07h0209:0007 5bh
0209:0003 7dh0209:0008 06h
0209:0004 6dh0209:0009 3fh
中斷向量的初始化
irq7:
mov w[003c],2500
mov w[003e],0000
mov al,80
out 63,al8255的初始化工作在方式 0
in al,21h
and al,7fh
out 21h,al7號引腳開中斷
紅燈顯示
red:
mov al,1f
out 62,al,
mov ax,0000h
mov ds,ax
mov si,2000h
a2:mov al,[si]
out 61h,al設定顯示字元9-0
inc si
cmp si,200ch
jz yellow
call dally呼叫延時程式
jmp a2
綠燈顯示
green:
mov al,0f8
out 62,al
mov ax,0000h
mov ds,ax
mov si,2000h
a2,:
mov al,[si]
out 61h,al設定顯示字元9-0
inc si
cmp si,200ch
jz red
call dally呼叫延時程式
jmp a2
黃燈顯示
yellow:
mov al,0e7
out 62,al
mov ax,0000h
mov ds,ax
mov si,2006h
a2mov al,[si]
out 61h,al設定顯示字元9-0
inc si
cmp si,200ch
jz green
call dally呼叫延時程式
jmp a2,,
call daly2呼叫計數函式
jmp red
延時程式程式 1
dally1: push cx
push ax
mov cx,00ffh
a3: mov ax,056ch
a4: dec ax
jnz a4
loop a3
pop ax
pop cx
ret延時程式程式 2
dally2: push cx
push ax
mov cx,00a0h
a3: mov ax,056ch
a4: dec ax
jnz a4
loop a3
pop ax
pop cx
ret緊急中斷應用延時程式
dally3:
mov al,00
out 61h,al
push cx
push ax
mov cx,00ffh
a3: mov ax,00ffh
a4: dec ax
jnz a4
loop a3
pop ax
pop cx
ret緊急中斷,全部顯示
irq7: mov al,0fh
out 62h,al設定紅燈全亮
call dally3 //呼叫延時程式
jmp green
mov al,20
out,20,al
cltiret
微機原理專案報告
微機原理專案七 姓名 李守燁 班級 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系統...
微機實習報告
微機控制系統實習報告 微機實習是我們專業的一門必修的專業實習課,也是大學期間最後的一門實習課,實習的目的是使我們進一步加深對 微機原理與接 術 微控制器原理與應用 等課程相關理論知識的理解,並基本掌握將這些理論知識應用於自動控制系統設計的基本方法與技能,掌握收集 分析 應用資料的基本方法,通過技術方...
微機原理實驗報告
一 實驗綜述 實驗目的 1 熟悉debug環境,在debug中輸入程式。2 掌握基本指令的用法。3 分析程式執行結果。4 會按要求編寫基本程式,完成基本功能。二 實驗過程 實驗步驟 資料記錄 實驗3.57 若ax 1001h,dx 20ffh,當執行add ax,dx指令以後,請列出和數及標誌暫存器...