Muchas gracias por tu interes!
Te cuento que toda la parte del harware ya la tengo desarrollada y 100% funcionando
. En efecto para la deteccion de tonos uso un simple integrado, en mi caso el CM8870. Este integrado, como todos los otros decodificadores DTMF, posse 5 salidas de datos, 4 que se utilizan para brindar un numero binario correspondiente a la tecla presionada como bien dijiste, y otro que avisa de la presencia de un tono DTMF decodificado en la salida (todo aquel que desee mas informacion sobre el tema no dude en preguntar xD).
Lo que planteas de guardar 2 teclas por byte es muy interesante ya q asi ahorraria bastante espacio... pero al verdad es q nose muy bien como hacerlo. Tendria q ir preguntando bit por bit e ir guardando bit por bit con la instruccion bsf Numero,x (aca va una duda muy de principiante: La x que indicaria el numero del bit que pongo a 1, puede ser un contador que se valla incrementando de a uno? )
Y el tema del pic, tendria q se un pic q traiga el modulo MSSP, o sea q sea master?
Por q encontre por varios lados que hay 2 tipos de pic con I2C, uno q es simplemente I2C, y que hay que armar todo un programa como el que postearon mas arriba, y despues hay otro que es MI2C, que segun lei en varios lados toda la interfaz de software q hay q hacer en el otro caso ya biene integrada en el mismo hardware. Con esto pienso q en el segundo caso el programa deberia ser menos engorroso. Y en lo personal apunto a que si esto es asi utilizar un pic con esta caracteristica para alivianar el programa xD
Estube viendo unas hojas de datos de pic q traen el MSSP pero no encontre en ninguna ejemplos practicos de como serian las lineas de codigo para grabar o leer memorias con esto...
Si alguien me puede sacar todas estas dudas se agradece! xD