美文网首页
EX10AVR ATmega8A 16位定时器TC1 fast

EX10AVR ATmega8A 16位定时器TC1 fast

作者: 山前雨1 | 来源:发表于2018-06-14 10:30 被阅读12次

    //EX10AVR ATmega8A 16位定时器TC1 fast pwm modle-模式14//author:QI小米粥//data:2018.3.16

    #include#include

    void init(void)

    {

    DDRB |=0X06;//oca,ocb设置位输出

    PORTB &=~0X06;//初始是低电平

    TCCR1A |=0XF0;//匹配的时候置位,也就是 non-inverting  mode

    //TCCR1A &=~0X50;

    TCCR1A &=~BIT(0);//选择工作模式14//top值固定为ICR1

    TCCR1A |=BIT(1);

    TCCR1B |=BIT(3);

    TCCR1B |=BIT(4);

    TCCR1B &=~BIT(2);//tc1频率8M/64=128KHz

    TCCR1B |=0x03;

    OCR1A=0X00FF;

    OCR1B=0X0088;

    ICR1=0X1FF;

    //TCNT1=0X0000;//在这个模式下是自动循环的不需要对计数器进行写操作,因此不要写否则会出错。

    SREG |=BIT(7);//全局中断打开

    TIMSK |=BIT(4);//0ca中断打开

    TIMSK |=BIT(3);//OCB中断打开

    TIMSK |=BIT(2);//溢出中断打开

    }

    #pragma interrupt_handler oca:7

    void oca(void)

    {

    }

    void main(void)

    {

    init();

    }

    相关文章

      网友评论

          本文标题:EX10AVR ATmega8A 16位定时器TC1 fast

          本文链接:https://www.haomeiwen.com/subject/ylbeeftx.html