STM32F303K8T6でLSM303D動かしてみた

Dependents:   GPS_STM32F303K8

Committer:
sashida_h
Date:
Tue Sep 08 06:34:37 2020 +0000
Revision:
3:50ff4ad71082
Parent:
0:5b930e09bd6e
initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bclaus 0:5b930e09bd6e 1
bclaus 0:5b930e09bd6e 2 #ifndef __LSM303D_H
bclaus 0:5b930e09bd6e 3 #define __LSM303D_H
bclaus 0:5b930e09bd6e 4 #include "mbed.h"
bclaus 0:5b930e09bd6e 5
bclaus 0:5b930e09bd6e 6
bclaus 0:5b930e09bd6e 7
bclaus 0:5b930e09bd6e 8 class LSM303D {
bclaus 0:5b930e09bd6e 9 public:
bclaus 0:5b930e09bd6e 10 /** Create a new interface for an LSM303D
bclaus 0:5b930e09bd6e 11 *
bclaus 0:5b930e09bd6e 12 * @param sda is the pin for the I2C SDA line
bclaus 0:5b930e09bd6e 13 * @param scl is the pin for the I2C SCL line
bclaus 0:5b930e09bd6e 14 */
bclaus 0:5b930e09bd6e 15 LSM303D(PinName sda, PinName scl);
bclaus 0:5b930e09bd6e 16
bclaus 0:5b930e09bd6e 17
bclaus 0:5b930e09bd6e 18 /** read the raw accelerometer and compass values
bclaus 0:5b930e09bd6e 19 *
bclaus 0:5b930e09bd6e 20 * @param ax,ay,az is the accelerometer 3d vector, written by the function
bclaus 0:5b930e09bd6e 21 * @param mx,my,mz is the magnetometer 3d vector, written by the function
bclaus 0:5b930e09bd6e 22 */
sashida_h 3:50ff4ad71082 23 bool read(float *aData,float *mData);
bclaus 0:5b930e09bd6e 24
bclaus 0:5b930e09bd6e 25
bclaus 0:5b930e09bd6e 26 private:
bclaus 0:5b930e09bd6e 27 I2C _LSM303;
bclaus 0:5b930e09bd6e 28
bclaus 0:5b930e09bd6e 29
bclaus 0:5b930e09bd6e 30 float ax, ay, az;
bclaus 0:5b930e09bd6e 31 float mx, my, mz;
bclaus 0:5b930e09bd6e 32
bclaus 0:5b930e09bd6e 33 bool write_reg(int addr_i2c,int addr_reg, char v);
bclaus 0:5b930e09bd6e 34 bool read_reg(int addr_i2c,int addr_reg, char *v);
bclaus 0:5b930e09bd6e 35 bool recv(char sad, char sub, char *buf, int length);
bclaus 0:5b930e09bd6e 36 };
bclaus 0:5b930e09bd6e 37
bclaus 0:5b930e09bd6e 38 #endif