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.
Homepage
- include "mbed.h"
- include <I2C.h>
- define SDA D14
- define SCL D15
- define ACCELEROMETER 0x35
- define CTRL_REG6_XL 0x20 control register to write in order to active accelerometer mode of the sensor
- define WHO_AM_I 0x0F
I2C i2c(SDA,SCL); Create an I2C Master interface, connected to the specified pins.
void write_register(int sensor_addr, int register_addr,int* data_to_write, int num_byte_to_write);
int main() {
int data_to_write=0b01000000; string to send in order to configure the accelerometer
write_register(ACCELEROMETER, CTRL_REG6_XL, &data_to_write, 1);
}
void read_register(int sensor_addr, int register_addr, int lenght, int num_bytes_to_read) { char read_data[8*length]; i2c.read(sensor_addr, read_data, lenght, 0);
}
void write_register(int sensor_addr, int register_addr,int* data_to_write, int num_byte_to_write) { i2c.write(sensor_addr,register_addr, 1,true);
i2c.write(sensor_addr, data_to_write,1,false); se repeated = 0 mando il bit di stop
FUNZIONE TROVATA SU INTERNET int tmp[32]; tmp[0]=register_addr; memcpy(tmp+1, data_to_write, num_byte_to_write); i2c.write(sensor_addr,(const char*)tmp, num_byte_to_write+1,0);
}