音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

pic(12f629)單片機(jī)中斷返回后不返回到原處,而返回指定地點(diǎn)。

作者:ch_ljun 欄目:單片機(jī)
pic(12F629)單片機(jī)中斷返回后不返回到原處,而返回指定地點(diǎn)。
我在做一個(gè)項(xiàng)目的時(shí)候,遇到一個(gè)問(wèn)題請(qǐng)那位高手指點(diǎn)一下!非常感謝!
當(dāng)單片機(jī)在中斷返回以后,要求它不返回到原來(lái)的地方,而是返回到我指定的地方去?
具體的情況如下:有10種模式在循環(huán)運(yùn)行,在這個(gè)過(guò)程之中突然斷電,然后再次上電。如果時(shí)間在一秒內(nèi),則從斷電處運(yùn)行的那一種模式的下一種模式變化開(kāi)始運(yùn)行,如果斷電時(shí)間超過(guò)一秒,則從本次模式再次循環(huán)。在整個(gè)程序的運(yùn)行過(guò)程之中,我用中斷探測(cè)到何時(shí)斷電,當(dāng)我中斷返回以后就不能再返回到原處了,而是返回到我指定的地方去從新運(yùn)行,不知這里如何處理,請(qǐng)高手指點(diǎn)。謝謝!

2樓: >>參與討論
fzj
應(yīng)該講你的程序設(shè)計(jì)思路不對(duì)
如果中斷返回要返回到你指定的地方也可以,可以根據(jù)你中斷事件判斷建立幾個(gè)標(biāo)志位,然后根據(jù)標(biāo)志位去執(zhí)行不同的子程序.

3樓: >>參與討論
ch_ljun
這位仁兄說(shuō)的可能有點(diǎn)問(wèn)題。
非常感謝2樓的兄弟指點(diǎn)。因?yàn)槲沂浅醺鉷ic單片機(jī),對(duì)此也不是很熟,所以還要兄弟們多多指教才是,你說(shuō)的這種方式我當(dāng)初也想過(guò)了。因?yàn)樵谠鮽(gè)程序運(yùn)行的過(guò)程之中,我設(shè)定了一個(gè)TIME1定時(shí)器,是每隔20ms中斷一次,我要以此來(lái)判定,硬件在運(yùn)行的過(guò)程之中是否會(huì)斷電。如果斷電時(shí)間超過(guò)一秒,在下一次上電時(shí)從這個(gè)模式從新運(yùn)行,如果斷電時(shí)間在一秒以內(nèi),下一次上電就從這個(gè)模式的下一個(gè)模式再運(yùn)行。如果在中斷這里設(shè)定標(biāo)志,當(dāng)硬件斷電之后再上電(時(shí)間在1秒以內(nèi),因?yàn)橛布嫌幸粋(gè)大電容,所以系統(tǒng)不會(huì)復(fù)位,程序可以接著運(yùn)行),如果將程序跳到開(kāi)始再運(yùn)行,則中斷沒(méi)有返回,下一次斷電就檢測(cè)不到,如果中斷返回了又不能運(yùn)行新的模式,所以,在這里不知如何處理,不知兄弟能否教我,謝謝了。

4樓: >>參與討論
cloud2k
做標(biāo)志位
中斷做標(biāo)志位,然后在程序運(yùn)行的過(guò)程中不斷的檢測(cè),呵呵.
沒(méi)有做過(guò).

5樓: >>參與討論
ch_ljun
這個(gè)方案試過(guò)
這個(gè)方案試過(guò),在兩個(gè)模式的循環(huán)之中有一個(gè)5秒的延時(shí),其一不可能到延時(shí)里檢測(cè),其二在同一個(gè)模式下又有幾種變化,如果在運(yùn)行中斷電,程序也會(huì)亂的,所以這個(gè)方案行不通,看那路高手有更好的主意。謝謝。

6樓: >>參與討論
FZJ
樓主想要的是掉電一秒內(nèi)的記憶功能吧
那就別軟件了,交給硬件,由硬件來(lái)完成...
搞個(gè)掉電檢測(cè)端口,一掉電就SLEEP,這時(shí)測(cè)量一下MCU消耗電流,然后合理選擇儲(chǔ)能電容容量,就是說(shuō)儲(chǔ)能電容容量只能維持單片機(jī)在SLEEP下放電1S,如果放電時(shí)間過(guò)長(zhǎng)MCU因得不到維持電壓而復(fù)位.

7樓: >>參與討論
yewuyi
如果你非要按照你的想法做,只有換成可以操作堆棧的MCU
 
8樓: >>參與討論
塵埃讀電子
中斷可以不返回嗎?>
PIC中斷只有8級(jí)你不返回就會(huì)逸出的

