Komunikacja prze I2C nie jest demonem prędkości. Sprawdź czy działa na 100kHz i ewentualnie spróbuj ustawić na 400kHz. Zawsze to będzie parę ms szybciej.
Czas ładownia danych do oleda może sprawdzić korzystając z funkcji micros(), odczytujesz wartość przed, po, różnica na serial.
Tu na forum wrzuciłem również bibliotekę z przykładem gdy właśnie nie jest buforowany cały ekran, wgranie jednej z 8 linii trwa oczywiście odpowiednio krócej.
Jak widzisz w ramach tego co daje Arduino można już przyspieszyć x32 , a I2C może też chodzić w UNO ok i na 800kHz, trudniej odbierać wtedy dane i nie każdy slave to ogarnie.
Czas ładownia danych do oleda może sprawdzić korzystając z funkcji micros(), odczytujesz wartość przed, po, różnica na serial.
Tu na forum wrzuciłem również bibliotekę z przykładem gdy właśnie nie jest buforowany cały ekran, wgranie jednej z 8 linii trwa oczywiście odpowiednio krócej.
Jak widzisz w ramach tego co daje Arduino można już przyspieszyć x32 , a I2C może też chodzić w UNO ok i na 800kHz, trudniej odbierać wtedy dane i nie każdy slave to ogarnie.
Miło być decenianym https://buycoffee.to/kaczakat