*

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を黒に戻す処理をコードに追加。
・上記サンプルコードを実際に動作させた動画を追加↓

関連記事

eclipse_4.3_kepler

elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデバッグ中に発生する問題について

記事を読む

no image

Objective-CからC++コードを呼び出す

どもどもです。 今回は、突然ながらMacに関係する投稿です。 ソフト関係のことを勉強していて

記事を読む

no image

C言語でEV3開発(10)-opOUTPUT_CLEAR_COUNTコマンド

どもです。 前回のエントリーのラストで、「モーターを動かすコマンド」と書きましたが、今回紹介するコ

記事を読む

eclipse_cdt_top_100

C言語でEV3開発(3)

どもです。 今回のエントリーの内容は、前回まででセットアップした環境で、実際にEV3上で動く実行フ

記事を読む

eclipse-juno-logo

C言語でEV3開発(2)

どもです。 今回のエントリーの内容は、前回に引き続き「EV3の開発環境の構築」の追記です。

記事を読む

toppers

C言語でEV3開発(19)-コマンド通信処理でEchoBackしてみた

どもです。 前回は、Bluetoothの接続状態の変化に伴う、状態遷移について書きました。 今回

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

C言語でEV3開発(14)-opOUTPUT_TIME_SPEEDコマンド

どもです。 今回のエントリーは、モーターを動かすコマンドである「opOUTPUT_TIME_SPE

記事を読む

no image

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

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

記事を読む

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="">

PAGE TOP ↑