STC12C12C5410 PCA應(yīng)用
/*PWM波頻率=Fosc/2/256 */
void STC_PCA(void)
{
CMOD=0x00; //set PCA timer pca2
CL=0x00;
CH=0x00;
// 初始化 PCA
CCON = 0x04;// 啟動(dòng) PCA2
CCAPM2 = 0x31;// PCA 的模塊 0 正、負(fù)跳均捕獲,允許中斷,右側(cè)碼盤(pán)輸入
// 初始化相關(guān)中斷
IE = IE|0x40; // PCA 中斷
IP = IP|0x40;// PCA置為優(yōu)先級(jí) 1
CR=1; //開(kāi)始PCA 定時(shí)器
//EA=1;
}
/********************************************/
/********************************************/
/* PCA 中斷服務(wù) */
/* 說(shuō)明: CCF2、1 用于碼盤(pán)輸入*/
/**/
/********************************************/
void PCA_Int(void) interrupt 6
{
EA=0;
//Key_Beep();
if(CF == 1)
{
CF = 0;//如果有信號(hào)就進(jìn)入撲捉中斷
}
if(CCF2 == 1)
{
// 碼盤(pán)信號(hào)輸入
CCF2 = 0;
mapan_num++;// 每來(lái)一個(gè)脈沖 +1
pca_count_1s++; //用于計(jì)算速度用
}
EA=1;
}
評(píng)論