As reported by MBED user Fran6Jack: I2C bus are usually 5V tolerant on all STM32 processor. If an external device on the I2C bus requires 5V operation, we usually acheive it by using 5V external pull-ups on the bus. Since signaling uses open-drain output on I2C for both signal SCL and SDA any 5V tolerant MCU will work on a 5V I2C bus. Having pull-up activated on a 5V externally pull bus, cause the pin to clamp on the STM32 die diode and could damage the IC (There is a note in STM32 datasheet specifying this issue). It is understood by all the community that I2C bus should always be externally pulled by physical resistor. I2C initialization should then be ALWAYS OpenDrainNoPull by default. Up to now, this I2C driver was setting pull up by default as it helps basic testing, like 1 master and 1 slave, conencted with 2 wires without any external pull ups. This will not work anymore after this commit and applications tests or examples needs to be modified to explicitely configure pull ups ... But it is safer to follow reference manual guidelines. |
||
|---|---|---|
| .github | ||
| TESTS | ||
| cmsis | ||
| drivers | ||
| events | ||
| features | ||
| hal | ||
| platform | ||
| rtos | ||
| targets | ||
| tools | ||
| .gitattributes | ||
| .gitignore | ||
| .pylintrc | ||
| .travis.yml | ||
| CONTRIBUTING.md | ||
| DOXYGEN_FRONTPAGE.md | ||
| Jenkinsfile | ||
| LICENSE | ||
| README.md | ||
| doxyfile_options | ||
| doxygen_options.json | ||
| mbed.h | ||
| requirements.txt | ||
README.md
ARM mbed OS
mbed OS is an open-source embedded operating system designed for the "things" in the Internet of Things (IoT). mbed OS includes the features you need to develop a connected product using an ARM Cortex-M microcontroller.
mbed OS provides a platform that includes:
- Security foundations.
- Cloud management services.
- Drivers for sensors, I/O devices and connectivity.
mbed OS is modular, configurable software that you can customize it to your device and to reduce memory requirements by excluding unused software.
Release Notes
The Release Notes detail the current release and previous versions.
Continuous Integration Status
We run continuous integration on all of our branches and pull requests to verify the stability of mbed OS. The following are the Travis CI indicators for mbed OS.
Getting Started for Developers
You need mbed CLI to build mbed OS. For more details, read the mbed OS Handbook.
Getting Started for Contributors
We have a Contributing and Publishing Guide in the mbed OS Handbook.