• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users




(1) 2 »


Re: 請教如果要在INT發生時讓reset功能動作的方式
#19
版主
版主


查看用戶資訊
參照:
retfie離開中斷副程式,以後就無法再中斷了....^^".

如果進入 0x0000 位址執行後可以將 GIE 位元重新設為 1 就可以了。因為 retfie 除了會娶回堆疊之外還會將 GIE 設為 1。

發表於: 2007/8/15 14:26
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#18
資深會員
資深會員


查看用戶資訊
我是認為所有人寫程式的起始位址都會做一些I/O及暫存器初始化的動作,所以不會有舊資料殘留的問題...
至於版主說的堆壘會爆掉的問題,這也還好,因為堆壘不夠時會把最早CALL的還原位址給給擠掉無法還原...但即然但都要RESET了之前的位址我想也沒必要還原了吧...
我想唯一有問題的是,沒有經過retfie離開中斷副程式,以後就無法再中斷了....^^".
所以我想如果INT的中斷不要打開,當INTF=1時就goto init應該就OK了.

BTFSC INTCON,INTF
GOTO INIT

發表於: 2007/8/15 14:08
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#17
中級會員
中級會員


查看用戶資訊
從以上前輩所給的這些說明
,我想我的問題應該足以解決.
謝謝大家熱心幫忙.
thnanks

發表於: 2007/8/15 13:51
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#16
版主
版主


查看用戶資訊
直接 goto reset 會有堆疊爆掉的問題,因為無法調整到堆疊的頂點就 goto reset 堆疊的指標就無法歸零。

PIC18Fxxxx 因為有 resrt 指令,所以很簡單,只要直接執行reset 指令就可以了。PIC16Fxxx 若要完全 Reset MCU 就只能用 MCLR pin,用 Watch-Dog Timer 來 Reset 只能將 PC Counter 歸零,要注意一下 RAM 及 周邊暫存器大部分是不受 WDT 的影響。詳細請參閱 Data Sheet 有關 各種 Reset 後周邊暫存器的初始設定為何。

發表於: 2007/8/15 10:46
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#15
中級會員
中級會員


查看用戶資訊
參照:

yiming 寫到:
請教如果要在INT發生時讓reset功能動作的方式,這個問題很難嗎???
INT發生不就到中斷副程式,goto 程式(主程式??)起始位址不就好了.


你說的應該是在intrrupt subroutine執行
goto start

發表於: 2007/8/15 9:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#14
資深會員
資深會員


查看用戶資訊
yiming的方法也很好,但是並非實質的Reset,此種作法在特殊暫存器及一般暫存器中都還儲存原來的值,所以使用上要注意。我的作法會在初始化時,用迴圈把所有的暫存器都清除一次,以確保使用上比較不易產生Bug。

發表於: 2007/8/15 9:11
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#13
資深會員
資深會員


查看用戶資訊
請教如果要在INT發生時讓reset功能動作的方式,這個問題很難嗎???
INT發生不就到中斷副程式,goto 程式起始位址不就好了.

發表於: 2007/8/15 8:47
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#12
資深會員
資深會員


查看用戶資訊
方法1.按下按鍵進入睡眠,等待下次按下時喚醒...

那還不簡單,就判斷該按鍵被按下的時候,將I/O狀態設定至適當狀態(最省電的狀態,包含外部不必用的電路電源關閉),接著設定喚醒條件,如Interrupt On Pin Change啟動,再執行SLEEP指令就好了,只要等到設定的Pin狀態一變化就會被喚醒,IC的SPEC裡都有Demo Code可以參考。

發表於: 2007/8/14 17:21
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#11
中級會員
中級會員


查看用戶資訊
參照:

jubel 寫到:
你用的不是PIC18對吧?
要不要改用PIC18試試?
PIC18有SLEEP跟RESET的指令


16f不是也有sleep??

發表於: 2007/8/14 16:57
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教如果要在INT發生時讓reset功能動作的方式
#10
資深會員
資深會員


查看用戶資訊
你用的不是PIC18對吧?
要不要改用PIC18試試?
PIC18有SLEEP跟RESET的指令

發表於: 2007/8/14 16:54
木亟缶夬金戔
彳艮缶夬金戔
走召缶夬金戔
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------