STM32で「書き込み完了」と出たのに、プログラムが動きません

このページをAIに渡す

いつものAIに相談

Gemini・その他のAI

このページの情報を添えて、仕組みや使い方、つくりたいものを相談できます。

Geminiを開く

質問文をコピーして、Geminiの入力欄に貼り付けてください。

質問文を確認

AP03では、書き込み時と実行時でスイッチの位置を切り替え、切り替え後にリセットします。 次の順序を確認してみてください。

  1. シリアルモニターなど、同じポートを使うアプリを閉じます。
  2. AP03をProgram側にし、リセットしてから書き込みます。
  3. 書き込みツールのログで、接続・書き込み・検証の成功を確認します。
  4. 完了後にRun側へ戻し、もう一度リセットして起動します。

Arduino IDEでは完了表示が出ても、ログ下部にTimeout error occured while waiting for acknowledgementが残る場合があります。PlatformIOでもSUCCESSだけで判断せず、STM32CubeProgrammerの検証結果を確認すると切り分けやすくなります。

スイッチの場所とログの例は、Arduino IDEの手順またはPlatformIOの手順を参照してください。シリアル出力だけが見えない場合は、モニターのポートと速度がプログラムのSerial.begin()に合っているかも確認します。

この手順はAP03向けです。ほかのMCUでは、その型番の書き込み手順をご覧ください。

リーフ写真
技術資料・サンプル・Q&Aから探せます