|
void PCA_isr() interrupt 7 using 1
{//PCA中斷入口函數
CCF0 = 0; //PCA模塊0清除中斷
PCA_LED = !PCA_LED; //LED燈反向,確認一個中斷產生
}
void main()
{//主程序
CCON = 0; //關閉PCA計數器CR,清除PCA計數中斷溢出CF,清除模塊0、1中斷標記
CL = 0; //重置PCA計數器值低位
CH = 0; //重置PCA計數器值高位
CMOD = 0x00; //設置PCA計數器工作在12T模式,關閉PCA計數溢出中斷使能ECF
CCAPM0 = 0x11; //模塊0設置為負捕獲模式,開捕獲中斷ECCF0
//CCAPM0 = 0x21; //模塊0設置為正捕獲模式,開捕獲中斷ECCF0
//CCAPM0 = 0x31; //模塊0設置為雙向捕獲模式,開捕獲中斷ECCF0
CR = 1; //PCA時鐘開始計數(只計數,不產生計數溢出中斷)
EA = 1; //開總中斷
while (1); //反死機循環
}
|
評分
-
查看全部評分
|