[PIC16F18345] ISR issue when boot to APP FW from bootloader

作者 tienhaha 於 2017年09月12日 13:41:57
Hi 各位前輩

想請問一個關於ISR的問題
我這邊在實作Bootloader和APP FW(兩個專案)
我有將Microchip的fw download 的protocol修改掉
基本上從bootloader跳到APP FW是用MCC產生的語法去跳到APP FW
NEW_RESET_VECTOR1 = 0x800
/* Execute to current FW */
STKPTR=0x1F;
asm ("pagesel " str(NEW_RESET_VECTOR1));
asm ("goto " str(NEW_RESET_VECTOR1));

然後我的APP FW 的code offset也設定成0x800
因為我APP FW有使用interrupt,
這時候從bootloader跳到APP FW會失敗
失敗的狀況是會跳回到bootloader
如果APP FW沒有啟動interrupt, jump到APP FW
就可以執行成功

想請問的是
在bootloader是不是除了goto 0x800之外還, 還要作什麼動作?
才可以讓APP FW可以使用interrupt呢?

Thanks
Tien

來自: http://www.microchip.com.tw/newbb/viewtopic.php?forum=1&topic_id=21614&post_id=76720