定时器3(中断)

2020-07-27  本文已影响0人  昨天剩下的一杯冷茶
#include <iocc2540.h>
#include "timer3.h"
#include "led.h"

void timer3_init(void)
{
    T3CTL |= 0x08 ; //开溢出中断
    T3IE = 1; //开总中断和 T3 中断
    T3CTL |= 0xE0; //128 分频,128/16000000*N=0.5S,N=62500
    T3CTL &= ~0x03; //自动重装 00->0xff 62500/255=245(次)
    T3CTL |= 0x10; //启动
    EA= 1; //开总中断
}

static unsigned int count=0;
#pragma vector=T3_VECTOR
__interrupt void T3_ISR(void)
{
    
    IRCON &= 0xf7;
    count++;
    if (count>245)
    {
    count=0;
    LED1 =!LED1;
    } 
}

这次教程要用到的寄存器我都贴出来。


image.png image.png image.png image.png
上一篇下一篇

猜你喜欢

热点阅读