久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
51單片機匯編語言交通燈的仿真制作
[打印本頁]
作者:
GUAIWOLOU
時間:
2021-4-19 11:39
標(biāo)題:
51單片機匯編語言交通燈的仿真制作
51hei.png
(26.01 KB, 下載次數(shù): 88)
下載附件
2021-4-19 15:13 上傳
單片機源程序如下:
ORG 0000H
A_BIT EQU 20H ;用于存放南北十位數(shù)
B_BIT EQU 21H ;用于存放南北十位數(shù)
C_BIT EQU 22H ;用于存放東西十位數(shù)
D_BIT EQU 23H ; 用于存放東西位數(shù)
TEMP1 EQU 24H ;用于存放第一二南北狀態(tài)要顯示的時間
TEMP2 EQU 25H ;用于存放第一二東西狀態(tài)要顯示的時間
TEMP3 EQU 26H ;用于存放第三第四南北狀態(tài)要顯示的時間
TEMP4 EQU 27H;用于存放第三第四南北狀態(tài)要顯示的時間
LJMP MAIN
ORG 0003H ;外部中斷0入口
LJMP INTA ;跳轉(zhuǎn)到外部0中斷
ORG 0013H ;外部中斷1入口
LJMP INTB ;跳轉(zhuǎn)到外部1中斷
INTA: MOV A,P1 ;外部0中斷
PUSH ACC
MOV A,P2 ;中斷保護
PUSH ACC
MOV P1,#0FFH ;清除先前狀態(tài)
MOV P2,#0FFH
CLR P1.0
CLR P1.4 ;南北通行,東西禁止通行
CLR P1.6
CLR P2.3
JNB P3.2 ,$ ;判斷是否還在中斷狀態(tài)
POP ACC
MOV P2,A ;返回中斷前狀態(tài)
POP ACC
MOV P1,ACC
RETI ;中斷返回
INTB:MOV A,P1 ;外部1中斷
PUSH ACC ;中斷保護
MOV A,P2
PUSH ACC
MOV P1,#0FFH ;清除先前狀態(tài)
MOV P2,#0FFH
CLR P1.2
CLR P2.1
CLR P1.3 ;東西通行,南北禁止通行
CLR P1.5
JNB P3.3 ,$ ;判斷是否還在中斷狀態(tài)
POP ACC
MOV P2,A ;返回中斷前狀態(tài)
POP ACC
MOV P1,A
RETI ;中斷返回
MAIN:
ORG 0100H ;初始情況
MOV P1,#0FFH
MOV P2,#0FFH ;滅所有燈
MOV TMOD,#55H ;計數(shù)方式方式1
MOV IE,#85H ;開中斷
MOV TEMP1,#20 ;
MOV TEMP2,#25
MOV TEMP3,#25
MOV TEMP4,#20
STAR:
MOV P1,#0FFH
MOV P2,#0FFH ;滅所有燈
MOV A,24H ;將顯示時間送A
CJNE A,#20,T40T ;判斷時間,選初始值
T20T: ;南北通行要顯示的時間為20的計數(shù)器初始值
CLR TF0 ;清TF0
CLR TF1 ;清TF1
MOV TH1 ,#0FFH ;送20秒時的初始值
MOV TL1 ,#0FCH ;在些設(shè)計20秒6輛為多車
MOV TH0 ,#0FFH
MOV TL0 ,#0FCH
LJMP TEMP20 ;跳到20秒
T40T: ;南北通行要顯示的時間為40的計數(shù)器初始值
CLR TF0 ;清TF0
CLR TF1 ;清TF1
MOV TH1,#0FFH ;送40秒時的初始值
MOV TL1 ,#0F8H ;在些設(shè)計40秒8輛為多車
MOV TH0 ,#0FFH
MOV TL0 ,#0F8H
LJMP TEMP40 ;跳到40秒
TEMP20: ;TEMP1=20情況
SETB TR0 ;開始計數(shù)
SETB TR1
CLR P1.2
CLR P2.1 ;南北通行,東西禁止通行
CLR P1.3
CLR P1.5
MOV TEMP1,#20 ;南北要顯示的時間,
MOV TEMP2,#25 ;東西要顯示的時間
STLOP:
ACALL DISPLAY1 ;調(diào)用顯示
DEC TEMP1 ;時間夠一秒顯示時間減1
DEC TEMP2
MOV A,TEMP1
CJNE A,#0,NEXT ;若顯示時間不為0保持現(xiàn)在狀態(tài)
LJMP STAR2 ;若顯示時間為 0跳到第二狀態(tài)
NEXT: LJMP STLOP
STAR2: ;狀態(tài)1
SETB P1.2
CLR P1.1 ;南北黃燈,東西禁止通行
SETB P1.3
CLR P1.4
MOV TEMP1,#05 ;南北要顯示的時間,
MOV TEMP2,#05 ;東西要顯示的時間,
STLOP2:
ACALL DISPLAY1 ;調(diào)用顯示
DEC TEMP1 ;時間夠一秒顯示時間減1
DEC TEMP2
MOV A,TEMP1
CJNE A,#0,NEXT2 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
JB TF1 ,T40 ;判斷南北是否多車
JB TF0 ,T40 ;判斷北南是否多車
MOV TEMP1,#20 ;少車下次顯示時間為20秒
LJMP STAR3 ;跳到狀態(tài)3
T40:
MOV TEMP1,#40 ; 多車下次顯示時間為40秒
LJMP STAR3 ;若顯示時間為 0跳到第三狀態(tài)
NEXT2:LJMP STLOP2
TEMP40:;TEM=40 程序
SETB TR0 ; 開始計數(shù)
SETB TR1
CLR P1.2
CLR P2.1 ;南北通行,東西禁止通行
CLR P1.3
CLR P1.5
MOV TEMP1,#40 ;南北要顯示的時間,
MOV TEMP2,#45 ;東西要顯示的時間
STLOP11:
ACALL DISPLAY1 ;調(diào)用顯示
DEC TEMP1 ;時間夠一秒顯示時間減1
DEC TEMP2
MOV A,TEMP1
CJNE A,#0,NEXT11 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
LJMP STAR22 ;若顯示時間為 0跳到第二狀態(tài)
NEXT11: LJMP STLOP11
STAR22: ;狀態(tài)1
SETB P1.2
CLR P1.1 ;南北黃燈,東西禁止通行
SETB P1.3
CLR P1.4
MOV TEMP1,#05 ;南北要顯示的時間,
MOV TEMP2,#05 ;東西要顯示的時間,
STLOP22:
ACALL DISPLAY1 ;調(diào)用顯示
DEC TEMP1 ;時間夠一秒顯示時間減1
DEC TEMP2
MOV A,TEMP1
CJNE A,#0,NEXT22 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
JB TF1 ,T401 ; 判斷是否多車
JB TF0 ,T401
MOV TEMP1,#20 ;少車下次顯示時間為20秒
LJMP STAR3
T401:MOV TEMP1,#40 ;多車下次顯示時間為40秒
LJMP STAR3 ;若顯示時間為 0跳到第三狀態(tài)
NEXT22:LJMP STLOP22
STAR3:
MOV A,26H
CJNE A,#25,T40T1 ;判斷時間,選初始值
T20T1: ;南北通行要顯示的時間為20的計數(shù)器初始值
CLR TF0 ; 清溢出位
CLR TF1
MOV TH1 ,#0FFH ; 給初值
MOV TL1 ,#0FCH
MOV TH0 ,#0FFH
MOV TL0 ,#0FCH
LJMP TEMP320
T40T1: ;南北通行要顯示的時間為40的計數(shù)器初始值
CLR TF0 ;
CLR TF1
MOV TH1,#0FFH ;給初值
MOV TL1 ,#0F8H
MOV TH0 ,#0FFH
MOV TL0 ,#0F8H
LJMP TEMP340
TEMP320:;狀態(tài)三
SETB TR1 ;南北停止計數(shù)
SETB TR0 ;東西開始計數(shù)
SETB P1.1 ;東西通行,南北禁止通行
CLR P1.0
SETB P1.1
CLR P1.0
SETB P1.5
CLR P1.6
SETB P2.1
CLR P2.3
MOV TEMP3,#25 ;南北要顯示的時間,
MOV TEMP4,#20 ;東西要顯示的時間,
STLOP33:
ACALL DISPLAY ;調(diào)用顯示
DEC TEMP3 ;時間夠一秒顯示時間減1
DEC TEMP4
MOV A,TEMP4
CJNE A,#0,NEXT33 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
LJMP STAR34 ;若顯示時間為 0跳到第四狀態(tài)
NEXT33:LJMP STLOP33
STAR34: ;狀態(tài)四
SETB P2.3
CLR P2.2
SETB P1.6 ;東西黃燈,南北禁止通行
CLR P1.5
MOV TEMP3,#05 ;南北要顯示的時間,
MOV TEMP4,#05 ;東西要顯示的時間,
STLOP34:
ACALL DISPLAY ;調(diào)用顯示
DEC TEMP3 ;時間夠一秒顯示時間減1
DEC TEMP4
MOV A,TEMP4
CJNE A,#0,NEXT34 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
JB TF1 ,T402
JB TF0 ,T402
MOV TEMP3,#25
LJMP STAR
T402:
MOV TEMP3,#45
LJMP STAR
NEXT34: LJMP STLOP34
TEMP340 :
SETB TR1 ;南北停止計數(shù)
SETB TR0 ;東西開始計數(shù)
SETB P1.1 ;東西通行,南北禁止通行
CLR P1.0
SETB P1.1
CLR P1.0
SETB P1.5
CLR P1.6
SETB P2.1
CLR P2.3
MOV TEMP3,#45 ;南北要顯示的時間,
MOV TEMP4,#40 ;東西要顯示的時間,
STLOP43:
ACALL DISPLAY ;調(diào)用顯示
DEC TEMP3 ;時間夠一秒顯示時間減1
DEC TEMP4
MOV A,TEMP4
CJNE A,#0,NEXT43 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
LJMP STAR44 ;若顯示時間為 0跳到第四狀態(tài)
NEXT43:LJMP STLOP43
STAR44: ;狀態(tài)四
SETB P2.3
CLR P2.2
SETB P1.6 ;東西黃燈,南北禁止通行
CLR P1.5
MOV TEMP3,#05 ;南北要顯示的時間,
MOV TEMP4,#05 ;東西要顯示的時間,
STLOP44:
ACALL DISPLAY ;調(diào)用顯示
DEC TEMP3 ;時間夠一秒顯示時間減1
DEC TEMP4
MOV A,TEMP3
CJNE A,#0,NEXT44 ;若顯示時間不為0保持現(xiàn)在狀態(tài)
JB TF1 ,T403
JB TF0 ,T403
MOV TEMP3,#25
LJMP STAR
T403:
MOV TEMP3,#45
LJMP STAR
NEXT44: LJMP STLOP44
;顯示
DISPLAY1:
MOV A,TEMP1 ;將南北要顯示的數(shù)存放到A
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
交通燈.rar
(50.94 KB, 下載次數(shù): 57)
2021-4-19 11:38 上傳
點擊文件名下載附件
下載自取
下載積分: 黑幣 -5
作者:
aayon1979
時間:
2021-6-18 17:16
這個值得擁有,謝謝
作者:
slp1794306542
時間:
2021-6-21 10:35
這個就夠用了
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
中文字幕在线一区
|
中文字幕一区二区三区精彩视频
|
国产精品毛片在线
|
成人午夜精品
|
黄视频免费
|
久久亚洲高清
|
中文字幕在线视频免费视频
|
九九热这里只有精品6
|
自拍偷拍第1页
|
波霸ol一区二区
|
亚洲一区二区国产
|
亚洲精品国产成人
|
国产精品免费在线
|
日本高清在线一区
|
一区二区三区亚洲精品国
|
在线免费观看成人
|
一区二区国产精品
|
韩日精品一区
|
国产一区
|
亚洲热在线视频
|
国产精品久久欧美久久一区
|
欧美日韩亚洲系列
|
成年人在线观看
|
高清视频一区二区三区
|
日韩在线电影
|
91精品久久久久久久
|
久久久久国产精品一区
|
国产一区二区精华
|
欧美成视频在线观看
|
一区二区三区免费
|
中文字幕视频一区
|
亚洲精品91
|
国产真实乱全部视频
|
国产97色
|
日韩中文字幕久久
|
久草电影网
|
91久久综合亚洲鲁鲁五月天
|
国产精品a久久久久
|
国产在线1
|
亚洲天堂精品一区
|
日韩一区在线播放
|