1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/esp_common/periph
Gunar Schorcht a66fef5bf5 cpu/esp_common: add bus clear for I2C on ESP32
On the ESP32 it is often not possible with the I2C software implementation to communicate with an AIP31068 based LCD module.  Therefore, the I2C hardware implementation is enabled when the AIP31068 driver is used, but it is more buggy than stable. The timing of the two implementations seems to be almost identical. The only difference is that the hardware implementation clears the bus before each access by sending 10 clock pulses on the SCL line while SDA is LOW. Using the same mechanism during I2C initialization for the software implementation solves the communication problem with the AIP31068.
The same software implementation works reliably with the AIP31068 on the ESP8266.
2021-12-06 22:02:30 +01:00
..
flash.c cpu/esp_common: fix unaligned access in periph_flashpage 2021-11-07 22:06:27 +01:00
hwrng.c cpu/esp*: move periph/hwrng to cpu/esp_common 2020-02-21 09:09:34 +01:00
i2c_sw.c cpu/esp_common: add bus clear for I2C on ESP32 2021-12-06 22:02:30 +01:00
Makefile esp/esp*: move common code to cpu/esp_common 2020-02-21 09:09:34 +01:00
spi.c cpu/periph_spi: update implementations to new API 2021-09-01 21:38:40 +02:00
uart.c esp8266: Support UART1 and other UART0 pins. 2021-05-02 12:27:27 +00:00