PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
ASM
[問題] PIC使用c30的__delay_us()
作者:
qeagle
2013-08-17 02:40:11
我發現使用在c30的c compilier上__delay_us()函式時
輸入是const像 __delay_us(20)就正常
換成變數像
delay=20;
__delay_us(delay)
延遲時間就會爆增
不知道為什麼
作者: ksmrt0123 (ksmrt)
2013-08-19 01:30:00
用變數需要run time才會算出真正的delay數值, 細節看一下 libpic30.h 就知道
作者:
qeagle
2013-08-21 14:38:00
謝謝你的回應,但我看它的說明只有提到定義FCY這個值會影響時間FCY是外部振盪器頻率,並沒看到用常數與變數有差別?我自己懷疑是否巨集造成,但也看不出來
作者: ksmrt0123 (ksmrt)
2013-08-22 00:15:00
那你要看一下compiler optimization的 constantfolding 與 constant propagation
http://en.wikipedia.org/wiki/Constant_folding
你用的compiler可能沒有做constant propagation, 或是條件不足所以沒做propagation
作者:
qeagle
2013-08-22 19:07:00
哇..這個就太深了,這個專有名詞我都沒看過,但我想程式有沒有做佳化..應該不會讓原預期是us的delay功能,變成ms等級吧
作者: ksmrt0123 (ksmrt)
2013-08-23 01:34:00
那就... 直接看編出來的asm檔的差異吧
繼續閱讀
[問題] 想請問有關於 altera license
kinkipikachu
[問題] 計算輸出的頻率
GooLoo
[問題] Menu設計
hogiking
Re: [討論] 同樣的程式碼 卻不同的結果@ @
alexanjou
[討論] 同樣的程式碼 卻不同的結果@ @
alexanjou
[問題] Arduino控制大量LED的方式
Harrychou
Re: [討論] ARDUINO有什麼特別嗎?
deo2000
Fw: [問題] 如何開發出編譯器 ?
EdisonX
[討論] ARDUINO有什麼特別嗎?
qeagle
[請益] 音訊效果器實作
peng978
Links
booklink
Contact Us: admin [ a t ] ucptt.com