Mouse code for the MacroRat

Dependencies:   ITG3200 QEI

Committer:
kyleliangus
Date:
Fri Apr 28 04:08:34 2017 +0000
Revision:
5:7e1e4cc19044
Parent:
4:b5b7836ca2b0
Fixed IR Class

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kyleliangus 4:b5b7836ca2b0 1 #include "irled.h"
kyleliangus 4:b5b7836ca2b0 2 #include "mbed.h"
kyleliangus 4:b5b7836ca2b0 3
kyleliangus 4:b5b7836ca2b0 4 void IrLed::calibrateSensor() {
kyleliangus 4:b5b7836ca2b0 5
kyleliangus 4:b5b7836ca2b0 6 for (int i = 0; i < samplesToTake; ++i)
kyleliangus 5:7e1e4cc19044 7 sensorAvg += recv.read();
kyleliangus 4:b5b7836ca2b0 8
kyleliangus 4:b5b7836ca2b0 9 sensorAvg /= samplesToTake;
kyleliangus 4:b5b7836ca2b0 10 }
kyleliangus 4:b5b7836ca2b0 11
kyleliangus 4:b5b7836ca2b0 12 float IrLed::getSamples( int samples )
kyleliangus 4:b5b7836ca2b0 13 {
kyleliangus 4:b5b7836ca2b0 14 float z = 0;
kyleliangus 5:7e1e4cc19044 15 ir.write( 1 );
kyleliangus 4:b5b7836ca2b0 16 for( int i = 0; i < samples; ++i )
kyleliangus 5:7e1e4cc19044 17 z += recv.read();
kyleliangus 5:7e1e4cc19044 18 ir.write( 0 );
kyleliangus 4:b5b7836ca2b0 19 return z / samples;
kyleliangus 4:b5b7836ca2b0 20 }
kyleliangus 4:b5b7836ca2b0 21
kyleliangus 4:b5b7836ca2b0 22 /*
kyleliangus 4:b5b7836ca2b0 23 inline float IrLED::blinkLED( int i, int samples )
kyleliangus 4:b5b7836ca2b0 24 {
kyleliangus 4:b5b7836ca2b0 25 float z = 0;
kyleliangus 4:b5b7836ca2b0 26 if( i == 1 )
kyleliangus 4:b5b7836ca2b0 27 {
kyleliangus 4:b5b7836ca2b0 28 IR_LED1.write(1);
kyleliangus 4:b5b7836ca2b0 29 for( int j = 0; j < samples; j++ )
kyleliangus 4:b5b7836ca2b0 30 z += IR_Sensor1.read();
kyleliangus 4:b5b7836ca2b0 31 IR_LED1.write(0);
kyleliangus 4:b5b7836ca2b0 32 }
kyleliangus 4:b5b7836ca2b0 33 if( i == 2 )
kyleliangus 4:b5b7836ca2b0 34 {
kyleliangus 4:b5b7836ca2b0 35 IR_LED2.write(1);
kyleliangus 4:b5b7836ca2b0 36 for( int j = 0; j < samples; j++ )
kyleliangus 4:b5b7836ca2b0 37 z += IR_Sensor2.read();
kyleliangus 4:b5b7836ca2b0 38 IR_LED2.write(0);
kyleliangus 4:b5b7836ca2b0 39 }
kyleliangus 4:b5b7836ca2b0 40 if( i == 3 )
kyleliangus 4:b5b7836ca2b0 41 {
kyleliangus 4:b5b7836ca2b0 42 IR_LED3.write(1);
kyleliangus 4:b5b7836ca2b0 43 for( int j = 0; j < samples; j++ )
kyleliangus 4:b5b7836ca2b0 44 z += IR_Sensor3.read();
kyleliangus 4:b5b7836ca2b0 45 IR_LED4.write(0);
kyleliangus 4:b5b7836ca2b0 46 }
kyleliangus 4:b5b7836ca2b0 47 if( i == 4 )
kyleliangus 4:b5b7836ca2b0 48 {
kyleliangus 4:b5b7836ca2b0 49 IR_LED4.write(1);
kyleliangus 4:b5b7836ca2b0 50 for( int j = 0; j < samples; j++ )
kyleliangus 4:b5b7836ca2b0 51 z += IR_Sensor4.read();
kyleliangus 4:b5b7836ca2b0 52 IR_LED4.write(0);
kyleliangus 4:b5b7836ca2b0 53 }
kyleliangus 4:b5b7836ca2b0 54 if( DEBUGGING )
kyleliangus 4:b5b7836ca2b0 55 serial.println( "Sample by IR %d: %f\n", i, z );
kyleliangus 4:b5b7836ca2b0 56 return z / samples;
kyleliangus 4:b5b7836ca2b0 57 }*/