allenxu1314 发表于 2010-8-3 16:09:12

kpwm 需要一定周期数,用比较匹配计数,为什么跳不出来

mega16的板子,想先在1:2脉宽下运行一定时间后跳到另一个脉宽,可是没有反应,希望老师看下
#include <iom16v.h>
#include <macros.h>
#define uchar unsigned char
#define uint unsigned int
#pragma interrupt_handler timer1_comp_isr:7
uchar count=0;
void timer1_comp_isr(void)
{
count++;
if(count==100)
{
    OCR1AH=0x3F;         //设置OCR0A的占空比1:4
    OCR1AL=0xFF;
        count=0;
}
}
void main(void)
{   
TCCR1A = 0b10100010;   //快速PWM
TCCR1B = 0b00011001;   //时钟1分频
ICR1H= 0xFF;         //TCNT计数上限(最高16位)
ICR1L= 0xFF;
DDRD   = 0x30;         //PWM输出
   while(1)
   {
   OCR1AH=0x7F;         //设置OCR0A的占空比1:2
   OCR1AL=0xFF;
   }
}
页: [1]
查看完整版本: kpwm 需要一定周期数,用比较匹配计数,为什么跳不出来