サイト内検索

Silicon Labs EFM8/C8051:main()が実行されません。リセットが繰り返して発生しているようです。どのように対処すれば良いですか?

EFM8/C8051

Watchdogタイマ(WDT)によるリセットが発生していることが疑われます。
KEIL社コンパイラを使用している場合には、main()が実行される前にSTARTUP.A51による初期化が行われます。この初期化ルーチンの中ではRAMの初期化も行っているのですが、RAMサイズが大きなMCUの場合は初期化に時間がかかります。Watchdogタイマはデフォルトで有効になっていますので、初期化の最中にWatchdogタイマがオーバフローしてリセットが発生してしまいます。
対策としては、STARTUP.A51の冒頭でWatchdogタイマを無効にしてしまうことです。
詳細につきましては、SiliconLabsのコミュニティサイトをご参照ください。

経験豊富なFAEが
無料でご相談を承ります。

特定製品の仕様からパーツの選定まで、当社のFAEが皆様のテクニカルなお悩みに無料で回答します。ぜひ、お気軽にご相談ください。