ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

ETロボコン/UMLロボコンコミュの色の取得について質問です。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
光センサーからの色を取得して、その色が白なのか、黒なのかを判定して、その色の名前を返すプログラムを作ったんですが、どうしてもコンパイルエラーがでてしまって、先に進めないんです(汗

しょうもない、ミスをしてる可能性が高いんですが、さすがに4日も足止めされてるので、お力をかりたいなと思いまして。
エラー内容と、cppファイルとhファイルの内容をのせておきます。

---ColorDistinctionUnit.cpp------------------


#include <c++/LightSensor.H>
#include <unistd.H>

#include "ColorDistinctionUnit.h"

#define THRESHOLD 40

ColorDistinctionUnit::ColorDistinctionUnit(){
m_lightsensor = new LightSensor(Sensor::S2);
}

ColorDistinctionUnit::Color ColorDistinctionUnit::getColor(){

if(m_lightsensor->get() < THRESHOLD){
return BLACK;
} else {
return WHITE;
}
}

----------------------------------------


---ColorDistinctionUnit.h-------------------

class ColorDistinctionUnit{

public :
enum Color{BLACK, WHITE};

private :
LightSensor* m_lightsensor;

public :
ColorDistinctionUnit();
Color getColor();
};

----------------------------------------



よろしくお願いします

コメント(5)

ColorDistinctionUnit.cppに適当なmain関数を記述して
make ColorDistinctionUnit.lxでコンパイルできると思います。
あっ、記述不足でした。

LineTraceクラスから、
ColorDistinctionUnitの参照ポインタを使って、
getColorメソッドを呼び出す形にしてるんですよね。

ですから、main関数は、使いたくないんですよね。。。
brickos のことは良く知らないのですけれど….

> @%eax
って,IA32用のコードっぽいのですが…? ここはH8/300用のコードが出ていないとマズくないですか?

コードの問題ではなく環境の問題…ではない?
例えば,ネイティブ用g++と,クロス用g++が混じったりとか.
no such instruction(そういう命令はありません)
と出てますから、コードではなくて、
ビルド環境ぽい気がしますが。

makefileの中身とかですかね・・・?
予想としては、C++コンパイラにH8/300を
指定できてない感じですが。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

ETロボコン/UMLロボコン 更新情報

ETロボコン/UMLロボコンのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。