lib para o framework sgam
Dependencies: MPU6050 Grove_temperature
Dependents: example_smart-grid
peripheral/impl/Gyroscope.cpp@3:f998244e9f80, 2019-06-02 (annotated)
- Committer:
- AndersonIctus
- Date:
- Sun Jun 02 16:51:13 2019 -0300
- Revision:
- 3:f998244e9f80
- Child:
- 4:f21aab30658a
- Inclusao dos Arquivos para o GIROSCOPIO !!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AndersonIctus | 3:f998244e9f80 | 1 | #include "mbed.h" |
AndersonIctus | 3:f998244e9f80 | 2 | #include "MPU6050.h" |
AndersonIctus | 3:f998244e9f80 | 3 | |
AndersonIctus | 3:f998244e9f80 | 4 | #include "Gyroscope.h" |
AndersonIctus | 3:f998244e9f80 | 5 | |
AndersonIctus | 3:f998244e9f80 | 6 | #define LOG(args...) // printf(args) |
AndersonIctus | 3:f998244e9f80 | 7 | |
AndersonIctus | 3:f998244e9f80 | 8 | Gyroscope::Gyroscope(I2C i2c): mpu(i2c, MPU6050_ADDRESS_AD0_LOW) { |
AndersonIctus | 3:f998244e9f80 | 9 | mpu.initialize(); |
AndersonIctus | 3:f998244e9f80 | 10 | |
AndersonIctus | 3:f998244e9f80 | 11 | if(mpu.testConnection()) { |
AndersonIctus | 3:f998244e9f80 | 12 | LOG("MPU6050 test passed !!\r\n"); |
AndersonIctus | 3:f998244e9f80 | 13 | } else { |
AndersonIctus | 3:f998244e9f80 | 14 | LOG("MPU6050 test failed !!\r\n"); |
AndersonIctus | 3:f998244e9f80 | 15 | } |
AndersonIctus | 3:f998244e9f80 | 16 | } |
AndersonIctus | 3:f998244e9f80 | 17 | |
AndersonIctus | 3:f998244e9f80 | 18 | Gyroscope::~Gyroscope() { |
AndersonIctus | 3:f998244e9f80 | 19 | // mpu. |
AndersonIctus | 3:f998244e9f80 | 20 | } |
AndersonIctus | 3:f998244e9f80 | 21 | |
AndersonIctus | 3:f998244e9f80 | 22 | void Gyroscope::getMotion(GyroscopeData* data) { |
AndersonIctus | 3:f998244e9f80 | 23 | mpu.getMotion6( |
AndersonIctus | 3:f998244e9f80 | 24 | &data->ax, &data->ay, &data->az, |
AndersonIctus | 3:f998244e9f80 | 25 | &data->gx, &data->gy, &data->gz |
AndersonIctus | 3:f998244e9f80 | 26 | ); |
AndersonIctus | 3:f998244e9f80 | 27 | } |
AndersonIctus | 3:f998244e9f80 | 28 | |
AndersonIctus | 3:f998244e9f80 | 29 | GyroscopeData* Gyroscope::getValue() { |
AndersonIctus | 3:f998244e9f80 | 30 | getMotion(&value); |
AndersonIctus | 3:f998244e9f80 | 31 | return &value; |
AndersonIctus | 3:f998244e9f80 | 32 | } |
AndersonIctus | 3:f998244e9f80 | 33 | |
AndersonIctus | 3:f998244e9f80 | 34 | void Gyroscope::readOcurred(void* (*callBack)(GyroscopeData* value), float timeout) { |
AndersonIctus | 3:f998244e9f80 | 35 | if(callBack != NULL) |
AndersonIctus | 3:f998244e9f80 | 36 | callBack(&value); |
AndersonIctus | 3:f998244e9f80 | 37 | } |