#include <c++/LightSensor.H>
Inheritance diagram for LightSensor:
Public Types | |
enum | Port { S1 = 0, S2, S3, Battery } |
List of sensor identifiers (IDs).Possible Sensor Port Values. More... | |
Public Member Functions | |
LightSensor (const Sensor::Port port) | |
Instance an active light sensor at {port}. | |
unsigned int | get () const |
Get the current lightSensor value. | |
unsigned int | sample (unsigned int size=10, int wait=2) const |
Get the average of {size} samples, waiting {wait} mSec between each sample. | |
void | mode (bool makeActive) const |
Set the sensor (mode) to active or passive. | |
void | passive () const |
Set the sensor to passive (turn off voltage to connector). | |
void | active () const |
Set the sensor to active (provide voltage to connector). | |
void | on () const |
Turn the sensor on (provide voltage to connector). | |
void | off () const |
Turn the sensor off (turn off voltage to connector). | |
void | strobe () const |
Quickly turn sensor off then back on. | |
void | strobe (const int ms) const |
Turn sensor off, wait for {ms} milliSeconds, then then turn it back on. | |
Protected Attributes | |
volatile unsigned int & | sensor |
The address of our sensor value. |
The LightSensor Class - using a LightSensor in active or passive mode
At construction time you specify the RCX connector pad to which the LightSensor is attached.
This class provides two methods to read the value of the sensor [get, sample]
Definition at line 46 of file LightSensor.H.
enum Sensor::Port [inherited] |
List of sensor identifiers (IDs).Possible Sensor Port Values.
S1, S2, S3 are connector pads 1, 2 and 3 on the RCX.
Battery is the internal sensor allowing a program to read the current battery voltage in milliVolts
LightSensor::LightSensor | ( | const Sensor::Port | port | ) | [inline] |
Instance an active light sensor at {port}.
port | The connector pad (1, 2 or 3) to which the light sensor is attached |
Definition at line 53 of file LightSensor.H.
unsigned int LightSensor::get | ( | ) | const [inline] |
Get the current lightSensor value.
NOTE: ultimately, this will be scaled to fall between 0 and 100.
Reimplemented from Sensor.
Definition at line 61 of file LightSensor.H.
References LIGHT, and Sensor::sensor.
Referenced by sample().
unsigned int LightSensor::sample | ( | unsigned int | size = 10 , |
|
int | wait = 2 | |||
) | const [inline] |
Get the average of {size} samples, waiting {wait} mSec between each sample.
size | - Number of samples to average (default = 10 samples) | |
wait | - time (in mS) to wait between samples (default = 2mS) |
Reimplemented from Sensor.
Definition at line 69 of file LightSensor.H.
void Sensor::mode | ( | bool | makeActive | ) | const [inline, inherited] |
Set the sensor (mode) to active or passive.
makeActive | - T/F - Where true means to go active (voltage is supplied to the connector pad) |
Definition at line 118 of file Sensor.H.
References Sensor::active(), and Sensor::passive().
void Sensor::passive | ( | ) | const [inline, inherited] |
Set the sensor to passive (turn off voltage to connector).
Definition at line 127 of file Sensor.H.
References ds_passive(), and Sensor::sensor.
Referenced by Sensor::mode(), Sensor::off(), and Sensor::Sensor().
void Sensor::active | ( | ) | const [inline, inherited] |
Set the sensor to active (provide voltage to connector).
Definition at line 133 of file Sensor.H.
References ds_active(), and Sensor::sensor.
Referenced by Sensor::mode(), Sensor::on(), and Sensor::Sensor().
void Sensor::on | ( | ) | const [inline, inherited] |
Turn the sensor on (provide voltage to connector).
Reimplemented in RotationSensor.
Definition at line 139 of file Sensor.H.
References Sensor::active().
Referenced by Sensor::strobe().
void Sensor::off | ( | ) | const [inline, inherited] |
Turn the sensor off (turn off voltage to connector).
Reimplemented in RotationSensor.
Definition at line 145 of file Sensor.H.
References Sensor::passive().
Referenced by Sensor::strobe(), and Sensor::~Sensor().
void Sensor::strobe | ( | ) | const [inline, inherited] |
Quickly turn sensor off then back on.
Definition at line 151 of file Sensor.H.
References Sensor::off(), and Sensor::on().
void Sensor::strobe | ( | const int | ms | ) | const [inline, inherited] |
Turn sensor off, wait for {ms} milliSeconds, then then turn it back on.
ms | - Number of milliSeconds to wait between off and back on |
Definition at line 158 of file Sensor.H.
References delay(), Sensor::off(), and Sensor::on().
volatile unsigned int& Sensor::sensor [protected, inherited] |
The address of our sensor value.
Definition at line 181 of file Sensor.H.
Referenced by Sensor::active(), Sensor::get(), get(), RotationSensor::off(), RotationSensor::on(), Sensor::passive(), RotationSensor::pos(), and TouchSensor::pressed().
brickOS is released under the
Mozilla Public License.
Original code copyright 1998-2005 by the authors. |