畢業(yè)設(shè)計(jì)時(shí)用到了ch365的中斷。D3接地的那種。目前是有一個(gè)4ms的方波中斷信號(hào)。就是設(shè)計(jì)的時(shí)候是想沒4ms中斷一次,現(xiàn)在采用如下程序。 void CALLBACK interrupt(void) void CALLBACK InterruptEvent(void)///中斷服務(wù)子程序 { int timer; timer=50; count++; counter=count; if (counter>timer) { count=0; CH365mWriteIoByte(0,(PVOID)(0x11),tst1++); } else dly(10000); } 由于365是低電平有效中斷,所以中斷執(zhí)行完成之后會(huì)繼續(xù)中斷,有沒有什么辦法讓4ms之內(nèi)只中斷一次呢?4ms是晶振的分頻信號(hào),要一個(gè)準(zhǔn)確的信號(hào)。 不知道我說清楚我的問題了沒。。。謝謝
沒明白您的意思 標(biāo)準(zhǔn)的中斷過程如下: ① 外部電路向INT_REQ 輸出低電平有效的中斷請(qǐng)求信號(hào),導(dǎo)致CH365 的中斷激活位變?yōu)?。如果外部電路提供的是低電平脈沖,則脈沖寬度必須大于TINT。 ② CH365 通過PCI 總線的INTA 信號(hào)向計(jì)算機(jī)申請(qǐng)中斷。 ③ 計(jì)算機(jī)進(jìn)入CH365 的中斷服務(wù)程序。 ④ 如果外部電路提供的中斷請(qǐng)求不是脈沖信號(hào),則中斷服務(wù)程序應(yīng)該通知外部電路撤消中斷請(qǐng)求,也就是將INT_REQ 恢復(fù)為高電平。 ⑤ 中斷服務(wù)程序?qū)H365 的芯片控制寄存器的中斷激活狀態(tài)位清除為0,CH365 的PCI_INTA 引腳恢復(fù)為高阻狀態(tài),撤消了對(duì)計(jì)算機(jī)的中斷請(qǐng)求。 ⑥ 中斷服務(wù)程序進(jìn)行必要的中斷處理,該步驟也可以在進(jìn)入中斷后先執(zhí)行。 ⑦ 中斷處理完畢,計(jì)算機(jī)退出CH365 的中斷服務(wù)程序。 您可以參考下。