*

C言語でEV3開発(7)

公開日: : 最終更新日:2015/03/29 マインドストーム/EV3, 開発

どもです。
今回のエントリーでは、いよいよEV3を動かしていきます。
新しい環境に対して、最もよく作成されるプログラムは、コンソールアプリであれば”Hello,world.”、組み込みマイコンであれば、”LEDの点滅”(Lチカ)です。
なので、ここでも、この基本的なプログラムから紹介します。

今回のエントリーでの”Lチカ”では、EV3のInteligentBox上のLEDを点滅させます。
また、単に点滅させるだけではなく、都度色を変更していきます。
なお、これまで紹介してきたUbuntu/Eclipseでのクロス開発環境を前提として、本文を作成します。

(1). ポートのオープン
InteligentBoxのポートをオープンします。
ポートのオープンのためには、open関数を使用します。
このとき、ポート名には、”/dev/lms_ui”を指定します。これが、InteligentBoxのポートです。
コードは、以下。

(2). LED
LEDを光らせるためには、以下のコードを実行します。

変数 color で、表示する色とパターンを設定します。
設定できる色は、緑・赤・オレンジの3色。
また、パターンは、点灯・点滅・短時間での点滅の3種類になります。

(3). ポートのクローズ
close関数を使用します。
これは、必ず実行しなければなりません。

※しかし、現状のInteligentBoxの動作では、問題があります。
それは、
「ポートを閉じても、InteligentBox本体のLEDの表示はリセットされない」
というものです。
つまり、close関数を実行する前のLED表示が「赤色」の「点滅」であった場合、close関数が呼ばれた後もInteligentBoxのLEDの表示状態は保持されてしまいます。
対策としては、プログラム終了時に必ず表示を消す、つまり黒に戻しておくようにします。

以上、これらの処理を行うプログラムを作成したので、全文を載せておきます。

実際に動かした様子は…そのうち動画で載せたいなぁ…。
ではっ。

2015/03/29:追記
・ループを抜ける際に、LEDを黒に戻す処理をコードに追加。
・上記サンプルコードを実際に動作させた動画を追加↓

関連記事

toppers

C言語でEV3開発(23)-モーターの性能確認

どもです。 今回は、EV3に付属しているモーター(Lモーター/Mモーター)の性能について調べてみた

記事を読む

toppers

C言語でEV3開発(27)-EV3にヒステリシス処理を実装してみた

どもです。 今回は、モーターから読み出した値に対するヒステリシス・フィルター処理です。 0.

記事を読む

no image

C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成したアプリをPC上から操作するため

記事を読む

MindStormControl_SprachScreen

EV3開発サポートツール(2)-C#のユーザーコントロール開発(2つ目)

どもです。 前回に引き続き、今回もC#/WPFでの独自UI(ユーザーコントロール)の作成についての

記事を読む

no image

C言語でEV3開発(12)-opOUTPUT_TIME_POWERコマンド

どもです。 今回のエントリーでは、これまた前回に引き続き、モーターを動かすためのコマンドについて書

記事を読む

no image

C言語でEV3開発(4)

どもです。 今回のエントリーは、前回のエントリー内容/EclipseでEV3の実行ファイルをビルド

記事を読む

google_test

C言語でEV3開発(6)

どもです。 今回のエントリーは、前回のエントリーの続き、google testでの単体テスト環境に

記事を読む

google_test_top

C言語でEV3開発(5)

どもです。 今回のエントリーは、前回のエントリーでちくっと触れた、「単体テスト」について、です。

記事を読む

no image

C言語でEV3開発(21)-モーター出力の制御

どもです。 前回は、超音波センサから前方障害物との距離を取得し、それを元に安全状態を判断する、とい

記事を読む

toppers

C言語でEV3開発(20)-超音波センサと安全状態

どもです。 前回は、BluetoothでPCとEv3を接続してコマンドの送受信について書きました。

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

toppers
C言語でEV3開発(28)-EV3の移動距離を計算できるようにしてみた

(テーマ) C言語でEV3開発(28)-EV3の移動距離を計算できる

toppers
C言語でEV3開発(27)-EV3にヒステリシス処理を実装してみた

どもです。 今回は、モーターから読み出した値に対するヒステリシス・フ

toppers
C言語でEV3開発(26)-EV3で機械学習(1)-QLearningをC#に委譲してみた

どもです。 前回の投稿では、Q-LearningをEV3本体に実装し

toppers
C言語でEV3開発(25)-Q_Learningを実装してみた…が!?

どもです。 今回の内容は、「失敗しました」という内容です。 最

toppers
C言語でEV3開発(24)-APIの実行時間を測定してみた。

どもです。 今回、以前から気になっていた、開発環境/プラットフォーム

→もっと見る

PAGE TOP ↑