複数タスクの切り替えその2【STM32とFreeRTOS】

タスク切替とUSART通信を組み合わせたプログラムで、外部から与えたコマンドコードが一致するかしないかでタスクの実行、停止を管理しているサンプルプログラムです。

めかのとろ

あらかじめタスク切り替え用にコマンドコードを設定しておき、外部から与えたコードが一致したときにコマンドコードで指定したタスクを実行し、他のタスクは停止するプログラムです。

コマンドによるタスクスイッチ
めかのとろ

今回は入力スイッチの代わりにコマンドによりタスクAとタスクBを切り替えます。コマンド文字列”TaskA@”を与えるとタスクAが、”TaskB@”でタスクBに切り替わり画面に表示します。

コラム

コマンドの語尾に'@'があるのは入力文字列の終端を認識するためです。'@'のかわりにエンターキー(CR)入力を終端とできますが、この場合のアスキーコードは0x0Dです。