2026年7月31日
024-2.SPIKE-RT入門 第5回目 「テーブルジャンプを使う」
この記事では「レゴ エデュケーションSPIKEプライム(以下、SPIKE)」で動作する「SPIKE-RT」の使い方を紹介します。
ここではアフレルが販売している教材「レゴ エデュケーションSPIKEプライム C言語プログラミングブック」で配布しているSPIKE-RTの開発環境を使っています。同製品の紹介ページは次の通りです。
https://afrel.co.jp/product/spike/c-language/
(文/松原拓也)
◆ テーブルジャンプとは
SPIKE-RTはC言語でプログラムを記述しますが、「せっかくならC言語のメリットを活かしたい」と考えて、思い付いたのが「テーブルジャンプ」です。テーブルジャンプというのは、テーブルを参照して処理を飛ぶ技術のことです。
テーブルジャンプを使った実験プログラム、その1です(tablejump1)。 プログラムをビルドして、ラージハブに書き込むと実行されます。実行すると、ラージハブのライトマトリクスに「1」~「3」の数字が表示されます。数字は一定時間おきに切り替わります。 ライトマトリクスの表示は3つの関数で行っています。呼び出す関数の名前はテーブル(func_table)に書き込んでいます。これを参照して、関数を呼び出しています。
テーブルジャンプを使うと、書式がややこしくなってしまいますが、番号で関数を呼び出すことができます。似たようなことはif文やswitch文でも出来ますが、分岐が多くて規則性がある場合なら、テーブルジャンプを使った方が効率的です。
◆ 構造体を使う
今回作成したプログラムはGitHubで公開しています。
プログラムを実行中の様子
当ブログの内容は、弊社製品の活用に関する参考情報として提供しております。
記載されている情報は、正確性や動作を保証するものではありません。皆さまの創意工夫やアイデアの一助となれば幸いです。





