Re: PICC complier 問題??
|
||||
---|---|---|---|---|
高級會員
|
感謝版大還有Eigen的幫忙...
的確是版本太舊的問題.. 排除9.60 complier的錯誤訊息後.. 連原來切bank的問題也都ok了.... 謝謝各位了...
發表於: 2007/7/31 10:07
|
|||
|
Re: PICC complier 問題??
|
||||
---|---|---|---|---|
版主
|
Hi-Tech PICC 在編譯 PIC16 系列時,應該不用考慮程式頁(Page) 的問題,但變數要放在 BANK0 以外的地方要自行指定,PICC 會自動切換BANK的。
你先把中段關掉後再執行程式看看會不會有錯誤發生。
發表於: 2007/7/31 8:57
|
|||
|
Re: PICC complier 問題??
|
||||
---|---|---|---|---|
高級會員
|
上面的問題..在呼叫一個副程式時,會直接跳到中斷執行..
怪的是..返回的位址也錯亂掉..看stack也才4層而已... 就這樣..執行到呼叫就跳中斷...中斷後又回到while迴圈啟始.. 感覺就好像page沒切好..完全搞不清楚是什麼情況... 找了v9.60的版本..連要complier過都有一堆看不懂的錯誤.. 真是一波多折..想想還是改組語好了.....
發表於: 2007/7/31 2:51
|
|||
|
Re: PICC complier 問題??
|
||||
---|---|---|---|---|
高級會員
|
難道...用 c 也要自己切頁嗎????....
把幾段程式拿掉..complier $0186 - $07FF程式執行就ok... 把程式加入後..$0186 - $0830..呼叫副程式會亂跳? 真的是...太莫名奇妙了...我電腦是中毒了嗎?? C18好用多了..microchip怎沒出C16... Program ROM $0000 - $0181 $0182 ( 386) words Program ROM $0186 - $0830 $06AB ( 1707) words ****************************************** $082D ( 2093) words total Program ROM Bank 0 RAM $0021 - $006D $004D ( 77) bytes Bank 0 RAM $0070 - $0074 $0005 ( 5) bytes $0052 ( 82) bytes total Bank 0 RAM Bank 2 RAM $0120 - $0124 $0005 ( 5) bytes total Bank 2 RAM Bank 0 Bits $0100 - $0103 $0004 ( 4) bits total Bank 0 Bits Config Data $2007 - $2007 $0001 ( 1) words total Config Data Program statistics: Total ROM used 2093 words (25.5%) Total RAM used 88 bytes (26.2%)
發表於: 2007/7/30 23:16
|
|||
|
Re: PICC complier 問題??
|
||||
---|---|---|---|---|
版主
|
PICC 下直接切換 BANK 我是沒試過,不過 PICC 對變數的宣告是可以指定要放在那一個 BANK 的,有關 變數的 BANK指定宣告方式可以參考Hi-Tech PICC Workshop 的講義,也有些BANK 切換的練習。
發表於: 2007/7/30 16:20
|
|||
|
PICC complier 問題??
|
||||
---|---|---|---|---|
高級會員
|
105: //****************************//
void test (void)
唉....找問題找到快吐血了...找到後...還真是欲哭無淚.... 使用hi-tech c v8.05, chip 16f946 bcnt 宣告在bank0.... fTuneSel = 1時... 執行完TuneLvLed(); 竟然沒有切回bank0? ... 突然..不知道該怎麼繼續寫下去... 感覺...這是 Complier 的 Bug...還是我沒設定好參數?? 還是這個版本的complier還沒支援到16f946?? 是不是有前輩可以提供較新版本供測試....感謝~
發表於: 2007/7/30 15:17
|
|||
|