Правильно ли я понимаю (в аглицком увы, не блещу):
Чтение 1 байта по произвольному адресу:
1. Выдаем адрес устройства 24С128 с режимом записи
2. Выдаем 2 байта адреса информации в 24С128
3. Выдаем адрес устройства 24С128 с режимом чтения
4. Считываем байт данных, выдаем NACK и СТОП.
(вроде работает)
Чтение серии байт:
1. Адрес считываемых данных хранится в регистре адреса 24С128 от предыдущей операции чтения/записи +1.
2. Выдаем адрес устройства 24С128 с режимом чтения.
3. Считываем в обработчике байты данных, сопровождая ACK.
4. После считывания последнего байта выдаем NACK и СТОП.