Скорость i2c должна быть как минимум в 8 раз выше, чем скорость параллельного интерфейса.
Atmega может дрыгать пинами на частоте 8 Mhz при кварце 16 Mhz. Остальные тормоза вам создает программная реализация с кучей абстракций. Хотите драйва - переписывайте все на C, без абстракций и с кучками на асм.
Или меняйте контроллер на ARM.