Mouse code for the MacroRat

Dependencies:   ITG3200 QEI

Committer:
sahilmgandhi
Date:
Sat Jun 03 00:22:44 2017 +0000
Revision:
46:b156ef445742
Parent:
38:fe05f93009a2
Final code for internal battlebot competition.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kyleliangus 6:3d68fedd6fd9 1 #include "irpair.h"
kyleliangus 4:b5b7836ca2b0 2 #include "mbed.h"
kyleliangus 4:b5b7836ca2b0 3
kyleliangus 32:69acb14778ea 4 #define dark_samples 10
kyleliangus 32:69acb14778ea 5 #define busy_wait 10
sahilmgandhi 29:ec2c5a69acd6 6
kyleliangus 6:3d68fedd6fd9 7 void IRPair::calibrateSensor() {
kyleliangus 4:b5b7836ca2b0 8
kyleliangus 9:1d8e4da058cd 9 ir.write( 1 );
sahilmgandhi 38:fe05f93009a2 10 wait_us(60);
kyleliangus 9:1d8e4da058cd 11
kyleliangus 4:b5b7836ca2b0 12 for (int i = 0; i < samplesToTake; ++i)
kyleliangus 5:7e1e4cc19044 13 sensorAvg += recv.read();
kyleliangus 4:b5b7836ca2b0 14
kyleliangus 9:1d8e4da058cd 15 ir.write( 0 );
kyleliangus 4:b5b7836ca2b0 16 sensorAvg /= samplesToTake;
kyleliangus 32:69acb14778ea 17 wait_us(5);
kyleliangus 4:b5b7836ca2b0 18 }
kyleliangus 4:b5b7836ca2b0 19
kyleliangus 32:69acb14778ea 20 double IRPair::getSamples( int samples )
kyleliangus 4:b5b7836ca2b0 21 {
kyleliangus 32:69acb14778ea 22 double z = 0;
kyleliangus 32:69acb14778ea 23
kyleliangus 32:69acb14778ea 24 ir.write( 0 );
kyleliangus 32:69acb14778ea 25 //for( int i = 0; i < dark_samples; i++ )
kyleliangus 32:69acb14778ea 26 // z1 += recv.read();
kyleliangus 32:69acb14778ea 27
kyleliangus 5:7e1e4cc19044 28 ir.write( 1 );
sahilmgandhi 38:fe05f93009a2 29 wait_us(60);
sahilmgandhi 29:ec2c5a69acd6 30
kyleliangus 4:b5b7836ca2b0 31 for( int i = 0; i < samples; ++i )
kyleliangus 5:7e1e4cc19044 32 z += recv.read();
kyleliangus 5:7e1e4cc19044 33 ir.write( 0 );
kyleliangus 32:69acb14778ea 34 wait_us(5);
kyleliangus 4:b5b7836ca2b0 35 return z / samples;
kyleliangus 15:b80555a4a8b9 36 }