<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MCS-51單片機(jī)單步工作方式

          MCS-51單片機(jī)單步工作方式

          作者: 時(shí)間:2016-11-10 來(lái)源:網(wǎng)絡(luò) 收藏
          MCS-51有一種單步工作方式,所謂單步執(zhí)行就是由外來(lái)脈沖控制程序的執(zhí)行,使之達(dá)到來(lái)一個(gè)脈沖就執(zhí)行一行指令的目的。而外來(lái)脈沖是通過(guò)按鍵產(chǎn)生的,因此實(shí)際上單片機(jī)執(zhí)行是按一次鍵執(zhí)行一條指令。單步執(zhí)行是借助單片機(jī)的外部中斷功能來(lái)實(shí)現(xiàn)的。

          假定利用外部中斷0來(lái)實(shí)現(xiàn)程序的單步執(zhí)行,為此應(yīng)事先作好兩項(xiàng)準(zhǔn)備工作:

          本文引用地址:http://www.ex-cimer.com/article/201611/317458.htm

          〈1〉建立單步執(zhí)行的外部控制電路,以按鍵產(chǎn)生脈沖作為外部中斷0的中斷請(qǐng)求信號(hào),經(jīng)INT0端輸入,并把電路設(shè)計(jì)成不按鍵為低電平,按一次鍵產(chǎn)生一個(gè)正脈沖。此外還需要初始化程序中定義INT0低電平有效。

          〈2〉編寫(xiě)外部中斷0的中斷服務(wù)程序:

          JNB P3.2,$

          JB P3.2,$

          RETI

          這樣在沒(méi)有按鍵的時(shí)候,INT=0,中斷請(qǐng)求有效,單片機(jī)響應(yīng)中斷,但轉(zhuǎn)入中斷服務(wù)程序后,只能在它的第一條指令上“原地踏步”。只有按一次單步按鍵,產(chǎn)生下脈沖使INT0=1,才能通過(guò)第一指令而到第二條指令上去“原地踏步”。當(dāng)正脈沖結(jié)束后,再結(jié)束第二條指令通過(guò)第三條指令返回主程序。而MCS-51的中斷機(jī)制有這樣一個(gè)特點(diǎn),即從中斷服務(wù)程序返回主程序后,至少要執(zhí)行一條指令,然后才能再響應(yīng)新的中斷。為此單片機(jī)從上述中斷0的中斷服務(wù)程序返回主程序后,能且只能執(zhí)行一條指令。國(guó)為這時(shí)INT0已為低電平,外部中斷0請(qǐng)求有效,單片機(jī)就再一次中斷響應(yīng),并進(jìn)入中斷服務(wù)程序去踏步。從而實(shí)現(xiàn)了主程序的單步執(zhí)行。



          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();