9樓: >>參與討論
eeproom
你的設(shè)計(jì)原理沒(méi)錯(cuò)
  不過(guò)的軟件設(shè)計(jì)思路錯(cuò)誤。你可以在中斷中設(shè)置一個(gè)全局標(biāo)記,全身快速退出,安全的時(shí)間內(nèi)保存到EEPROM,下次開(kāi)機(jī)檢測(cè)狀態(tài)標(biāo)記決定做啥。

10樓: >>參與討論
ch_ljun
問(wèn)題解決
這個(gè)項(xiàng)目我已經(jīng)搞定了,因?yàn)檫@個(gè)有些功能不用了,所以沒(méi)有簡(jiǎn)單多了,另外這個(gè)項(xiàng)目,大家可以討論一下,看有沒(méi)有辦法做到我說(shuō)的那個(gè)功能,另外,硬件部份是已經(jīng)做好了的,沒(méi)有辦法改動(dòng)的。只有在軟件上想辦法,請(qǐng)各路高手討論一下。

11樓: >>參與討論
ch_ljun
還有其它方案嗎
怎么這段時(shí)間沒(méi)有高手發(fā)言,看還有其它方案嗎,望高手們?cè)谶@里指點(diǎn),看有什么更好的思路。

12樓: >>參與討論
蘭天白云
斷電1秒鐘,電路還有電壓?jiǎn)?
如果沒(méi)有,那又怎么知道是斷電1秒呢?

13樓: >>參與討論
alin_99
從備用電源的角度來(lái)考慮或者超級(jí)電容來(lái)考慮
 
14樓: >>參與討論
ch_ljun
硬件有電容
我在題里說(shuō)過(guò)了,在硬件是有一個(gè)大電容,外部斷電了,電容可以支持單片機(jī)跑1秒多,所以就存在這樣的問(wèn)題出現(xiàn)了。

15樓: >>參與討論
xieyuanbin
是不是超過(guò)一秒鐘重新運(yùn)行,而不超過(guò)一秒返回?
簡(jiǎn)單:
如果超過(guò)一秒鐘,那么程序進(jìn)入一個(gè)死循環(huán),讓單片機(jī)WDT復(fù)位,重新運(yùn)行,前提當(dāng)然是WDT要開(kāi)啟.
如果不超過(guò)一秒鐘,從中斷返回應(yīng)該沒(méi)問(wèn)題吧?
如果對(duì)堆棧很清楚,讓堆棧下溢也是沒(méi)問(wèn)題的.不過(guò)要把GIE給補(bǔ)上,但從中斷中直接跳轉(zhuǎn)到正常程序是很危險(xiǎn)的行為,因?yàn)楹芏嘀当荒愀淖兞?比如W和STATUS

16樓: >>參與討論
ch_ljun
可以試試
樓上的兄弟說(shuō)的這個(gè)方案,我也想過(guò),感覺(jué)可行,可是我們WDT的用法不是很熟,不知道經(jīng)過(guò)WDT復(fù)位之后,程序是自動(dòng)從最開(kāi)始運(yùn)行,還是說(shuō)會(huì)復(fù)位到中斷跳出來(lái)的這個(gè)地方,如果是復(fù)位到叫斷跳出來(lái)的這個(gè)地方那就有問(wèn)題了,你高手們指點(diǎn)。

17樓: >>參與討論
PIC

  中斷之后必須要返回?cái)帱c(diǎn)處,如果要跳轉(zhuǎn)到指定的處,可以先在中斷里初試化一些寄存器,如TRIS,PORT等,然后返回執(zhí)行下面的程序,但是由于在中斷里做了準(zhǔn)備,所以下面的指令不改變端口寄存器的值,然后在主程序放些判別指令,判別跳轉(zhuǎn)的路徑,來(lái)實(shí)現(xiàn)跳轉(zhuǎn)自己指定的地方。

 樓主說(shuō)要求的1秒之內(nèi),執(zhí)行下個(gè)模式,1秒之外,執(zhí)行本模式,可以利用EEPROM和定時(shí)器結(jié)合,首先把沒(méi)個(gè)模式給他一個(gè)相應(yīng)的代碼,在沒(méi)一次模式轉(zhuǎn)化時(shí),把代碼寫(xiě)到EEPROM中,單片機(jī)有欠壓檢測(cè),上電時(shí)候,TIME0里的值不改變的,可以通過(guò)該值算出有沒(méi)有超過(guò)一秒,來(lái)判斷執(zhí)行哪個(gè)模式,這里就可以讀EEPROM的值了

參與討論
昵稱(chēng):
討論內(nèi)容:
 
 
相關(guān)帖子
PIC16F87X在CAN通信中的應(yīng)用.doc
求助pic18f258-1的資料
3.3V低價(jià)lcm(128*64只需35元)自帶led背光(供出兩個(gè)生產(chǎn)廠家)
如何知道當(dāng)前程序在哪頁(yè)
有人用過(guò)dsPIC33的DMA功能嗎?
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)