NXT segue linea

import lejos.nxt.Button;
import lejos.nxt.LCD;
import lejos.nxt.LightSensor;
import lejos.nxt.Motor;
import lejos.nxt.SensorPort;
import lejos.robotics.navigation.DifferentialPilot;
import lejos.util.Delay;

public class SeguiLinea {

	public static void main(String[] args) {
		LightSensor ls = new LightSensor(SensorPort.S1, true); // led acceso
		DifferentialPilot dp = new DifferentialPilot(5.5, 11.5, Motor.A, Motor.C);

		int valS = 0, valC = 0, valM = 0;

		LCD.drawString("Misura scuro", 0, 0);
		Delay.msDelay(2000);
		valS = ls.getLightValue();

		LCD.drawString("Misura chiaro", 0, 0);
		Delay.msDelay(2000);
		valC = ls.getLightValue();

		valM = (valC + valS) / 2;
		do {
			int val = ls.getLightValue();
			LCD.drawInt(val, 0, 0);
			dp.steer((val - valM) * 10);
		} while (!Button.ESCAPE.isDown());
	}

}