我是新手 最近在做用c52单片机生成一个固定的spwm波 用了两个定时器,思路是用两个定时器,在定时器零产生中断的时候启动定时器1,但是实际操作发现定时器1没有成功启动 ,求大神帮我看看程序哪有问题
/***********定时器0/1初始化***********/
void timer0_init(void){
TMOD=0x11; //定时器0工作于方式1
TH0=0xff;//(65536-10)/256;
TL0=0x9c;//(65536-10)%256;
TR0=1;
ET0=1;
EA=1;
ET1=1;//打开定时器1中断允许}
/***********定时器1初值变化***********/
void Timer1Init(void){
TR1=0; //
TH1=pwm[a]; //给定时器赋初值,定时1ms
TL1=0X00;
TR1=1; }
/**************定时0中断处理******************/
void timer0_int(void) interrupt 1{
TR0=0;//设置定时器初值期间,关闭定时器
TH0=0xff;//(65536-10)/256;
TL0=0x9c;//(65536-10)%256;
TR0=1;
if(i==99){
flag=flag;
i=0;}
Timer1Init() ;
b=0;
time++;
i++;
a++;}
/**************定时1中断处理******************/
void Timer1(void)interrupt 3{
b=1;
TR1=0;}