单片机定时器应用实验

来源:百度知道 编辑:UC知道 时间:2024/05/30 23:57:41
用80C51内部定时器1,按方式1工作,即作为16位定时器使用,每0.05秒钟T1溢出中断一次。P1口的P1.0-P1.7分别接八个发光二极管。要求编写程序模拟一时序控制装置。开机后第一秒钟L1,L3亮,第二秒钟L2,L4亮,第三秒钟L5,L7亮,第四秒钟L6,L8亮,第五秒L1,L3,L5,L7亮,第六秒钟L2,L4,L6,L8亮,第七秒钟八个二极管全亮,第八秒钟全灭,以后又从头开始,L1,L3亮,然后L2,L4亮......一直循环下去。

完全一样的题目呀,真幸运,看我的吧(我的是8052的,没关系的):

汇编程序:

S1   EQU 30H

S2   EQU 31H

   ORG 0000H

   AJMP MAIN

   ORG 001BH

   AJMP INTT1

   ORG 0100H

MAIN:  ANL TMOD,#0FH

   ORL TMOD,#10H

   MOV TH1,#3CH

   MOV TL1,#0B0H

   SETB EA

   SETB ET1

   SETB TR1

   MOV DPTR,#TABLE

   MOV S1,#00H

   MOV S2,#00H

LP:   MOV A,S2

   MOVC A,@A+DPTR

   MOV P1,A

   AJMP LP

INTT1: PUSH ACC

   INC S1

   MOV A,S