PIC 1508 TIM2的定时器使用

PIC 1508 TIM2的定时器使用
文章图片
PIC 1508 TIM2的定时器使用
文章图片

使用TIM2的频率计算公式f=FOSC/4/T2CKPS/T2OUTPS/TMR2(TMR2是TIM2的数据寄存器)

void main()
{
OSCCON = 0x78; //主频率为16M即FOSC = 16M
__delay_ms(50);
ANSC6 = 1;
TRISC6 = 0;
RC6 = 1; //RC6接了一盏LED

T2CON = 0x04;
/*T2OUTPS = 0(Timer2 输出后分频比为1:1)
TMR2ON=1(Timer2 使能位使能)
T2CKPS=0(Timer2 时钟预分频比为1:1); */
PR2 = 49; //当TMR2计数到49的时候产生标志位置1
TMR2IE = 1; 、//允许 Timer2 与 PR2 匹配中断
PEIE = 1; //允许所有有效外设中断
GIE = 1 ; //允许所有有效中断
TMR2IF = 0; //标准位清零
while(1)
{
}
}



void interrupt isr(void)
{
if(TMR2IF == 1)
{
GIE = 0;
TMR2IF = 0;
if(!flag)
{
flag = 1;
RC6 = 0;
}
else
{
flag = 0;
RC6 = 1;
}
GIE = 1;
}
}


理论频率f=16M/4/1/1/(49+1)=80000;
示波器显示为
PIC 1508 TIM2的定时器使用
文章图片

【PIC 1508 TIM2的定时器使用】39.6K*2= 79.2K

    推荐阅读