LinuxマシンにSTM32CubeIDEをインストールしたので環境設定と動作確認をしました。
新規にC言語のプログラム開発を行う場合、「STM32CubeIDE」で新規プロジェクトを起こせば使えることはまず間違いない。(そこに疑問はありません)
私が確認したいのはこれまでに「SystemWorkbanch for STM32」で作ってきた大量のプログラムを修正することなく「STM32CubeIDE」に移行できるのかという事です。
多少の操作方法の違いは私が慣れれば問題なし。
ただし、昔作ったプログラムを「STM32CubeIDE」に引き継ぐ為に、いちいちプログラムソースを修正する必要が出てくるとなればすごく手間だしミスをしてしまうリスクがあり、最悪動作させられないなんてこともあり得ます。
過去の経験談で言えば、同じ「SystemWorkbanch for STM32」なのですが、何の気なしに「STM32CubeMX」の開発ターゲットMCU(CPU)のSoftware Packagesの新バージョンが出ていたのでバージョンを上げたらHALライブラリの仕様が一部変わっており、コンパイルエラー。
詳しく調べたらCAN通信関数の引数がそのバージョンで大幅に変わっており、プログラム修正にすごく時間がかかりました。
なので、昔作ったプログラムの開発環境は、可能な限りその当時の環境(Software Packagesのバージョンも含めて)をキープしておきたいんです。

ここで、結論を先に書いてしまうと移行はできました、「コンパイル」「ブレークポイント設定してブレークさせる」「1ステップトレース」「変数の数値を表示させる」等々、正常動作を確認できました。
ただ、移行作業でFreeRTOSの初期設定ヶ所が綺麗に消えておりmainプログラムの手直しが必要でした。
そして、ディレクトリ(ホルダー)の構成レイアウトが少し変更になっているのでかなり慎重に移行作業をする必要があります。
現在動作確認環境が用意できない昔作ったプログラムは、安易に「STM32CubeIDE」に移行させない方が良いです。


「STM32CubeMX」と「SystemWorkbanch for STM32」で作った開発環境を「STM32CubeIDE」に移行する手順を書きます。

1)「STM32CubeMX」の起動です。
スタート(コーヒーカップアイコン)--->開発--->STMicroelectronics STM32
を押す。



作業ディレクトリ(ホルダ)の確認です。
このままで問題有りませんが必要なら変更してください。


これで、「STM32CubeIDE」が起動します。


2)何はともあれ、STMicroにインターネットからログインさせます。
画面上部右寄りにある「myST」を押してSTMicroのユーザー登録した時のメールアドレスとパスワードを打ち込み、「Remember me on this computer」にチェックしておく。

 



3)「STM32CubeMX」と「SystemWorkbanch for STM32」で開発していた当時、「STM32CubeMX」でプログラムソースを自動作成させた時のSoftware Packages集のバージョンと同じバージョンのSoftware Packagesを読み込ませておく必要があります。
 画面上部右寄りの「help」---->「Manege Embedded Software Packages」


使用するSTM32のMCUシリーズのSoftware Packagesのバージョン番号にチェックし「install」を押してファイルをダウンロード。

 

※追記2024/03/08: 移行元のプロジェクトバージョンはプロジェクト名の「.ioc」ファイルをテキストエディタを開くと中ほどに書いてあります。

 



4)ファイル(File)--->New--->STM32 Project from an Existing STM32CubeMX Configuration File(.ioc)
 で「STM32CubeMX」と「SystemWorkbanch for STM32」で開発していた当時の.iocファイルを読み込む。

 

「File:」で.iocファイルを指定します。
 ここで、開発プロジェクトのディレクトリ名でもある「Project Name」を変更することもできます。
 入力が終わったら下にある「Finish」を押します。
 

※追記2024/03/08: 左側に見える「Project Explorer」に表示されているプロジェクト名と同じ名前を「Project Name」に指定すると「Finish」が押せないので注意。
 

 ちなみに、Newの下にあるimportでも同じことができます。



5)開発当時のSoftware Packagesバージョンで引き継ぐか最新版のSoftware Packagesに移行するかの選択です。
 開発当時のSoftware Packagesバージョンで引き継ぐので「Continue」を押します。




あとは、開発環境の移行が終わるのを待ちます。
移行が完了したら移行前のmain.cを見ながら移行後のmain.cの手直しをしてください。
main.cは作業ディレクトリの下の開発プロジェクト名ディレクトリの下のCoreの下のSrcの下にあります。


移行が完了したらSTLINK V2をPCのUSBポートに刺してデバックモードでコンパイルしてください。
ここからはEclipseの環境です。
説明を書くと膨大になるので割愛します。

移行サンプルとしてSTM32F401-Blackpillボードにiic接続した0.96インチOLED(有機EL)表示機に安価な中華製STLinkV2のコピー品をつなげてデモプログラムを走らせている様子です。




Windows10のPCで「STM32CubeMX」と「SystemWorkbanch for STM32」で作った開発環境をKONA-Linux6.0に導入した「STM32CubeMX」に移行。
Linux環境にSTLinkV2デバッガをつないでデバッグ動作確認できました。
ただし、プログラムソースの一部修正が必要という結果でした。