RX歴はそれなりに長く、他社ARMでの開発も長いですが、今日、FSPを初めて使いました。RAシリーズの開発の予行練習のためArduino UNO R4のL LEDを使ってLチカテストをしました。
e2studio は2024-07 FSP 5.4.0 GCC ARM Embedded 13.2.1.arm-13-7
直近の最新版です。
UNO R4のLEDはGTPIOC3Aのピンに割り当てられているのでそのままTimerスタック設定をしてビルド、実行するとbsp_clocks.cの中のFSP _HARDWARE _REGISTER _WAITマクロで使わないPLLとRTCクロックの待ちに入ってしまいます。UNOは設計上、内部クロックを使うことになっているので、Clocksタブの設定は
PLL Src: Disabled
Clock Src: HOCO
HOCO: 48MHz
としました。また、Pinsタブ設定のSystem:CGCも外部クロックは使わないようにしています。
上の設定で生成されるコードはPLLを使わないとかRTCも使わないということが反映されていないのですが、そういう開発環境の仕様ですか? BSP_FEATURE_CGC_HAS_PLLとBSP_FEATURE_CGC_HAS_SOSCというマクロが1で定義されているのが原因と思いまして、0に変更してビルドしたものを実行すること思った通りのLチカ動作になりました。FSPではボードの設定は自分でbsp_feature.hに反映するというのが作法ということでしょうか?それともGUIのどこかで設定する場所があるのでしょうか?
Configuration.xmlのBSPタブ
の、プロパティタブ
発振器を使うか否かの設定があります。
(デフォルトは、"Populated"で、発振子がつながっていない時は、発振待ちで無限ループします)
ありがとうございました。
やっとスッキリしました。