Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of ITG3200 by
ITG3200.h@2:044664f2cc01, 2012-08-15 (annotated)
- Committer:
- cdonate
- Date:
- Wed Aug 15 22:17:36 2012 +0000
- Revision:
- 2:044664f2cc01
- Parent:
- 1:1208ffc3ace9
No change
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
cdonate | 2:044664f2cc01 | 1 | #pragma once |
cdonate | 2:044664f2cc01 | 2 | |
cdonate | 2:044664f2cc01 | 3 | //I2C address is either 0x68 or 0x69 , depending on pin AD0, check block diagram for your device |
cdonate | 2:044664f2cc01 | 4 | #define ITG3200_ADRESS 0x69 |
cdonate | 2:044664f2cc01 | 5 | |
cdonate | 2:044664f2cc01 | 6 | //Convert gyro raw data to radians per second, 1 degree/s = 0,017453293 rad/s. |
cdonate | 2:044664f2cc01 | 7 | //The value is 0,017453293/LSB (+- 250 degrees/s) |
cdonate | 2:044664f2cc01 | 8 | |
cdonate | 2:044664f2cc01 | 9 | //const float fConvRPS= 2.6646248854961832061068702290076e-4; //For +- 500 degrees/s |
cdonate | 2:044664f2cc01 | 10 | //const float fConvRPS= 1.2141420883e-3; //For +- 2000 degrees/s |
cdonate | 2:044664f2cc01 | 11 | |
cdonate | 2:044664f2cc01 | 12 | const float fConvRPS= 1.3323124427480916030534351145038e-4; //For +- 250 degrees/s |
cdonate | 2:044664f2cc01 | 13 | |
cdonate | 2:044664f2cc01 | 14 | class ITG3200 { |
cdonate | 2:044664f2cc01 | 15 | protected: |
cdonate | 2:044664f2cc01 | 16 | I2C & I2CBus; |
cdonate | 2:044664f2cc01 | 17 | Timer & GlobalTime; |
cdonate | 2:044664f2cc01 | 18 | |
cdonate | 2:044664f2cc01 | 19 | public: |
cdonate | 2:044664f2cc01 | 20 | //Offset |
cdonate | 2:044664f2cc01 | 21 | float Offset[3]; |
cdonate | 2:044664f2cc01 | 22 | |
cdonate | 2:044664f2cc01 | 23 | //Rotational speed around all three axes |
cdonate | 2:044664f2cc01 | 24 | short RawRate[3]; //Raw data |
cdonate | 2:044664f2cc01 | 25 | float Rate[3]; //Calibrated rotation rate in radians per second |
cdonate | 2:044664f2cc01 | 26 | |
cdonate | 2:044664f2cc01 | 27 | |
cdonate | 2:044664f2cc01 | 28 | //Initialization |
cdonate | 2:044664f2cc01 | 29 | ITG3200(I2C & I2CBus_, Timer & GlobalTime_); |
cdonate | 2:044664f2cc01 | 30 | void Init(); |
cdonate | 2:044664f2cc01 | 31 | |
cdonate | 2:044664f2cc01 | 32 | |
cdonate | 2:044664f2cc01 | 33 | private: |
cdonate | 2:044664f2cc01 | 34 | //Read raw data |
cdonate | 2:044664f2cc01 | 35 | void ReadRawData(); |
cdonate | 2:044664f2cc01 | 36 | |
cdonate | 2:044664f2cc01 | 37 | public: |
cdonate | 2:044664f2cc01 | 38 | //Update Method |
cdonate | 2:044664f2cc01 | 39 | void Update(); |
cdonate | 2:044664f2cc01 | 40 | char getInfo(void); |
cdonate | 2:044664f2cc01 | 41 | |
cdonate | 2:044664f2cc01 | 42 | //Calibration |
cdonate | 2:044664f2cc01 | 43 | void Calibrate(int ms); |
cdonate | 2:044664f2cc01 | 44 | }; |