Generates reference based on analog input

Dependents:   locomotion_pid_action_refactor_EMG

Committer:
tvlogman
Date:
Fri Oct 20 16:28:30 2017 +0000
Revision:
3:43d9f8db93b7
Parent:
2:35c05e7698f5
Child:
4:38af2aa14a3f
Eh, nothing changed again :)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tvlogman 0:5c67195a412d 1 #include "refGen.h"
tvlogman 0:5c67195a412d 2 #include "mbed.h"
tvlogman 0:5c67195a412d 3
tvlogman 0:5c67195a412d 4 // Member function definitions
tvlogman 2:35c05e7698f5 5 refGen::refGen(PinName a, float maxAngle):refPin(a), maxAngle(maxAngle), r_direction(false){
tvlogman 0:5c67195a412d 6
tvlogman 0:5c67195a412d 7 }
tvlogman 0:5c67195a412d 8
tvlogman 3:43d9f8db93b7 9 float refGen :: getReferencePosition(){
tvlogman 0:5c67195a412d 10 float r;
tvlogman 0:5c67195a412d 11 if(r_direction == false){
tvlogman 0:5c67195a412d 12 // Clockwise rotation yields positive reference
tvlogman 3:43d9f8db93b7 13 r = maxAngle*refPin.read();
tvlogman 0:5c67195a412d 14 }
tvlogman 0:5c67195a412d 15 if(r_direction == true){
tvlogman 0:5c67195a412d 16 // Counterclockwise rotation yields negative reference
tvlogman 0:5c67195a412d 17 r = -1*maxAngle*refPin.read();
tvlogman 0:5c67195a412d 18 }
tvlogman 0:5c67195a412d 19 return r;
tvlogman 0:5c67195a412d 20 }