Main Page | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages

TouchSensor Class Reference

Touch-sensor interface (passive mode). More...

#include <c++/TouchSensor.H>

Inheritance diagram for TouchSensor:

Inheritance graph
[legend]
Collaboration diagram for TouchSensor:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Port { S1 = 0, S2, S3, Battery }
 List of sensor identifiers (IDs). Possible Sensor Port Values. More...


Public Member Functions

 TouchSensor (const Sensor::Port port)
 construct a TouchSensor connected to pad {port}

bool pressed () const
 determine if touch sensor is pressed

unsigned int get () const
 Get the current sensor reading.

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.

unsigned int sample (unsigned int size=10, int wait=2) const
 Get the average of {size} samples, waiting {wait} mSec between each sample.


Protected Attributes

volatile unsigned int & sensor
 The address of our sensor value.


Detailed Description

Touch-sensor interface (passive mode).

The Touch Sensor Class - using a touch sensor in passive mode

At construction time you specify the RCX connector pad to which the touchSensor is attached.

Note:
TouchSensor is implemented as a simple redefine of the Sensor class (saved ~48 bytes per instance). See "list of all members", above, or refer to the Sensor class for all methods
See also:
The other sensor classes: Sensor, LightSensor, RotationSensor

Definition at line 44 of file TouchSensor.H.


Member Enumeration Documentation

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

See also:
Battery
Enumeration values:
S1  RCX sensor port 1.
S2  RCX sensor port 2.
S3  RCX sensor port 3.
Battery  RCX battery sensor.

Definition at line 67 of file Sensor.H.


Constructor & Destructor Documentation

TouchSensor::TouchSensor const Sensor::Port  port  )  [inline]
 

construct a TouchSensor connected to pad {port}

Parameters:
port and input port of the RCX
Returns:
Nothing

Definition at line 51 of file TouchSensor.H.


Member Function Documentation

void Sensor::active  )  const [inline, inherited]
 

Set the sensor to active (provide voltage to connector).

See also:
Sensor::passive, Sensor::on, Sensor::off, Sensor::mode

Definition at line 133 of file Sensor.H.

References ds_active(), and Sensor::sensor.

Referenced by Sensor::mode(), Sensor::on(), and Sensor::Sensor().

unsigned int Sensor::get  )  const [inline, inherited]
 

Get the current sensor reading.

Returns:
unsigned int - The current raw sensor value
See also:
Sensor::sample

Reimplemented in LightSensor.

Definition at line 109 of file Sensor.H.

References Sensor::sensor.

Referenced by TemperatureSensor::C(), and Sensor::sample().

void Sensor::mode bool  makeActive  )  const [inline, inherited]
 

Set the sensor (mode) to active or passive.

Parameters:
makeActive - T/F - Where true means to go active (voltage is supplied to the connector pad)
See also:
Sensor::off, Sensor::on, Sensor::active, Sensor::passive

Definition at line 118 of file Sensor.H.

References Sensor::active(), and Sensor::passive().

void Sensor::off  )  const [inline, inherited]
 

Turn the sensor off (turn off voltage to connector).

See also:
Sensor::on, Sensor::active, Sensor::passive, Sensor::mode

Reimplemented in RotationSensor.

Definition at line 145 of file Sensor.H.

References Sensor::passive().

Referenced by Sensor::strobe(), and Sensor::~Sensor().

void Sensor::on  )  const [inline, inherited]
 

Turn the sensor on (provide voltage to connector).

See also:
Sensor::off, Sensor::active, Sensor::passive, Sensor::mode

Reimplemented in RotationSensor.

Definition at line 139 of file Sensor.H.

References Sensor::active().

Referenced by Sensor::strobe().

void Sensor::passive  )  const [inline, inherited]
 

Set the sensor to passive (turn off voltage to connector).

See also:
Sensor::active, Sensor::on, Sensor::off, Sensor::mode

Definition at line 127 of file Sensor.H.

References ds_passive(), and Sensor::sensor.

Referenced by Sensor::mode(), Sensor::off(), and Sensor::Sensor().

bool TouchSensor::pressed  )  const [inline]
 

determine if touch sensor is pressed

Returns:
T/F where T means touch sensor was pressed

Definition at line 56 of file TouchSensor.H.

References TOUCH.

unsigned int Sensor::sample unsigned int  size = 10,
int  wait = 2
const [inline, inherited]
 

Get the average of {size} samples, waiting {wait} mSec between each sample.

Parameters:
size - Number of samples to average (default = 10 samples)
wait - time (in mS) to wait between samples (default = 2mS)
Returns:
unsigned int - The average of the sampled values
See also:
Sensor::get

Reimplemented in LightSensor.

Definition at line 167 of file Sensor.H.

References delay(), and Sensor::get().

void Sensor::strobe const int  ms  )  const [inline, inherited]
 

Turn sensor off, wait for {ms} milliSeconds, then then turn it back on.

Parameters:
ms - Number of milliSeconds to wait between off and back on
See also:
Sensor::on, Sensor::off, Sensor::active, Sensor::passive, Sensor::mode

Definition at line 158 of file Sensor.H.

References delay(), Sensor::off(), and Sensor::on().

void Sensor::strobe  )  const [inline, inherited]
 

Quickly turn sensor off then back on.

See also:
Sensor::on, Sensor::off, Sensor::active, Sensor::passive, Sensor::mode

Definition at line 151 of file Sensor.H.

References Sensor::off(), and Sensor::on().


Member Data Documentation

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(), Sensor::passive(), and Sensor::Sensor().


The documentation for this class was generated from the following file:
brickOS is released under the Mozilla Public License.
Original code copyright 1998-2002 by the authors.

Generated on Mon Feb 16 21:02:08 2004 for brickOS C++ by doxygen 1.3.5