ORG 0000H LJMP MAIN ORG 001BH LJMP T1 MAIN MOV 30H,#00H MOV 31H,#06H MOV 32H,#05H MOV 33H,#05H MOV R0,#100 SETB F0 CLR 20H CLR P13 CLR P11 MOV;南北黄灯亮 3s,东西红灯亮 3s南北红灯亮15s,东西绿灯亮15s南北红灯亮 3s,东西黄灯亮 3s循环步骤1=== 用汇编语言编写的程序如下,在12MHz的条件下,已经通过了仿真调试 ORG 0000H MOV P0;好复杂,好难的问题,你的要求应该是在计算机屏幕上用软件模拟十字路口红绿灯的规则 这样在屏幕上显示需要大量调用Int 10功能,来显示车辆,红绿灯太繁琐了;CALL DISP 调用显示程序 JMP LOOP 一秒未到,继续循环 NEXT=== MOV A,VALUE JNZ RG CPL FLAG SETB YLW 关闭黄灯 RG JB FLAG,REDL SETB RED CLR GREEN JMP NEW REDL SETB GR;2P2段选假设数码管a,b,c,d,e,f,g,h分别对应p20p27比如显示“3333”p2=0x1f自己去查对应关系3,P0的6们控制南北各红绿黄灯时间20s6s20s6s交替自己通过P0驱动一个开关就行了,延时时间。
某交通灯程序, 要具体ProteUS仿真的话,留言ORG 0000H LJMP MAIN ORG 0100H MAINMOV SP,#60H LCALL DIR 调用日期时间显示子程序 LOOPMOV P1,#0FFH LJMP TEST LCALL ROAD1 路口1的车直行时各路;你把问题描述清楚一点,我没有电子版,要是差不多我就把我的程序抄到上面来~~我的程序是实现以下工艺ST0全为红灯 ST1南北绿灯5s,东西红灯5sST2南北黄灯3s,东西红灯3sST3南北红灯5s。
MOV P1,#10B点亮黄灯 CALL DELAY调用延时函数 MOV P1,#00B CALL DELAY调用延时函数 DJNZ R2,YELLOW判断循环次数,如果R21不为0,则继续点亮黄灯,GREEN MOV P1,#01B点亮绿灯;程序流程如下开始绿灯 东西方向南北方向的红灯 延迟30秒 东西方向绿灯“南北方向的红灯已关闭 东西方向的,黄色的光的 南北方向的,黄色的光 BR 5秒延时的东西方向的黄色指示灯熄灭南北方向 黄色指示灯熄灭 的方向;应该满足你的要求了 但是没办法到机房实验 你自己试试 DATA SEGMENT CON EQU 38H DATA ENDS CODE SEGMENT ASSUME CSCODE GO MOV AX,DATA MOV DS,AX MOV AX,82H OUT CON+3,AX MOV BX,27H HH CMP BX,17H;DELAY RET STATUS4 南北红灯,东西绿灯闪转黄灯 MOV DPTR,#8300H MOV R3,#03H 绿灯闪3次 FLASH1MOV A,#6FH MOVX @DPTR,A MOV R2,#03H LCALL DELAY MOV A,#69H MOVX @DPTR,A;MOV 31H,#60 MOV P0,#4CH 初始化时南北通行并把交通灯状态分别放在32H和33H中 MOV 32H,#4CH MOV P2,#15H MOV 33H,#15H RET *** *** *** 显示子程序 DIS MOV P3,#0DF。
求程序,应该先给出电路static39 供参考;仿真实例,有汇编有C语言的,仿真试试;PORT EQU 0CFA0H 片选地址CS0 CSEG AT 0000H LJMP START CSEG AT 4100H START MOV A,#11H 两个红灯亮,黄灯绿灯灭 ACALL DISP 调用273显示单元以下雷同ACALL DE3S 延时3。