Table of Contents
About the Project 📃
This is a simple driver for ST's ism330dhcx
sensor.
Documentation for that sensor can be found at ST's website
Usage 👀
Check out the examples
folder for simple implementation
To declare a sensor is pretty simple:
let sensor = new.unwrap
If you want to use another address for the chip, you can do:
let sensor = new_with_address.unwrap
Or alter it after the fact
sensor.set_address;
All registers have the bits addressed by their function, for example here se set the BOOT
register in the CTRL_3C
register to 1
sensor.ctrl3c.set_boot.unwrap;
For bits that operate together, they have their custom type abstracted. For example, to set the accelerometer data rate you have to operate 4 bits. But here you just have to specify your desired data rate and the driver takes care of it.
// Sets the following bits
// ODR_XL3 to 0
// ODR_XL2 to 0
// ODR_XL1 to 1
// ODR_XL0 to 1
sensor
.ctrl1xl
.set_accelerometer_data_rate
.unwrap;
Help wanted 🤝
All contributions are welcome!
If you are using or plan to use this create don't hesitate to open an issue or a PR.
Multiple registers are yet to be referenced!
License
See LICENSE for more details.