看板 ASM 關於我們 聯絡資訊
不好意思 我最近在試AVR的晶片 但我發現他的clock設定很複雜 需要去調熔絲 但我照我朋友的說去 http://www.engbedded.com/fusecalc 找我的chip型號和clock來源的熔絲設定 我也有照做 目前的熔絲設定(用avrdude看的) http://goo.gl/4DQj7d 我發現我跑很多程式的delay time都會怪怪的 像是我試著用_delay_ms(1000); 居然可以跑到5秒以上 我一直再懷疑是不是他用到內部的RC clock 還是真的是avr的C語言會產生那麼大的誤差(函式呼叫或迴圈的影響) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.122.216.115 ※ 文章網址: http://www.ptt.cc/bbs/ASM/M.1397335242.A.DB6.html
WolfLord:就算用RC也不會差到5倍,你的C環境設定是不是忘記改 04/13 04:59
WolfLord:clock頻率了? 04/13 04:59
alibuda174:使用_delay_ms前 「應該」要先設定F_CPU 我也沒經驗 04/13 08:34
alibuda174:或許可看看這篇討論 http://goo.gl/ZtMwE0 04/13 08:35
easypro:用avr studio去調fuse很快就能調好 F_CPU部分要先設定好 04/13 12:01
easypro:avr C code不會產生太大誤差 只有震盪器設錯才會如此 04/13 12:02
soheadsome:我有#define 16000000UL在最前面 我的OSC是16MHZ的 04/13 14:30
alibuda174:16000000UL? 可是你的fuse設定是8Mhz/8 = 1MHz吧? 04/13 15:55
我剛剛查了一下 http://goo.gl/3azXkP 那個8- MHZ不是代表8MHZ以上的嗎? 他的熔絲設定 http://goo.gl/6C1sxU ※ 編輯: soheadsome (140.122.216.115), 04/13/2014 17:38:50
alibuda174:5E D9 FF? 我怎麼記得原本不是這些設定? 04/13 21:22
alibuda174:可是你有勾CKDIV8,頻率會被除8吧 04/13 21:23
soheadsome:原來如此 我晚點試試 謝謝大大<(_ _)> 04/13 22:22