專(zhuān)注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命
提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享
從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!
提供新的芯片及解決方案,提升客戶(hù)產(chǎn)品競(jìng)爭(zhēng)力
提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)
所提到的理由是:當(dāng)CPU正在執(zhí)行一條對(duì)INTCON寄存器進(jìn)行“讀-改-寫(xiě)”操作的指令時(shí),如果恰好發(fā)生了中斷請(qǐng)求,則中斷服務(wù)程序會(huì)被執(zhí)行兩次。這是因?yàn)楫?dāng)中斷請(qǐng)求發(fā)生后INTCON寄存器的GIE寄存器會(huì)被硬件自動(dòng)清零(屏蔽所有中斷),并且程序轉(zhuǎn)入中斷例程入口(0004h)。當(dāng)GIE被清零后,這時(shí)如果CPU正在執(zhí)行一條對(duì)INTCON“讀-改-寫(xiě)”的指令時(shí),則GIE位還會(huì)被寫(xiě)會(huì)操作重新置1,這樣就會(huì)造成CPU兩次進(jìn)入中斷服務(wù)程序。