posilani dat
Dependencies: FatFileSystemCpp mbed PowerControl USBHostLite
mpu6000.h@26:5674b8978551, 2017-05-23 (annotated)
- Committer:
- PavelKumpan
- Date:
- Tue May 23 18:42:14 2017 +0000
- Revision:
- 26:5674b8978551
- Parent:
- 20:66ecb2f0e307
Recreated communication protocol.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
legwinskij | 18:7acae34b518d | 1 | // MPU6000 MBED library developed for swimmers |
legwinskij | 18:7acae34b518d | 2 | |
legwinskij | 18:7acae34b518d | 3 | #ifndef _mpu6000_h_ |
legwinskij | 18:7acae34b518d | 4 | #define _mpu6000_h_ |
legwinskij | 18:7acae34b518d | 5 | #include "mbed.h" |
legwinskij | 18:7acae34b518d | 6 | |
legwinskij | 18:7acae34b518d | 7 | // MPU6000 class |
legwinskij | 18:7acae34b518d | 8 | class MPU6000 |
legwinskij | 18:7acae34b518d | 9 | { |
legwinskij | 18:7acae34b518d | 10 | // Hardware objects |
legwinskij | 18:7acae34b518d | 11 | SPI& spi; |
legwinskij | 18:7acae34b518d | 12 | DigitalOut cs; |
legwinskij | 18:7acae34b518d | 13 | |
legwinskij | 18:7acae34b518d | 14 | // Public methods |
legwinskij | 18:7acae34b518d | 15 | public: |
legwinskij | 18:7acae34b518d | 16 | MPU6000(SPI& _spi, PinName _cs); |
legwinskij | 18:7acae34b518d | 17 | void regWrite(uint8_t ADDR, uint8_t DATA); |
legwinskij | 18:7acae34b518d | 18 | uint8_t regRead(uint8_t ADDR); |
legwinskij | 20:66ecb2f0e307 | 19 | uint8_t init(); |
legwinskij | 18:7acae34b518d | 20 | void valRead(bool device, short int &x, short int &y, short int &z); |
legwinskij | 18:7acae34b518d | 21 | }; |
legwinskij | 18:7acae34b518d | 22 | |
legwinskij | 18:7acae34b518d | 23 | #endif |
legwinskij | 18:7acae34b518d | 24 | |
legwinskij | 18:7acae34b518d | 25 | // MPU6000 defines ============================================================= |
legwinskij | 18:7acae34b518d | 26 | |
legwinskij | 18:7acae34b518d | 27 | // Read flag |
legwinskij | 18:7acae34b518d | 28 | #define READ 0x80 |
legwinskij | 18:7acae34b518d | 29 | |
legwinskij | 18:7acae34b518d | 30 | // Device defines |
legwinskij | 18:7acae34b518d | 31 | #define ACCEL 0 |
legwinskij | 18:7acae34b518d | 32 | #define GYRO 1 |
legwinskij | 18:7acae34b518d | 33 | |
legwinskij | 18:7acae34b518d | 34 | // Registers =================================================================== |
legwinskij | 18:7acae34b518d | 35 | #define CONFIG 0x1A |
legwinskij | 18:7acae34b518d | 36 | #define GYRO_CONFIG 0x1B |
legwinskij | 18:7acae34b518d | 37 | #define ACCEL_CONFIG 0x1C |
legwinskij | 18:7acae34b518d | 38 | #define MOT_THR 0x1F |
legwinskij | 18:7acae34b518d | 39 | #define INT_PIN_CFG 0x37 |
legwinskij | 18:7acae34b518d | 40 | #define INT_ENABLE 0x38 |
legwinskij | 18:7acae34b518d | 41 | #define INT_STATUS 0x3A |
legwinskij | 18:7acae34b518d | 42 | #define ACCEL_XOUT_H 0x3B |
legwinskij | 18:7acae34b518d | 43 | #define ACCEL_XOUT_L 0x3C |
legwinskij | 18:7acae34b518d | 44 | #define ACCEL_YOUT_H 0x3D |
legwinskij | 18:7acae34b518d | 45 | #define ACCEL_YOUT_L 0x3E |
legwinskij | 18:7acae34b518d | 46 | #define ACCEL_ZOUT_H 0x3F |
legwinskij | 18:7acae34b518d | 47 | #define ACCEL_ZOUT_L 0x40 |
legwinskij | 18:7acae34b518d | 48 | #define TEMP_OUT_H 0x41 |
legwinskij | 18:7acae34b518d | 49 | #define TEMP_OUT_L 0x42 |
legwinskij | 18:7acae34b518d | 50 | #define GYRO_XOUT_H 0x43 |
legwinskij | 18:7acae34b518d | 51 | #define GYRO_XOUT_L 0x44 |
legwinskij | 18:7acae34b518d | 52 | #define GYRO_YOUT_H 0x45 |
legwinskij | 18:7acae34b518d | 53 | #define GYRO_YOUT_L 0x46 |
legwinskij | 18:7acae34b518d | 54 | #define GYRO_ZOUT_H 0x47 |
legwinskij | 18:7acae34b518d | 55 | #define GYRO_ZOUT_L 0x48 |
legwinskij | 18:7acae34b518d | 56 | #define MOT_DETECT_CTRL 0x69 |
legwinskij | 18:7acae34b518d | 57 | #define USER_CTRL 0x6A |
legwinskij | 18:7acae34b518d | 58 | #define PWR_MGMT_1 0x6B |
legwinskij | 18:7acae34b518d | 59 | #define PWR_MGMT_2 0x6C |
legwinskij | 18:7acae34b518d | 60 | #define WHO_AM_I 0x75 |