Lejos RGB颜色传感器

时间:2010-09-28 03:12:40

标签: lejos-nxj nxt

有没有人有使用Lejos编程语言中的NXT RGB颜色传感器的代码示例。我尝试了几种不同的setType()和setMode()用途,但无济于事。

2 个答案:

答案 0 :(得分:1)

以下是一些有效的代码:

ColorLightSensor cs = new ColorLightSensor(SensorPort.S1, SensorConstants.TYPE_LIGHT_ACTIVE);

for(int i = 0; i < 100 && !done; i++)
{
    cs.setFloodlight(lejos.robotics.Colors.Color.RED);

    sleep(1);

    LCD.clearDisplay();
    LCD.drawString("" + cs.getRedComponent(), 0,0);
    cs.setFloodlight(lejos.robotics.Colors.Color.GREEN);

    sleep(1);

    LCD.clearDisplay();
    LCD.drawString("" + cs.getGreenComponent(), 0,0);
    cs.setFloodlight(lejos.robotics.Colors.Color.BLUE);

    sleep(1);

    LCD.clearDisplay();
    LCD.drawString("" + cs.getBlueComponent(), 0,0);
}

答案 1 :(得分:1)

以下是监控NXT 2颜色传感器的简单示例:

import lejos.nxt.*;
import lejos.robotics.*;

public class MyColorSensor {
    public static void main(String argv[]) {
        ColorSensor cs = new ColorSensor(SensorPort.S1);

        for(int i = 0; i < 10; i++) {
            Color color = cs.getColor();
            System.out.println("Color = " + cs.getColorID() + " " + color.getColor() +
                "(" + color.getRed() + "," + color.getGreen() + "," + color.getBlue() 
                +") " + color.getColor());
            Button.waitForAnyPress();
        }       
    }
}