test

Dependencies:   RemoteIR mbed

Committer:
szh66
Date:
Sat May 06 23:10:06 2017 +0000
Revision:
2:b78dfa2afe92
Child:
3:34a763e93423
basic PCB board tests

Who changed what in which revision?

UserRevisionLine numberNew contents of line
szh66 2:b78dfa2afe92 1 //#ifndef ENCODER_H
szh66 2:b78dfa2afe92 2 //#define ENCODER_H
szh66 2:b78dfa2afe92 3 //#include "mbed.h"
szh66 2:b78dfa2afe92 4 //
szh66 2:b78dfa2afe92 5 ///*
szh66 2:b78dfa2afe92 6 //* Reset both encoders
szh66 2:b78dfa2afe92 7 //*/
szh66 2:b78dfa2afe92 8 //void resetEncoders();
szh66 2:b78dfa2afe92 9 //
szh66 2:b78dfa2afe92 10 ///*
szh66 2:b78dfa2afe92 11 //Returns the average number of pulses across both encoders since last reset. Unit is encoder pulses; intended for straight driving only.
szh66 2:b78dfa2afe92 12 //*/
szh66 2:b78dfa2afe92 13 //int getEncoderDistance();
szh66 2:b78dfa2afe92 14 //
szh66 2:b78dfa2afe92 15 //
szh66 2:b78dfa2afe92 16 //class Encoder {
szh66 2:b78dfa2afe92 17 //public:
szh66 2:b78dfa2afe92 18 // volatile int pulses;
szh66 2:b78dfa2afe92 19 //
szh66 2:b78dfa2afe92 20 // Encoder(PinName channelA, PinName channelB);
szh66 2:b78dfa2afe92 21 //
szh66 2:b78dfa2afe92 22 // //Reset the encoder
szh66 2:b78dfa2afe92 23 // void reset(void);
szh66 2:b78dfa2afe92 24 //
szh66 2:b78dfa2afe92 25 // //Gets pulses by directly querying the encoder.
szh66 2:b78dfa2afe92 26 // operator int() {
szh66 2:b78dfa2afe92 27 // return pulses;
szh66 2:b78dfa2afe92 28 // }
szh66 2:b78dfa2afe92 29 //
szh66 2:b78dfa2afe92 30 //private:
szh66 2:b78dfa2afe92 31 // InterruptIn channelA_;
szh66 2:b78dfa2afe92 32 // InterruptIn channelB_;
szh66 2:b78dfa2afe92 33 // int prevState_;
szh66 2:b78dfa2afe92 34 // int currState_;
szh66 2:b78dfa2afe92 35 //
szh66 2:b78dfa2afe92 36 // void encode(void);
szh66 2:b78dfa2afe92 37 //};
szh66 2:b78dfa2afe92 38 //
szh66 2:b78dfa2afe92 39 //
szh66 2:b78dfa2afe92 40 //extern Encoder leftEncoder;
szh66 2:b78dfa2afe92 41 //
szh66 2:b78dfa2afe92 42 //
szh66 2:b78dfa2afe92 43 //#endif