• slider image 442
  • slider image 497
  • slider image 498
  • slider image 499
  • slider image 500
  • slider image 502
:::


Browsing this Thread:   1 Anonymous Users






Re: 關於debug的心法
#6
資深會員
資深會員


查看用戶資訊
土法練鋼 :
在你認為有問題的地方 , 加個判斷式 , 如答案不正確 就亮個 LED 並進入 死迴圈

發表於: 2009/5/14 1:26
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於debug的心法
#5
新會員
新會員


查看用戶資訊
瞭解了,非常謝謝三位大大地指導~小弟趕快再去研究一下~

發表於: 2009/5/12 21:47
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於debug的心法
#4
版主
版主


查看用戶資訊
使用 PIC16F 時,呼叫副程式最多只能到七層,一定要保留一層給中斷使用。檢查一下最多時候呼叫了幾層?

試著在 GOTO Label & CALL Lebal 指令前加個 PAGESEL Label 的Page Selection 的虛指令。

發表於: 2009/5/12 13:08

Edited by Ryang on 2009年05月13日 10:21:55
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於debug的心法
#3
資深會員
資深會員


查看用戶資訊
參照:

colinhu 寫道:
我是用16F883+組語開發的,因為功能很多,所以用了很多中斷,而且程式也很龐大。
最近實際測試時,發現跑了3、40次,就會當機一次,說久不久,說常當也沒有,用debug去看,當機有2種狀況:
1.程式一直在幾個return跳來跳去,就是跳不出來
2.程式跳到program memory沒程式的區段,停在那邊

但用debug模式去抓問題,又不容易找到,所以我想應該是某個地方有問題,可能是page或bank的問題,也可能是程式call太多次的問題,但真的很難抓,若用debug單步執行,系統就一直很正常,根本就找不到錯誤,再加上中斷的程式,ICD2真的很難找到是哪裡錯了。

所以想問一下各位大大,有沒有方法可以找到問題,小弟在此先感謝了~


呵,我是採用16f886+組語 程式也不小,中斷也用了幾個,唯一和你不同的事一開始我就先向代理商借了一個ICE2000的開發模組,因為我受不了ICD2的龜速和限制,加上公司的開發時間短的可憐...,一個好的工具加上一些除錯的技巧可以讓事情變的簡單許多哦...

若用debug單步執行,系統就一直很正常....我想你的問題有可能出在中斷,因為ICD2用單步時好像不會產生中斷,要free run才會產中斷...

祝你好運了

發表於: 2009/5/11 8:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於debug的心法
#2
資深會員
資深會員


查看用戶資訊
一、call 太多 stack overflow ,你可在一開始就做 call
強迫stack 減少,再來驗證。
如果你的程式會 發生 stack overflow ,那減少一個或兩個三個
會讓問題更容易發生,也更容易找出問題點。

二、你的問題應該是 page 切錯了。當程式跳不出來時,看list file + stack 及 register 的內容,應該就能找出是那切錯了。

可能 call 另一個 pager 的程式 ,goto 另一個pager
查表,register 被更改 大概會出錯就是這四種 。

發表於: 2009/5/11 2:34
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


關於debug的心法
#1
新會員
新會員


查看用戶資訊
我是用16F883+組語開發的,因為功能很多,所以用了很多中斷,而且程式也很龐大。
最近實際測試時,發現跑了3、40次,就會當機一次,說久不久,說常當也沒有,用debug去看,當機有2種狀況:
1.程式一直在幾個return跳來跳去,就是跳不出來
2.程式跳到program memory沒程式的區段,停在那邊

但用debug模式去抓問題,又不容易找到,所以我想應該是某個地方有問題,可能是page或bank的問題,也可能是程式call太多次的問題,但真的很難抓,若用debug單步執行,系統就一直很正常,根本就找不到錯誤,再加上中斷的程式,ICD2真的很難找到是哪裡錯了。

所以想問一下各位大大,有沒有方法可以找到問題,小弟在此先感謝了~

發表於: 2009/5/9 17:18
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... ]

教育訓練中心

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