STC8A8K64D4 Series Manual
#define
PWM0T1H
#define
PWM0T1L
#define
PWM0T2H
#define
PWM0T2
#define
PWM0T2L
#define
PWM0CR
#define
PWM0HLD
sfr
P0M1
=
sfr
P0M0
=
sfr
P1M1
=
sfr
P1M0
=
sfr
P2M1
=
sfr
P2M0
=
sfr
P3M1
=
sfr
P3M0
=
sfr
P4M1
=
sfr
P4M0
=
sfr
P5M1
=
sfr
P5M0
=
void PWM0_Isr() interrupt 22
{
static bit dir = 1;
static int val = 0;
if (PWMCFG & 0x08)
{
PWMCFG &= ~0x08;
if (dir)
{
val++;
if (val >= CYCLE) dir = 0;
}
else
{
val--;
if (val <= 1) dir = 1;
}
_push_(P_SW2);
P_SW2 |= 0x80;
PWM0T2 = val;
_pop_(P_SW2);
}
}
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
(*(unsigned char volatile xdata *)0xFF10)
(*(unsigned char volatile xdata *)0xFF11)
(*(unsigned char volatile xdata *)0xFF12)
(*(unsigned int volatile xdata *)0xFF12)
(*(unsigned char volatile xdata *)0xFF13)
(*(unsigned char volatile xdata *)0xFF14)
(*(unsigned char volatile xdata *)0xFF15)
0x93;
0x94;
0x91;
0x92;
0x95;
0x96;
0xb1;
0xb2;
0xb3;
0xb4;
0xc9;
0xca;
//Clear interrupt flag
- 557 -
Need help?
Do you have a question about the micro STC8A8K64D4 Series and is the answer not in the manual?