VEX2 Sensors Overview
(Created page with " {| style="font-family:Verdana, Genega, sans-sarif; font-size:80%;color:gray;" width="100%" cellpadding="0%" cellspacing="0" border="0" |- | ''Main >> [[VEX2_Ma...") |
|||
| Line 11: | Line 11: | ||
|- | |- | ||
|''For ROBOTC CORTEX Sensor ''functions'', check out the [[VEX2:_Functions_-_Sensors|CORTEX Sensor Functions]] page!'' | |''For ROBOTC CORTEX Sensor ''functions'', check out the [[VEX2:_Functions_-_Sensors|CORTEX Sensor Functions]] page!'' | ||
| + | |- | ||
| + | | | ||
| + | The VEX 2.0 Cortex is equipped with 20 sensor ports. There are 8 Analog Sensor Ports and 12 Digital Sensor Ports. Note that unlike the VEX - PIC microcontroller, all Analog sensors must be in Analog ports, while all Digital sensors must be in Digital ports. | ||
| + | |||
| + | There are a variety of functions and variables used for configuring these ports and accessing their values. | ||
| + | |||
| + | Configuring sensors can be complicated. ROBOTC has a built-in wizard that can be used to configure the VEX 2.0 Cortex sensors. The wizard contains a number of PC windows that allow you to set the following fields for the sensor: | ||
| + | |||
| + | *The variable name that you want to assign to the sensor. Using a name like “leftBumper” makes for a more readable program than 'dgtl3'! | ||
| + | *The port that the sensor is connected to. | ||
| + | *The type of sensor – touch, quadrature encoder, sonar, line follower, etc. | ||
|- | |- | ||
| Line 23: | Line 34: | ||
| − | == | + | == Analog Sensors == |
{| style="font-family:Verdana, Geneva, sans-serif; color:black; background-color:#FFFFFF; text-align:left; font-size:100%;" width="100%" cellpadding="5%" cellspacing="0" border="0" | {| style="font-family:Verdana, Geneva, sans-serif; color:black; background-color:#FFFFFF; text-align:left; font-size:100%;" width="100%" cellpadding="5%" cellspacing="0" border="0" | ||
|- | |- | ||
| Line 48: | Line 59: | ||
motor[motorC] = 75; /* with a power level of 75 */ | motor[motorC] = 75; /* with a power level of 75 */ | ||
wait1Msec(1000); // wait 1000 milliseconds (1 second) before moving to further code | wait1Msec(1000); // wait 1000 milliseconds (1 second) before moving to further code | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 09:09, 15 February 2012
|
Main >> CORTEX >> Sensors Overview |
| For ROBOTC CORTEX Sensor functions, check out the CORTEX Sensor Functions page! |
|
The VEX 2.0 Cortex is equipped with 20 sensor ports. There are 8 Analog Sensor Ports and 12 Digital Sensor Ports. Note that unlike the VEX - PIC microcontroller, all Analog sensors must be in Analog ports, while all Digital sensors must be in Digital ports. There are a variety of functions and variables used for configuring these ports and accessing their values. Configuring sensors can be complicated. ROBOTC has a built-in wizard that can be used to configure the VEX 2.0 Cortex sensors. The wizard contains a number of PC windows that allow you to set the following fields for the sensor:
|
|
Analog Sensors
| The NXT Touch Sensor has 2 states, pressed or unpressed. In code this is represented with a 1 for pressed, and a 0 for unpressed. There are no other states for this sensor. Below is a simple program that keeps your program from running until you press the Touch Sensor. |
#pragma config(Sensor, S1, touchSensor, sensorTouch) //*!!Code automatically generated by 'ROBOTC' configuration wizard !!*// task main() { while(SensorValue(touchSensor) == 0) // while the Touch Sensor is inactive (hasn't been pressed): { // DO NOTHING (wait for press) } while(SensorValue(touchSensor) == 1) // while the Touch Sensor is active (pressed): { // DO NOTHING (wait for release) } // YOUR CODE GOES HERE // otherwise (the touch sensor has been activated [pressed] ): motor[motorB] = 75; /* run motors B and C forwards */ motor[motorC] = 75; /* with a power level of 75 */ wait1Msec(1000); // wait 1000 milliseconds (1 second) before moving to further code } |