激情综合丁香-激情综合六月-激情综合婷婷亚洲图片-激情综合图区-激情综合网五月


主題:ETR186中斷問(wèn)題

  共有39071人關(guān)注過(guò)本帖    
雙贏
1樓


ETR186中斷問(wèn)題  發(fā)帖心情 Post By:2009-12-22 14:17:00   [只看該作者]

你好,我在應(yīng)用你們ETR186開(kāi)發(fā)板時(shí),中斷程序如果放得稍微長(zhǎng)一點(diǎn)的話,就會(huì)出現(xiàn)死機(jī)的狀態(tài),即我在調(diào)試模式下進(jìn)行調(diào)試時(shí),中斷沒(méi)有反應(yīng),ETR186出現(xiàn)死機(jī),調(diào)試界面自動(dòng)退出,回到DOS下的黑屏輸入界面。那是哪里的問(wèn)題呢??? 順便交代一下,在中斷中的程序是我在鍵盤查詢下也要響應(yīng)的一個(gè)程序。在鍵盤下能完全實(shí)現(xiàn),但在中斷下就不行。
void interrupt IRQ5_ISR(__CPPARGS)
{
      UninstallISR_Extern(0x0d);/*原形為UninstallISR,因?yàn)榕c串口中斷重名,所以改名*/
       enable( );    
       print_data();
      //NB_Delay(10000);
     // put your code here
        IRQ5cnt++;
        outport( 0xff22, 0x0d);
 }

print_data()是我寫的一個(gè)函數(shù),已經(jīng)在查詢狀態(tài)下驗(yàn)證過(guò),沒(méi)錯(cuò);
還有就是如果我在程序中置入NB_Delay(10000);它是先延時(shí)10S,然后才在我的 print_data();向串口發(fā)送數(shù)據(jù)。這些都是哪里的原因呢???

你Q是多少,可以在Q上聊下嗎,我迫切希望得到問(wèn)題的解決!!!


  單帖管理 | 引用 | 回復(fù) 回到頂部
帥哥喲,離線,有人找我嗎?
lqk
2樓 信息 | 搜索 | 郵箱


加好友 發(fā)短信
  發(fā)帖心情 Post By:2009-12-22 14:57:00   [只看該作者]

您好:
1、安裝中斷函數(shù)InstallISR(...)和卸載中斷函數(shù)UninstallISR(...)都只應(yīng)該執(zhí)行一次,在你的代碼中為什么在中斷函數(shù)中又卸載了中斷?
2、中斷處理函數(shù)的執(zhí)行時(shí)間不應(yīng)太長(zhǎng),建議在中斷函數(shù)中只置標(biāo)志位,在主循環(huán)中通過(guò)查詢標(biāo)志,選擇執(zhí)行相應(yīng)的程序。

在ETR186的開(kāi)發(fā)光盤上(software\drivers)有中斷使用的例程,你參考一下。

  單帖管理 | 引用 | 回復(fù) 回到頂部
雙贏
3樓


  發(fā)帖心情 Post By:2009-12-22 15:05:00   [只看該作者]

我在中端函數(shù)中卸掉了中斷主要是由于受到匯編中斷關(guān)掉再開(kāi)的影響。雖然說(shuō)退出后中斷沒(méi)有開(kāi),但在我第一次進(jìn)入中斷時(shí)程序就已經(jīng)在ETR186中死掉了,不過(guò)還得感謝你的提醒。可以去嘗試另外一種方法。

  單帖管理 | 引用 | 回復(fù) 回到頂部
帥哥喲,離線,有人找我嗎?
lqk
4樓 信息 | 搜索 | 郵箱


加好友 發(fā)短信
  發(fā)帖心情 Post By:2009-12-22 15:16:00   [只看該作者]

你說(shuō)的中斷關(guān)掉再開(kāi)是通過(guò)enable( );和outport( 0xff22, 0x0d);實(shí)現(xiàn)的,不能用UninstallISR(...)函數(shù)。

  單帖管理 | 引用 | 回復(fù) 回到頂部
雙贏
5樓


  發(fā)帖心情 Post By:2009-12-22 15:52:00   [只看該作者]


恩,我明白了,比如下面的Installisr只是置入新中斷向量。enable()開(kāi)總中斷,outport( 0xff22, 0x0f );置IRQ5中斷向量,剛才你提醒了我一下,換一種思想去編程,成功了,謝了!!!
int InstallISR( int intno )
{
   switch( intno )
      {
      case 0x0d:
   outport( 0xff3a, inport(0xff3a)|MaskBit ); // mask irq5
   oldIRQ5handler = getvect( intno );
   setvect( intno, IRQ5_ISR );
   outport( 0xff3a, inport(0xff3a)&~MaskBit ); // unmask irq5
   break;

  單帖管理 | 引用 | 回復(fù) 回到頂部

返回首頁(yè)

ETR186中斷問(wèn)題

用戶名:
            驗(yàn)證碼: 驗(yàn)證碼,看不清楚?請(qǐng)點(diǎn)擊刷新驗(yàn)證碼
內(nèi)容:
主站蜘蛛池模板: 99久久免费国产精品特黄| 女人被免费视频网站| 欧美毛片aaa激情| 黄色网欧美| 亚洲一区二区三区麻豆| 日韩黄色在线视频| 欧美三级视频在线播放| 性激烈的欧美三级高清视频| 国产亚洲婷婷香蕉久久精品| 网站啪啪| 97国内免费久久久久久久久久 | 欧美黄免在线播放| 国产精品精品视频| 精品一区二区三区在线成人 | 日韩在线不卡| 91视频会员| 久久91精品国产91久久| 亚洲日本国产| 免费 视频 1级| 国产片性视频免费播放| 黄色三级影院| 精品久久中文网址| 国产亚洲女人久久久久久| 免费在线不卡视频| 午夜国产精品免费观看| 日韩电影久久久被窝网| 亚洲精品高清久久| 6969精品视频在线观看| www在线视频在线播放| 天天看a| 丝袜高跟在线| 在线网站你懂的| 免费黄视频网站| 欧美做a一级视频免费观看| 欧美区一区| 伊人啪啪| 免费不卡毛片| 亚洲婷婷在线视频| 国产一区二区三区鲁婷婷| 国产高清在线精品一区在线| 美国一级毛片片aa久久综合|