please publish my library
Fork of accelerometer by
Accelerometer.h@0:f37d59175b91, 2012-07-09 (annotated)
- Committer:
- asy_paris90
- Date:
- Mon Jul 09 02:17:49 2012 +0000
- Revision:
- 0:f37d59175b91
- Child:
- 1:e965533a31b2
Accelerometer7361
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
asy_paris90 | 0:f37d59175b91 | 1 | #ifndef ACCELEROMETER_H |
asy_paris90 | 0:f37d59175b91 | 2 | #define ACCELEROMETER_H |
asy_paris90 | 0:f37d59175b91 | 3 | #include "mbed.h" |
asy_paris90 | 0:f37d59175b91 | 4 | |
asy_paris90 | 0:f37d59175b91 | 5 | class Accelerometer{ |
asy_paris90 | 0:f37d59175b91 | 6 | public: |
asy_paris90 | 0:f37d59175b91 | 7 | Accelerometer (PinName XoutPin, PinName youPin,PinName zoutPin,PinName sleepPin, PinName zeroGDetectPin,PinName gSelectPin); |
asy_paris90 | 0:f37d59175b91 | 8 | |
asy_paris90 | 0:f37d59175b91 | 9 | enum Scale {SCALE_1_5G,SCALE_6G}; |
asy_paris90 | 0:f37d59175b91 | 10 | float getAccel(); |
asy_paris90 | 0:f37d59175b91 | 11 | float getAccelX(); |
asy_paris90 | 0:f37d59175b91 | 12 | float getAccelY(); |
asy_paris90 | 0:f37d59175b91 | 13 | float getAccelZ(); |
asy_paris90 | 0:f37d59175b91 | 14 | float getTiltX(); |
asy_paris90 | 0:f37d59175b91 | 15 | float getTiltY(); |
asy_paris90 | 0:f37d59175b91 | 16 | float getTiltZ(); |
asy_paris90 | 0:f37d59175b91 | 17 | |
asy_paris90 | 0:f37d59175b91 | 18 | void setScale (Scale scale); |
asy_paris90 | 0:f37d59175b91 | 19 | void setSleep(bool on); |
asy_paris90 | 0:f37d59175b91 | 20 | bool detectedZeroG(); |
asy_paris90 | 0:f37d59175b91 | 21 | void setZeroGDetectListener(void (*func)(void)); |
asy_paris90 | 0:f37d59175b91 | 22 | |
asy_paris90 | 0:f37d59175b91 | 23 | template<typename T> void setZeroGDetectListener(T* t,void (T::*func)(void)); |
asy_paris90 | 0:f37d59175b91 | 24 | private: |
asy_paris90 | 0:f37d59175b91 | 25 | |
asy_paris90 | 0:f37d59175b91 | 26 | AnalogIn xout,yout,zout; |
asy_paris90 | 0:f37d59175b91 | 27 | DigitalIn zeroGDetect; |
asy_paris90 | 0:f37d59175b91 | 28 | DigitalOut sleep; |
asy_paris90 | 0:f37d59175b91 | 29 | DigitalOut gSelect; |
asy_paris90 | 0:f37d59175b91 | 30 | InterruptIn zeroG; |
asy_paris90 | 0:f37d59175b91 | 31 | float scale; |
asy_paris90 | 0:f37d59175b91 | 32 | |
asy_paris90 | 0:f37d59175b91 | 33 | }; |
asy_paris90 | 0:f37d59175b91 | 34 | #endif |