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

          新聞中心

          6502單片機(jī)編程--中斷

          作者: 時(shí)間:2016-11-24 來(lái)源:網(wǎng)絡(luò) 收藏
          中斷
          6502有3個(gè)中斷IRQ/BRK、NMI和RESET,每個(gè)中斷都有一個(gè)16位的向量,即指針,用來(lái)存放該中斷發(fā)生時(shí)中斷服務(wù)函數(shù)的地址。中斷發(fā)生時(shí)CPU都會(huì)把狀態(tài)標(biāo)志和返回地址壓棧,然后調(diào)用中斷服務(wù)程序。
          IRQ/BRK中斷由一下兩種情況產(chǎn)生:一是軟件通過(guò)BRK指令產(chǎn)生,一是硬件通過(guò)IRQ引腳產(chǎn)生。
          RESET在開機(jī)的時(shí)候觸發(fā),這是ROM被裝入,6502跳到RESET向量指向的地址沒(méi)有寄存器被修改,沒(méi)有內(nèi)存被清空,這些都只在開機(jī)是發(fā)生。
          NMI指不可屏蔽中斷,它在VBlank即屏幕刷新時(shí)發(fā)生,持續(xù)時(shí)間根據(jù)系統(tǒng)(NTSC/PAL)不同而不同。NTSC是每秒60次,而PAL是每秒50次。6502的中斷延時(shí)是7個(gè)時(shí)鐘周期,也就是說(shuō),進(jìn)入和離開中斷都需要7個(gè)時(shí)鐘周期。它產(chǎn)生于PPU的每一幀結(jié)束,NMI中斷可以由$2000的第7位的1/0控制允許/禁止。
          大部分中斷應(yīng)該使用RTI指令返回,但是有些游戲不用,例如《最終幻想1》。它用一個(gè)很奇怪的方式:手工修改堆棧指針,然后執(zhí)行RTS指令。這種方法在技術(shù)上是可行的,但是應(yīng)該盡量避免。
          以上中斷在ROM內(nèi)有以下對(duì)應(yīng)的地址:
          中斷地址中斷優(yōu)先權(quán)
          $FFFANMI
          $FFFCRESET
          $FFFEIRQ/BRK
          NMI 非屏蔽中斷
          IRQ/BRK 屏蔽中斷
          RESET 開機(jī)中斷


          關(guān)鍵詞: 6502單片機(jī)編程中

          評(píng)論


          技術(shù)專區(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); })();