Recommended · for some experience
(Sponsored) How To Write A Driver (STM32, I2C, Datasheet) - Phil's Lab #30
Why people recommend it
Recommended as a clear worked example of turning a datasheet into an I2C driver on STM32, with a structure that carries over to other chips.
Watch for: STM32 based, but the architecture applies more widely