also, bei einem display, welches ich vor kurzem probiert habe, ging das folgendermassen:

i2cstart(adresse)
i2cwrite(registernummer)
i2cstart(adresse+1) //+1 bedeutet "lesen"
i2cread()

es wird also gestartet, die registernummer geschrieben, dann wieder gestartet mit der adresse+1 wodurch der baustein weiss dass er gelesen wird, und dann wird der lesebefehl benutzt. das da oben ist pseudocode, die funktionen heissen etwas anders glaub ich.

ansonsten: such mal nach nem link für das datenblatt, ich schaus mir dann mal an.