本例利用汇编语言的查找表方法实现十字路口交通灯控制: 要点如下: 访问ROM指令--查表指令 MOVC A,@A+DPTR 使用该指令时要事先设置: (1)表格地址指针,并对地址指针赋初值; (2)查表计数器,并对计数器赋初值。 (3)设置表格,用到DB汇编伪指令。 (4)完整程序: ORG 0000H SJMP MAIN ORG 0030H MAIN: MOV DPTR,#TAB MOV R0,#8 LED8: CLR A MOVC A,@A+DPTR MOV P1,A ACALL DELAY INC DPTR DJNZ R0,LED8 SJMP MAIN TAB: DB 06H,09H,06H,09H,06H,09H,06H,09H DELAY:MOV R7,#40 LOOP1:MOV R6,#250 LOOP2:MOV R5,#250 DJNZ R5,$ DJNZ R6,LOOP2 DJNZ R7,LOOP1 RET END 电路图: |
|