We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Rust Embedded for STM32 Microcontrollers: I2C protocol
Summary
Description
The sixth video of the Rust Embedded course.
In this video you will learn:
* What is I2C protocol.
* The order of operations in I2C protocol.
* The most important features of I2C protocol.
* How to read data from the LSM303 magnetometer located on the F3Discovery board.
* How to make sure that you I2C communication is functional.
* What is open-drain and pull-up resistor, and how to find them on electrical schematics.
* How to use reference manuals of external sensors.
References:
* Rust Discovery Book - Chapter 14 - I2C (https://docs.rust-embedded.org/discovery/f3discovery/14-i2c/index.html)
* Understanding the I2C bus by Texas Instruments (https://www.ti.com/lit/an/slva704/slva704.pdf)
* LSM303AGR (https://www.st.com/resource/en/datasheet/lsm303agr.pdf)
* LSM303DLHC (https://www.st.com/resource/en/datasheet/lsm303dlhc.pdf)
* F3Discovery electrical schematics (https://docs.rs-online.com/5192/0900766b814876f9.pdf)
Timeline:
0:00 - Intro
0:41 - Basics of I2C
2:16 - LSM303 magnetometer sensor
3:12 - Important I2C features
5:04 - Reviewing crate documentation
5:40 - Reviewing I2C example from documentation
7:25 - Building our own I2C solution
9:20 - Testing the solution
10:32 - LSM303 reference manual
11:08 - Differences across STM32 HAL crates
12:00 - Outro
#rust #embedded #google
Translated At: 2025-07-05T03:52:14Z