Difference between revisions of "Dev/STM32I2C"
Jump to navigation
Jump to search
Line 22: | Line 22: | ||
-1 never crash the MCU | -1 never crash the MCU | ||
-2 never provide corrupted data | -2 never provide corrupted data | ||
-3 get as few failed transferts as possible | -3 never crash the peripheral | ||
-4 get as few failed transferts as possible |
Revision as of 03:12, 15 April 2011
This page is a work document about STM32 I2C driver
Documentation
STM32F10xxx Cortex-M3 programming manual
STM32F101xC/D/E and STM32F103xC/D/E Errata sheet
RM0008 Reference manual ( page 726 )
Problem
We're implementing a "Master" driver.
The I2C peripheral on STM32 is very "timing sensitive".
It has been experienced that we can not rely on "events" like described in the reference manual and need to implement our own state machine in order to be able to deal with the timing sensitivity of the hardware.
Goals
-1 never crash the MCU -2 never provide corrupted data -3 never crash the peripheral -4 get as few failed transferts as possible