毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

十字路交通灯控制系统设计-交通灯控制电路 第7页

更新时间:2009-7-27:  来源:毕业论文
十字路交通灯控制系统设计-交通灯控制电路 第7页
    图9  程序流程图
7.5.2 程序源代码
     
       ORG 0000H         ;主程序的入口地址
       LJMP MAIN         ;跳转到主程序的开始处
       ORG 0003H         ;外部中断0的中断程序入口地址         
       ORG 000BH         ;定时器0的中断程序入口地址
       LJMP T0_INT        ;跳转到中断服务程序处
       ORG 0013H         ;外部中断1的中断程序入口地址     
MAIN : MOV SP,#50H
       MOV IE,#8EH       ;CPU开中断,允许T0中断,T1中断和外部中断1中断
       MOV TMOD,#51H     ;设置T1为计数方式,T0为定时方式,且都工作于模式1
       MOV TH1,#00H      ;T1计数器清零
       MOV TL1,#00H
       SETB TR1          ;启动T1计时器
       SETB EX1          ;允许INT1中断
       SETB IT1          ;选择边沿触发方式
       MOV DPTR ,#0003H
       MOV A, #80H      ;给8255赋初值,8255工作于方式0
       MOVX @DPTR, A
AGAIN: JB P3.1,N0       ;判断是否要设定东西方向红绿灯时间的初值,若P3.1为1 则跳转
       MOV A,P1    
       JB P1.7,RED      ;判断P1.7是否为1,若为1则设定红灯时间,否则设定绿灯时间   
       MOV R0,#00H      ;R0清零
       MOV R0,A         ;存入东西方向绿灯初始时间
       MOV R3,A
       LCALL DISP1
       LCALL DELAY
       AJMP AGAIN
RED:   MOV A,P1
       ANL A,#7FH      ;P1.7置0
       MOV R7,#00H     ;R7清零
       MOV R7,A        ;存入东西方向红灯初始时间
       MOV R3,A
       LCALL DISP1
       LCALL DELAY
       AJMP AGAIN
;-------------------------------------------
www.youerw.com
       MOV DPTR,#0000H  ;置8255A口,东西方向红灯亮,南北方向绿灯亮
       MOV A,#0DDH
       MOVX @DPTR, A
N01:   JB P2.0,B0
N02:   SETB P3.0
       CJNE R3,#00H,N01  ;比较R3中的值是否为0,不为0转到当前指令处执行
;------黄灯闪烁5秒程序------
N1:    SETB P3.0
       MOV R3,#05H
       MOV DPTR,#0000H  ;置8255A口,东西,南北方向黄灯亮
       MOV A,#0D4H
       MOVX @DPTR,A
N11:   MOV R4,#00H
N12:   CJNE R4,#7DH,$    ;黄灯持续亮0.5秒
N13:   MOV DPTR,#0000H   ; 置8255A口,南北方向黄灯灭
       MOV A,#0DDH
       MOVX @DPTR,A
N14:   MOV R4,#00H
       CJNE R4,#7DH,$    ;黄灯持续灭0.5秒
       CJNE R3,#00H,N1   ;闪烁时间达5秒则退出
;------------------------------------------------------------
N2:    MOV R7,#00H
       MOV A,R0   ;东西通行,南北禁止
       MOV R3,A
       MOV DPTR,#0000H ; 置8255A口,东西方向绿灯亮,南北方向红灯亮
       MOV A,#0EBH
       MOVX @DPTR,A
N21:   JB P2.0,T03
      
N22:   CJNE R3,#00H,N21
;------黄灯闪烁5秒程序------
N3:    MOV R3,#05H
       MOV DPTR,#0000H    ;置8255A口,东西,南北方向黄灯亮
       MOV A,#0E2H
       MOVX @DPTR,A
N31:   MOV R4,#00H
       CJNE R4,#7DH,$     ;黄灯持续亮0.5秒
N32:   MOV DPTR,#0000H  ; 置8255A口,南北方向黄灯灭
       MOV A,#0EBH
       MOVX @DPTR,A
N33:   MOV R4,#00H
       CJNE R4,#7DH,$     ;黄灯持续灭0.5秒
       CJNE R3,#00H,N3   ;闪烁时间达5秒则退出
       SJMP N00
;------闯红灯报警程序------
B0:    MOV R2,#03H        ;报警持续时间3秒
B01:   MOV A,R3
       JZ N1              ;若倒计时完毕,不再报警
       CLR P3.0           ;报警
       CJNE R2,#00H,B01   ;判断3秒是否结束
       SJMP  N02
;------1秒延时子程序-------
N7:    RETI
T0_INT:MOV TL0,#9AH       ;给定时器T0送定时10ms的初值
       MOV TH0,#0F1H  
       INC R4
       INC R5
       CJNE R5,#0FAH,T01  ;判断延时是否够一秒,不够则调用显示子程序
       MOV R5,#00H        ;R5清零
       DEC R3             ;倒计时初值减一
       DEC R2             ;报警初值减一
T01:   ACALL DISP         ;调用显示子程序
       RETI               ;中断返回
;------显示子程序------
DISP:  JNB P2.4,T02
DISP1: MOV B,#0AH
       MOV A,R3            ;R3中值二转十显示转换
       DIV AB
       MOV 79H,A
       MOV 7AH,B
DIS:   MOV A,79H           ;显示十位
       MOV DPTR,#TAB
       MOVC A,@A+DPTR
       MOV DPTR,#0002H
       MOVX @DPTR,A
       MOV DPTR,#0001H
       MOV A,#0F7H
       MOVX @DPTR,A
       LCALL  DELAY
DS2:   MOV A,7AH           ;显示个位
       MOV DPTR,#TAB
       MOVC A,@A+DPTR
       MOV DPTR,#0002H
       MOVX @DPTR,A
       MOV DPTR,#0001H
       MOV A,#0FBH

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页

十字路交通灯控制系统设计-交通灯控制电路 第7页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。