Цитата(sergeeff Jr. @ Nov 23 2010, 12:21)

Смущает то, что никакого NACK быть не должно
А откуда он там по-вашему должен получаться? Ведь после передачи 8-и бит SCL тормозится. Далее зарядили через USICNT передачу
одного бита со значением 0. Это будет передачей ACK. После передачи одного бита (ACK) SCL опять тормозится. Формируем "вручную" повторный старт. Заряжаем следующие 8 бит на прием или передачу. Записываем 8 в USICNT. Поехали. Где тут "лишний" NACK получается-то?