Utility to read and write I2C EEPROM memory devices.
Using a STM32 Black Pill (stm32f103c8)
and the ST HAL library.
Only the I2C2 bus is used
| STM32F103 | Function |
|---|---|
| PB10 | SCL |
| PB11 | SDA |
Important note:
Aditionally, a 10k pullup resistor to Vcc is required in both SDA and SCL.
Supported I2C memories are:
- 24LC16
- 24LC64
- X24645
- 24LC256
| EEPROM (DIP-8) | Connected to |
|---|---|
| 1 | GND |
| 2 | GND |
| 3 | VCC |
| 4 | GND |
| 5 | SDA |
| 6 | SCL |
| 7 | GND |
| 8 | VCC |
Using the ST HAL library for I2C, USB, USB CDC, Clocks and GPIO
USB CDC Class implemented thanks to philrawlings modified version of the ST CDC example
https://github.com/philrawlings/bluepill-usb-cdc-test
The PC side CLI is made with Qt using QSerialPort library among others.
Run eeprom-programmer -h to get command line options
'sijk' for his implementation on Unix signals in Qt
https://github.com/sijk/qt-unix-signals
'user948581' on Stack Overflow for his implementation on Windows signals handler
https://stackoverflow.com/questions/7581343/how-to-catch-ctrlc-on-windows-and-linux-with-qt