找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11098|回復(fù): 13
打印 上一主題 下一主題
收起左側(cè)

51單片機外部中斷0當(dāng)P3.2口斷開后,中斷程序為什么還在執(zhí)行

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
#
ID:134192 發(fā)表于 2017-3-2 21:40 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
50黑幣
我用外部中斷0寫了一個程序,用低電平觸發(fā),當(dāng)p3.2松開后,為什么中斷服務(wù)程序還在執(zhí)行,沒有立刻停止返回主程序中;
中斷程序是
void exte0()  interrupt0
{
      P1=0X03;
      delay(1000);
}
void delay(unsigned c)
{
     unsigned int a,b;
     for(a=c;a>0;a--)
     {
             for(b=100;b>0;b--)
      }
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報

13#
ID:163324 發(fā)表于 2017-3-4 23:31 | 只看該作者
因為你要等待delay執(zhí)行完畢才能回主函數(shù)。
可以將delay函數(shù)放到主函數(shù)中執(zhí)行
回復(fù)

使用道具 舉報

12#
ID:111634 發(fā)表于 2017-3-4 21:11 | 只看該作者
TIANYUN1573 發(fā)表于 2017-3-4 13:55
哦,謝謝,我先試試

試什么?c程序沒有RETI,不是匯編,中斷返回是由c51根據(jù)正確的中斷函數(shù)程序自動生成的。
回復(fù)

使用道具 舉報

11#
ID:134192 發(fā)表于 2017-3-4 13:56 | 只看該作者
hse 發(fā)表于 2017-3-2 22:47
進入中斷程序后,只有在執(zhí)行完delay 延時后 才會返回到主程序,還有外部中斷標(biāo)志位 清下 試下

嗯嗯,我試試,謝謝
回復(fù)

使用道具 舉報

10#
ID:134192 發(fā)表于 2017-3-4 13:56 | 只看該作者
TIANYUN1573 發(fā)表于 2017-3-2 22:02
不寫delay(1000)這個程序就沒問題了,但是如果換做別的帶時間的中斷程序就又有這個問題了,比如中斷寫成 ...

謝謝,就是不寫就成了
回復(fù)

使用道具 舉報

9#
ID:134192 發(fā)表于 2017-3-4 13:55 | 只看該作者
yzwzfyz 發(fā)表于 2017-3-4 02:02
中斷的返回,是由程序運行“RETI"決定的,而與接口無關(guān),接口信號只能引起進入中斷,而不能引起退出中斷。

哦,謝謝,我先試試
回復(fù)

使用道具 舉報

8#
ID:134192 發(fā)表于 2017-3-4 13:54 | 只看該作者
杰杰diy 發(fā)表于 2017-3-3 09:31
一進入中斷時就要關(guān)閉中斷的,把EA=0

謝謝我試試
回復(fù)

使用道具 舉報

7#
ID:111634 發(fā)表于 2017-3-4 07:53 | 只看該作者
這句有問題,少“;”。 { for(b=100;b>0;b--)}
回復(fù)

使用道具 舉報

6#
ID:123289 發(fā)表于 2017-3-4 02:02 | 只看該作者
中斷的返回,是由程序運行“RETI"決定的,而與接口無關(guān),接口信號只能引起進入中斷,而不能引起退出中斷。
回復(fù)

使用道具 舉報

5#
ID:125378 發(fā)表于 2017-3-3 13:33 | 只看該作者
程序有優(yōu)先級的問題,再看看。仔細檢查
回復(fù)

使用道具 舉報

地板
ID:167806 發(fā)表于 2017-3-3 09:31 | 只看該作者
一進入中斷時就要關(guān)閉中斷的,把EA=0
回復(fù)

使用道具 舉報

板凳
ID:75631 發(fā)表于 2017-3-2 23:06 | 只看該作者
“為什么中斷服務(wù)程序還在執(zhí)行,沒有立刻停止返回主程序中“
 delay(1000);
你還在延時!
回復(fù)

使用道具 舉報

沙發(fā)
ID:167311 發(fā)表于 2017-3-2 22:47 | 只看該作者
進入中斷程序后,只有在執(zhí)行完delay 延時后 才會返回到主程序,還有外部中斷標(biāo)志位 清下 試下
回復(fù)

使用道具 舉報

樓主
ID:134192 發(fā)表于 2017-3-2 22:02 | 只看該作者
不寫delay(1000)這個程序就沒問題了,但是如果換做別的帶時間的中斷程序就又有這個問題了,比如中斷寫成流水燈,
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表