• slider image 442
  • slider image 477
  • slider image 479
  • slider image 480
  • slider image 481
  • slider image 482
:::


Browsing this Thread:   1 Anonymous Users






關於 static 的怪問題請教
#1
新會員
新會員


查看用戶資訊
使用 PIC18F6620

我把主要的問題簡化成下面幾行程式

========================

signed long int A; //全域變數

void Function(static signed long int B)
{
A -= B;
}

=========================

執行後,發現 A 的值不符合預期的計算結果,爆掉了

但是將 A -= B 改成 A = A - B 之後 卻可以正常運作

在我的理解裡這兩行是一樣的意思

想請問問題到底出在哪邊 ?

至於參數用 static 的原因是希望能省下一些 program memory

因為目前程式空間吃緊到必須用這種方法減低 Code Size

感謝指導~

發表於: 2008/10/29 18:08
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於 static 的怪問題請教
#2
版主
版主


查看用戶資訊
"A -= B;" : 要去試一下才知道問題所在。

"減低 Code Size"
使用 Global Variable 是種方式,減少參數的傳遞儘量使用 Global Variable 來傳值。

啟動 最佳化 及使用 Extend Instruction Sets 來編譯,不過這些功能都只在正式販售的 C18 才有支援。Student Ediction Version 以上功能 30天後就會被 disable.

18F6620 建議改成 18F6622;64KB 程式碼要是真的塞不下的話,考慮一下使用 PIC18F6627 功能、腳位相容,程式空間變成96KB。

發表於: 2008/10/30 15:21
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... ]

教育訓練中心

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