P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
PWMSET = 0x01; //Enable PWM0 module (The configuration is effective only after the module is enabled.)
P_SW2 = 0x80;
PWMCKS = 0x00; //The clock of PWM is the system clock
PWMC = 0x1000; //Set the PWM0 cycle to 1000H PWM clocks
PWM0T1= 0x0100; //At the count value of 100H, the PWM0 channel outputs low level.
PWM0T2= 0x0500; //At the count value of 500H, the PWM0 channel outputs high level.
PWM0CR= 0x80; //enable PWM00 output
P_SW2 = 0x00;
PWMCFG = 0x01; //Start PWM module
while (1);
}
Assembly code
;Operating frequency for test is 11.0592MHz
P_SW2 DATA 0BAH
PWMSET DATA 0F1H
PWMCFG DATA 0F6H
PWMCH EQU 0FF00H
PWMCL EQU 0FF01H
PWMCKS EQU 0FF02H
PWMTADCH EQU 0FF03H
PWMTADCL EQU 0FF04H
PWMIF EQU 0FF05H
PWMFDCR EQU 0FF06H
PWM0T1H EQU 0FF10H
PWM0T1L EQU 0FF11H
PWM0T2H EQU 0FF12H
PWM0T2L EQU 0FF13H
PWM0CR EQU 0FF14H
PWM0HLD EQU 0FF15H
P0M1 DATA 093H
P0M0 DATA 094H
P1M1 DATA 091H
P1M0 DATA 092H
P2M1 DATA 095H
P2M0 DATA 096H
P3M1 DATA 0B1H
P3M0 DATA 0B2H
P4M1 DATA 0B3H
P4M0 DATA 0B4H
P5M1 DATA 0C9H
P5M0 DATA 0CAH
ORG 0000H