//中斷的應(yīng)用(一)
//★★★★★★★★★中斷的應(yīng)用(一)★★★★★★★★★★★\
//單片機型號:PIC16F877A
//功能描述:利用中斷定時使RC口燈做跑馬燈。
#include
__CONFIG(0xf73A); //芯片配置字
char i;
//========================================================================
//功能描述:定時中斷服務(wù)
//函數(shù)名稱:interrupt TimeInt(void)
void interrupt TimeInt(void)
{
i--;
if(i>6)
{
PORTC=PORTC<<1; //顯示左移一位(RC0-->RC7-->RC0)
}
else
{
PORTC=PORTC>>1; //顯示右移一位
if(i<1)
{ i=14;}
}
TMR0 = 0x3d; //定時初值
T0IF = 0; //清除標志
}
//========================================================================
//功能描述:中斷設(shè)置初始化
//函數(shù)名稱:void IdsInit(void)
void IdsInit(void)
{
OPTION = 0x87; //分頻因子
TMR0 = 0x3d; //定時初值
T0IE = 1; //開啟定時
GIE = 1; //準許中斷
}
//主程序
main()
{
TRISC=0x00;
TRISA=0x00;
TRISD=0x00;
PORTC=0x01;
i=14;
IdsInit(); //中斷設(shè)置初始化
while(1)
{;}
}