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