syouichi imamori
/
MulticopterQuadX
Quad X Type Multicopter
I2cPeripherals/I2cPeripherals.h
- Committer:
- komaida424
- Date:
- 2021-02-21
- Revision:
- 8:1db19b529b22
- Parent:
- 4:4060309b9cc0
File content as of revision 8:1db19b529b22:
#ifndef MBED_I2cPeripherals_H #define MBED_I2cPeripherals_H #include "mbed.h" #include <iostream> #include "stdarg.h" #define LPS331AP // baro #define L3GD20 // gyro #define MPU6050 // gyro and accelameter #define ITG3200 // gyro #define ACM1602 // I2C LCD #define ST7032 // I2C LCD #define ADXL345 // accelameter #define GYRO_ADDR 0 #define ACCEL_ADDR 1 #define LCD_ADDR 3 #define BARO_ADDR 4 #define ULTRASONIC_ADDR 5 #define I2C_EEPROM_ADDR 0xA0 class I2cPeripherals { public: I2cPeripherals(PinName , PinName ); void start(int contrast=60); int write_lcd(const char*); void write_reg(int,char,char*,int); void read_reg(int,char,char*,int); int write_EEPROM(short,char*,int); int read_EEPROM(short,char*,int); void cls(); void locate(int,int); int GetAddr(int); int angular(float*,float*,float*); int Acceleration(float*,float*,float*); int pressure(); int temperature(); float height_cm(); float height_mm(); float height_us(); private: // virtual int _putc(int value); // virtual int _getc(); void i2c_write(int,char*,int); void find(); int ultrasonic(char); I2C _i2c; int LCD_addr; char LCD_cmd; char LCD_data; int Gyro_addr; char Gyro_data; int Accel_addr; char Accel_data; int barometor_addr; char barometor_data; int ultrasonic_addr; char ultrasonic_data; int ultrasonic_distance; int LCD_contrast; struct SensorInf { char addr; char who; //WHO_AMI char whoaddr; //WHO_AMI resister address }; }; #endif