Uuuyy es muy muy facil, yo tengo una libreria que funciona perfecto, esta escrita en C, algunas cosas modifique porque a mi tampoco me andubo, el tema crucial es la velocidad en que se generan los pulsos de SCL, la memoria que estas usando no es muy rapida y puede que no llegue a reaccionar, mandame un privado asi me acuerdo. Yo utilizo la misma memoria con un 89C51CC01, por ahi tenes que modificar la rutina de delay pero eso seria lo de menos.
Haceme acordar

Un abrazo y suerte
PD: pasame los puertos que usas para el SDA, SCL Y WP asi te las doy listas para usar.