|
|
這是51單片機(jī)的交通燈模擬
掌握單片機(jī)內(nèi)部通用資源如中斷、定時(shí)計(jì)數(shù)器、串行口及并行端口的應(yīng)用。
- 試驗(yàn)內(nèi)容
編寫(xiě)模擬交通燈運(yùn)行控制程序。要求紅綠燈亮燈延時(shí)時(shí)間為30秒,黃燈亮燈延時(shí)時(shí)間為10秒。利用二位八段LED顯示器進(jìn)行時(shí)間顯示。時(shí)間顯示采用倒計(jì)時(shí)的方式。時(shí)間歸零時(shí)信號(hào)進(jìn)行切換。
- 實(shí)驗(yàn)要求
時(shí)間的延時(shí)必須采用定時(shí)器定時(shí)中斷方式進(jìn)行,定時(shí)器0或定時(shí)器1可任選一個(gè)(默認(rèn)為0)。編程時(shí)請(qǐng)充分考慮定期器的時(shí)間擴(kuò)展問(wèn)題。
利用二位八段LED顯示器進(jìn)行時(shí)間顯示,顯示碼采用串行口模式0進(jìn)行輸出。
掌握中斷系統(tǒng)的基本概念及使用方法。如:中斷被響應(yīng)所需的必要條件;一個(gè)完整的中斷響應(yīng)過(guò)程;中斷優(yōu)先級(jí)的概念
信號(hào)燈的控制由并行口P0口輸出進(jìn)行快關(guān)控制。
0.png (185.69 KB, 下載次數(shù): 12)
下載附件
2019-6-1 03:25 上傳
單片機(jī)源程序如下:
- S_OK BIT 20H.0
- ORG 0000H
- AJMP MAIN
- ORG 000BH
- AJMP SECOND
- ORG 0030H
- MAIN:
- MOV SP, #60H
- CLR EA
- MOV SCON, #00H
- MOV TMOD, #01H
- MOV TL0, #0B0H
- MOV TH0, #3CH
- SETB ET0
- SETB PT0
- SETB EA
- SETB TR0
- MOV R7, #10
- HONGDENG:
- MOV P0,#21H
- MOV R0, #30
- LOOP1: MOV A, R0
- LCALL XIANSHI
- JNB S_OK, $
- CLR S_OK
- DEC R0
- DJNZ R0, LOOP1
- HUANGDENG:
- MOV P0,#12H
- MOV R0, #10
- LOOP2: MOV A, R0
- LCALL XIANSHI
- JNB S_OK, $
- CLR S_OK
- DEC R0
- DJNZ R0, LOOP2
- LVDENG:
- MOV P0,#0CH
- MOV R0, #30
- LOOP3: MOV A, R0
- LCALL XIANSHI
- JNB S_OK, $
- CLR S_OK
- DEC R0
- DJNZ R0, LOOP3
- LJMP MAIN
- XIANSHI:
- MOV 22H, R0
- MOV B, #10
- DIV AB
- MOV DPTR, #TAB
- MOVC A, @A+DPTR
- MOV 4BH, A
- MOV A, B
- MOVC A, @A+DPTR
- MOV 4AH, A
- MOV 4CH, #0FFH; 前四個(gè)顯示管滅
- MOV 4DH, #0FFH
- MOV 4EH, #0FFH
- MOV 4FH, #0FFH
- MOV R1, #4AH
- MOV R0, #06H
- FASONG:
- MOV A, @R1
- CLR TI
- MOV SBUF, A
- JNB TI, $
- INC R1
- DJNZ R0, FASONG
- MOV R0, 22H
- RET
- SECOND:
- CLR EA
- CLR S_OK
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
交通燈.rar
(82.64 KB, 下載次數(shù): 27)
2019-6-1 00:03 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|