今、STM32F103C8T6というマイコンを使ったプログラムの開発の為の環境整備などをしている所なんだけど。。
STM32F103C8T6開発ボードをアマゾンで購入
STM32CubeIDE、STM32CubeMX、STM32CubeProgrammer、ST-Link Utilityなどをダウンロードして一見順調に見えてた環境整備。。
本格的なプログラムを組む前に俗に言うLチカプログラム(LEDを点滅させる単純なプログラム)を作ってみることにした。。
そしてここから準備作業が泥沼に嵌ってしまった。。。
各ポートの設定をしてソースコードを追加して、コンパイルまではすんなりいったが、マイコンにプログラムを書き込む段階でエラーが出て書き込むことが出来ない。。
ネットでこんな不具合出てるかと調べたらSTM32F103C8T6の互換品としてCTM32F103C8T6と言うのが有ってデバイスコードが違うから失敗するみたいな書き込みを発見。。
開発ツールにスクリプト追加してデバイスコードをごまかして書き込めるようにしたが、プログラムが走らない。。
それで、開発ツールをArduinoIDEにしてみたり、PlatformIOにしてみたり。。
試行錯誤繰り返すこと1週間。。まったく動く気配が見えないでいた。。
そんな折ST-Link Utilityを使って書き込んでいるコードと元のコードが一致するか調べようとマイコンに接続してみた時、DeviceがSTM32F1シリーズで無いことに気が付いた。。
マイコンのシルクは間違いなくSTM32F103C8T6なのにSTM32F05x/F030x8となっている。。
もしかしたらと思って設定をSTM32F05xにしてLチカプログラムを作成して書き込んだらLEDの点滅が指定通りの動き。。
しかも開発ボードの故障かなと買ったボードも同様のもの。。
マイコンの中身が違うという恐ろしい状態。。
今回買ったSTM32F103C8T6開発ボードは普通にアマゾンで買えるんだから恐ろしい。