新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM8 仿真跑飛 swim comm timeout

STM8 仿真跑飛 swim comm timeout

作者: 時(shí)間:2016-11-10 來(lái)源:網(wǎng)絡(luò) 收藏
跑飛原因就很多了,我說(shuō)說(shuō)程序沒(méi)問(wèn)題,莫名其妙跑飛的情況。

為啥說(shuō)程序沒(méi)問(wèn)題呢?首先是編譯通過(guò)啦,其次我們也正確的配置寄存器了,但是還跑飛了,蛋疼。

本文引用地址:http://butianyuan.cn/article/201611/317108.htm

特別是相對(duì)于STM8S103F3這些只有少的可憐的8K存儲(chǔ)空間的單片機(jī),真是蛋疼啊,好了不廢話了,據(jù)我的經(jīng)驗(yàn)總結(jié)一下:

用IAR平臺(tái),COSMIC的很爛,勸君莫用。

1、debug模式優(yōu)化設(shè)置為none,此種情況下編譯并運(yùn)行還跑飛的話,可能是Option byte設(shè)置問(wèn)題。比如你用了TIM2_CH1的PWM功能,但是你的Option byte沒(méi)設(shè)置,那么跑起來(lái)會(huì)飛掉(我第一次遇到這么奇葩的單片機(jī))

2、如果程序真的很大,要把優(yōu)化設(shè)置為middle,那么就要小心了。IAR的優(yōu)化有點(diǎn)小問(wèn)題,雖然middle能編譯通過(guò),但是下載下去有可能是跑飛的,這個(gè)要特別小心。解決方法是優(yōu)化代碼,并盡可能在優(yōu)化為none的情況下出來(lái)一個(gè)可用版本,然后再慢慢加其他代碼,不然后面自己死的很難看!



關(guān)鍵詞: STM8仿真跑飛swimcommtimeou

評(píng)論


技術(shù)專區(qū)

關(guān)閉