mbedのオンラインコンパイラで作成したバイナリが動作しない(Nucreo F303K8 )


以前は問題なく動いていた、Nucreo F303K8のサーボモータ制御プログラムが動かなくなった。

プログラム(main.cpp)は変えていない。

以前コンパイルした動くバイナリと今コンパイルした動かないバイナリを確認するとそれぞれ24k、28kと大きさが異なっていた。

revisionボタンを押し、mbed libraryのバージョンを確認すると、anna bridgeさんというユーザーが更新した165であった。

少しづつバージョンを古いものにしてコンパイルしていった(バージョンを選択して切り替えボタンを押して変更)

だんだん作成されるバイナリの大きさが小さくなって行ったが動作しなかった。

バージョン157で24kになり、macのcmpコマンドで比較すると以前コンパイルしたものと同じ内容のバイナリができ、動作した。

バージョン157を登録したユーザーはmbed official。やはり安定して動作するのであろうか。ただ、2017年12月とちょっと古いが。

同じような現象で悩んでいる方は、mbed libraryのバージョンを戻してみると良いかもしれません。