打印

请教中断服务程序

[复制链接]
1839|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zmmhmily|  楼主 | 2008-12-9 00:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void TimerInit(void)
{   
    T1CON = 0b1000000000010000;  
    IFS0bits.T1IF = 0;
    PR1 = 0x2FF
    IEC0bits.T1IE=1;
}

以上是我写的用定时器1初始化程序, 我想在中断服务程序里实现一些功能, 
这个中断服务程序格式是什么样的啊, 初学PIC, 不懂, 请教一下各位高手了
谢谢!
沙发
hotpower| | 2008-12-9 00:42 | 只看该作者

。。。

void TimerInit(void)
{
    Timer1Init();
    Timer2Init();
}

void Timer1Init(void)
{
    TMR1 = 0;            // 复位时间计数器
    T1CONbits.TON = 0;   //关闭Timer1
    T1CONbits.TSIDL = 0;  //处于休眠模式时继续操作
    T1CONbits.TGATE = 0; //禁止门时间累加
    T1CONbits.TCS = 0;   //使用Tcy作为时钟源
    T1CONbits.TCKPS = 3; //输入时钟Tcy / 256
    PR1 = (Fcy/256)/1000;//设定1mS延时时间 
    IFS0bits.T1IF = 0;     //清Timer 1中断标志
    IEC0bits.T1IE = 1;     //使能Timer1中断
    T1CONbits.TON = 1;   //打开Timer1
}

void Timer2Init(void)
{
    TMR2 = 0;            // 复位时间计数器
    T2CONbits.TON = 0;   //关闭Timer2
    T2CONbits.TSIDL = 0;  //处于休眠模式时继续操作
    T2CONbits.TGATE = 0; //禁止门时间累加
    T2CONbits.TCS = 0;   //使用Tcy作为时钟源
    T2CONbits.TCKPS = 3; //输入时钟Tcy / 256
    PR2 = (Fcy/256)/2;   //设定500mS延时时间 
    IFS0bits.T2IF = 0;     //清Timer 2中断标志
    IEC0bits.T2IE = 1;     //使能Timer2中断
    T2CONbits.TON = 1;   //打开Timer2
    Second = 0;
}

void __attribute__((interrupt, no_auto_psv)) _T1Interrupt( void )
{
static unsigned char KeyCount = 0;
unsigned char KeyState;
static int count = 0;
    ClrWdt();
    KeyState = KeyboardScan(KeyCount);//调用零耗时键盘扫描
    KeyboardCommand(KeyCount, KeyState);//命令键盘执行程序
    KeyCount ++;
    if (KeyCount >= KeyboardMaxCount)
    {
        KeyCount = 0;
    }
    count ++;
    if (count >= 200)
    {
        MenuDisplay();
        count = 0;
    }
     IFS0bits.T1IF = 0;//清除Timer1中断标志
}

void __attribute__((interrupt, no_auto_psv)) _T2Interrupt( void )
{
//.......................................................
     IFS0bits.T2IF = 0;//清除Timer2中断标志
}

使用特权

评论回复
板凳
zmmhmily|  楼主 | 2008-12-9 09:40 | 只看该作者

感谢感谢感谢

hotpower  太谢谢了 帮我一大忙啊 这下可以少走很多弯路了 谢谢

使用特权

评论回复
地板
hotpower| | 2008-12-9 21:59 | 只看该作者

C30

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

205

主题

698

帖子

0

粉丝