新闻中心

EEPW首页>嵌入式系统>设计应用> PIC16F72 TIMER0定时器练习程序

PIC16F72 TIMER0定时器练习程序

作者: 时间:2016-11-13 来源:网络 收藏
要使用PIC的TIMER0,首先需要看数据手册,熟悉寄存器配置

这里需要用到OPTION,INTCON的配置,还有TMR0计数值的预置。

本文引用地址://m.amcfsurvey.com/article/201611/316069.htm

典型应用程序:利用定时中断实现发光管一闪一闪功能。

源程序:

#include
#define uchar unsigned char
#define uint unsigned int

#defineLED1 RC0

///////////////////////初始化设置程序////////////////////////////////

void Init(void)
{
PORTA = 0B00000000;
PORTB = 0B00000000;
PORTC = 0B00000000;

TRISA = 0B00000000;//设置PORTA口为输出
TRISB = 0B00000001;//设置RB0为输入,作为按键口
TRISC = 0B00000000;//设置RC输出

ADCON1=0B11111111;//设置为数字I/O

counter=0;

OPTION=0B01010011;//配置中断和定时器0
TMR0=5;
T0IE=1;//使能定时器中断0
GIE=1; //全局中断使能


}

///////////////////////定时中断程序////////////////////////////////

voidinterrupttimer0_int(void)
{
T0IF=0;//清除中断标志位
TMR0=5; //重新设置定时器时间
counter++;
if(counter==250)
{
counter=0;
LED1=!LED1;
}
}

///////////////////////主程序////////////////////////////////

void main (void)
{
Init();//初始化程序

PORTC=0XFF;
PORTB=0XFF;
while(1);

}



关键词:PIC16F72TIMER0定时

评论


技术专区

关闭