RETI
MAIN:
MOV SP, #5FH
MOV P0M0, #00H
MOV P0M1, #00H
MOV P1M0, #00H
MOV P1M1, #00H
MOV P2M0, #00H
MOV P2M1, #00H
MOV P3M0, #00H
MOV P3M1, #00H
MOV P4M0, #00H
MOV P4M1, #00H
MOV P5M0, #00H
MOV P5M1, #00H
SETB DIR
MOV VALH,#00H
MOV VALL,#01H
MOV PWMSET,#01H ;Enable PWM module (The configuration is effective only after the
module is enabled.)
MOV P_SW2,#80H
CLR A
MOV DPTR,#PWMCKS
MOVX @DPTR,A ;The clock of PWM is the system clock
MOV A,#HIGH CYCLE
MOV DPTR,#PWMCH ;Set PWM period
MOVX @DPTR,A
MOV A,#LOW CYCLE
MOV DPTR,#PWMCL
MOVX @DPTR,A
MOV A,#00H
MOV DPTR,#PWM0T1H
MOVX @DPTR,A
MOV A,#00H
MOV DPTR,#PWM0T1L
MOVX @DPTR,A
MOV A,VALH
MOV DPTR,#PWM0T2H
MOVX @DPTR,A
MOV A,VALL
MOV DPTR,#PWM0T2L
MOVX @DPTR,A
MOV A,#80H
MOV DPTR,#PWM0CR ;enable PWM0 output
MOVX @DPTR,A
MOV P_SW2,#00H
MOV PWMCFG,#05H ;Start PWM module and enable PWM interrupt
SETB EA
JMP $
END