×
单片机 > 单片机程序设计 > 详情

PIC 1508 TIM0的定时器使用

发布时间:2022-08-17 发布时间:
|

使用TIM0的频率计算公式f=FOSC/4/PS/TMR0 (TMR0是TIM0的数据寄存器)


void main()

{

OSCCON = 0x78;//主频率为16M 即FOSC = 16M

__delay_ms(50);

ANSC6 = 1;

TRISC6 = 0;

RC6 = 1;//RC6接了一盏LED

OPTION_REG = 0xc0;


/*TMR0CS = 0(内部指令周期时钟 (F OSC /4))


PSA=0 (预分频器分配给 Timer0 模块)


PS=0(1比2分频)如果想要1:1分频,则PSA= 1;*/



TMR0IE = 1;//允许 Timer0 中断

GIE = 1 ;//开总中断

TMR0IF = 0;//标准位清零

while(1)

{

}

}


void interrupt isr(void)

{

if(TMR0IF == 1)

{

GIE = 0;

TMR0IF = 0;

if(!flag)

{

flag = 1;

RC6 = 0;

}

else

{

flag = 0;

RC6 = 1;

}

GIE = 1;

}

}


理论频率:f=16M/4/2/256=7.8K


//示波器显示为

3.87K*2 = 7.74K


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机实现按健连加减程序