請問各位前輩:小弟我使用18f4431,使用 input capture (IC1),使用馬達編碼器做為訊號輸入,一直無法產生IC1IF==1中斷旗標ㄝ,以下是我的設定,請多多指教
void Cap(void)
{
CAP1CONbits.CAP1M3 = 0 ;
CAP1CONbits.CAP1M2 = 0 ;
CAP1CONbits.CAP1M1 = 1 ;
CAP1CONbits.CAP1M0 = 0 ;
}
void QEI_Interface(void)
{
QEICONbits.VELM = 0 ;
QEICONbits.QEIM2 = 1 ;
QEICONbits.QEIM1 = 1 ;
QEICONbits.QEIM0 = 0 ;
QEICONbits.PDEC1 = 0 ;
QEICONbits.PDEC0 = 1 ;
}
void Interrup_set(void)
{
TRISA = 0b11111111 ;
PIE3bits.TMR5IE = 1 ; //TIMER5 中斷致能
IPR3bits.TMR5IP = 0 ; //TIMER5 低優先權
PIE3bits.IC1IE = 1 ;// IC1中斷致能
IPR3bits.IC1IP = 1 ;// IC1高優先權致能
CAP1CONbits.CAP1REN = 1 ;// 特殊事件觸發中斷
INTCONbits.GIEL=1 ;// 低優先權致能
INTCONbits.GIEH=1 ;// 高優先權致能
RCONbits.IPEN=1 ;// 高低優先權致能
}
: