Ante todo, Saludos!
Escribo en esta oportunidad, para compartir una duda y realizar una consulta abierta.
Estoy realizándo un proyecto con un pic 16f877a el cual incluye una memoria i2c 24c256, y estoy programando en C con CCS. He programado mucho en asm pero en C no mucho. El Acceso a la memoria (Escritura y Lectura) está en pleno funcionamiento ya, y tengo todo montado en una placa funcionando. Aquí va mi duda y es acerca de la "ESTRUCTURA" de la escritura y lectura de la memoria en lenguaje C.
Tengo que escribir números de 4 dígitos el cual identificarán a personas, y también debo programar un procedimiento de búsqueda por medio de ése número de identificación y saber si está registrado, etc etc.. Cuando yo programaba en ASM, si mi numero era de 4 dígitos, yo guardaba un dígito por localidad de la memoria en ASCII, y cuando hacia la búsqueda buscaba por el primer digito, si coíncidia, buscaba por el segudndo y así hasta el último para ver si está registrado. Sin embargo, estuve viendo un ejemplo en C aquí en el foro (
Ejemplo PIC y memoria i2c), y hay algo que no entiendo.
Crean una cadena de texto completa en una variable y la almacenan en una localidad de la memoria. Luego incrementan el apuntador que indica la dirección de la memoria y graban otra cadena, entonces Toda esa cadenota se guarda en una sola localidad de 8bits?. Para mi es absurdo e imposible, pero aún asi no se exactamente como es el proceso ahi, ya que cuando van a leer las cadenas de texto para reproducirlas en la pantalla, hacen lo mismo a la inversa. Apuntan a la prmera localidad, leen y muestran, incrementan y vuelven a leer la otra cadena.
Al apuntar a la dirección 0 y grabar el número 1234. El pic graba un dígito por localidad y la dirección para el siguiente numero de 4 dígitos así como para su posterior búsqueda es el 5?
El pic graba en ASCII los números y cadenas de texto en la memoria?
Gracias y disculpen lo extenso.