Bryce Williams / FivePosSwitch

Fork of FivePosSwitch by Bryce Williams

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers FivePosSwitch.cpp Source File

FivePosSwitch.cpp

00001 #include "mbed.h"
00002 #include "FivePosSwitch.h"
00003 
00004 FivePosSwitch::FivePosSwitch(AnalogIn pin):_pin(pin){
00005 }
00006 
00007 ACTIVE_POSITION FivePosSwitch::getPosition(){
00008     float ain = _pin;
00009     
00010     if((1.0 - TOLERANCE <= ain) && (ain <= 1.0 + TOLERANCE)) return UP; 
00011     if((0.8 - TOLERANCE <= ain) && (ain <= 0.8 + TOLERANCE)) return CENTER;
00012     if((0.6 - TOLERANCE <= ain) && (ain <= 0.6 + TOLERANCE)) return LEFT;
00013     if((0.4 - TOLERANCE <= ain) && (ain <= 0.4 + TOLERANCE)) return DOWN;
00014     if((0.2 - TOLERANCE <= ain) && (ain <= 0.2 + TOLERANCE)) return RIGHT;
00015     else return NONE;
00016 }