JAJU917 January 2024
プロジェクトの一般構造を、図 4-3 に示します。デバイス ペリフェラルの構成は、C2000Ware DriverLib に基づいており、SysConfig ツールを使用して生成されます。SysConfig ツールは、クロック設定とリンカ コマンド ファイルも生成します。これによって、SysConfig を使用して簡単に移行を行うことができます。必要に応じて、SysConfig のデバイス設定を変更し、ピン構成を再マッピングすることで、このデザインを別の C2000 マイクロコントローラにポーティングできます。リファレンス デザインを別のモーターに移行したり、システムを異なる条件で実行したりする場合は、モーター パラメータ、保護スレッショルド、その他の設定は settings.h で変更できます。
図 4-4 に、プロジェクト ソフトウェアのフロー図を示します。メイン C28x CPU によって、デバイスとグローバル変数の初期化、ADC オフセットの較正が行われ、最終的に FreeRTOS スケジューラが初期化されます。スケジューラが初期化されると、メイン CPU は他のタスクを実行することはありません。それ以降のすべてのタスクは、FreeRTOS コンテキストで実行されます。このソフトウェアには、制御ボード上で 2 つの LED を切り替える 2 つの FreeRTOS タスクがあります。そのうちの 1 つのタスクはフォルト ステータス フラグもチェックし、clearFaults が有効になっている場合はリセットします。 必要に応じてタスクを追加してください。モーター制御アルゴリズムは CLA、特に CLA タスク 1 でのみ実行されます。構成が完了すると、CLA タスクは ADC の変換終了 (EOC) によってトリガされます。CLA と CPU 間のデータ交換は、CPU-CLA または CLA-CPU のメッセージ RAM、または共有データ RAM を使用して行われます。