求助,解決89s52的一個(gè)關(guān)于中斷的問題
我最近做了一個(gè)自傲程序,要求外部中斷觸發(fā),然后啟動(dòng)定時(shí)中斷輸出一個(gè)特殊波形,這個(gè)波形是根據(jù)查表法得到的.其實(shí)主要要求是輸出的波形和外部觸發(fā)脈沖是同步的.現(xiàn)在面臨的問題是我的外部觸發(fā)脈沖不是十分定時(shí),前后可能差一毫秒或半毫秒的,但表格中的數(shù)據(jù)是一定的,所以雖然我定時(shí)輸出波形,有時(shí)輸出波形要長于實(shí)際時(shí)間,有時(shí)又?jǐn)嘤趯?shí)際時(shí)間,這時(shí)要求不管波形輸出完整與否,必須在外部中斷到達(dá)后重新輸出波形,上一個(gè)輸出的波形以后不再輸出,這個(gè)問題怎么解決?,不知說清楚了沒有,要是有興趣的話發(fā)emails:zhangruiping@emails.bjut.edu.cn,qq:64892932
全部回復(fù)(3)
正序查看
倒序查看
我理解你的意思是:
當(dāng)有中斷輸入時(shí),會(huì)有一個(gè)輸出,而你的輸出程序是在中斷程序里運(yùn)行的
也就是說你可能在輸出第一個(gè)波形還沒結(jié)束前(第一個(gè)中斷程序還沒運(yùn)行完畢)又發(fā)生了一次中斷,當(dāng)然第二次中斷沒有得到執(zhí)行.而你希望第二次中斷來時(shí)結(jié)束第一次還沒完成的中斷程序轉(zhuǎn)去重新執(zhí)行中斷程序來達(dá)到同步目的.
如果是這樣的話,那我想可以這樣做:只在中斷服務(wù)程序里放置標(biāo)致位,由外部子程序根據(jù)標(biāo)致位來輸出波形,這樣就可以保證每次中斷都得到執(zhí)行.
當(dāng)有中斷輸入時(shí),會(huì)有一個(gè)輸出,而你的輸出程序是在中斷程序里運(yùn)行的
也就是說你可能在輸出第一個(gè)波形還沒結(jié)束前(第一個(gè)中斷程序還沒運(yùn)行完畢)又發(fā)生了一次中斷,當(dāng)然第二次中斷沒有得到執(zhí)行.而你希望第二次中斷來時(shí)結(jié)束第一次還沒完成的中斷程序轉(zhuǎn)去重新執(zhí)行中斷程序來達(dá)到同步目的.
如果是這樣的話,那我想可以這樣做:只在中斷服務(wù)程序里放置標(biāo)致位,由外部子程序根據(jù)標(biāo)致位來輸出波形,這樣就可以保證每次中斷都得到執(zhí)行.
0
回復(fù)
@abing
我理解你的意思是:當(dāng)有中斷輸入時(shí),會(huì)有一個(gè)輸出,而你的輸出程序是在中斷程序里運(yùn)行的也就是說你可能在輸出第一個(gè)波形還沒結(jié)束前(第一個(gè)中斷程序還沒運(yùn)行完畢)又發(fā)生了一次中斷,當(dāng)然第二次中斷沒有得到執(zhí)行.而你希望第二次中斷來時(shí)結(jié)束第一次還沒完成的中斷程序轉(zhuǎn)去重新執(zhí)行中斷程序來達(dá)到同步目的.如果是這樣的話,那我想可以這樣做:只在中斷服務(wù)程序里放置標(biāo)致位,由外部子程序根據(jù)標(biāo)致位來輸出波形,這樣就可以保證每次中斷都得到執(zhí)行.
能留你的emails嗎,想向你請(qǐng)教
0
回復(fù)