# Programar memoria 24LCXX en MPLAB (MPASM)



## Daniel Meza (Dic 16, 2012)

Buenas tardes... Me he quedado detenido por un problema que me acaba de surgir. Quiero almacenar en una EEPROM 24LC32 algunos datos iniciales pero no recuerdo como generar el archivo ".bin" para cargárselo. 

Recuerdo que antes ya había logrado eso pero lo he olvidado , tengo vagos recuerdos que en aquella ocasión utilicé el MPASM para generar el archivo .bin a partir de el código escrito en MPLAB, pero solo eso, nada más.
Agradecería alguien me de una mano. Gracias


----------



## Daniel Meza (Dic 19, 2012)

Parece que nadie me supo indicar como hacer eso , pero por suerte y después de mucho buscar y experimentar he "recordado" el procedimiento para generar los archivos .HEX para las memorias 24Cxx

Por si a alguien le sirve, explico como se logra esto.

*1-*Abrimos MPLAB y escribimos la siguiente cabecera en el código fuente:

_LIST	P=EEPROM8			;Memoria EEPROM
	#INCLUDE	"MEMORY.INC"			;Archivo de directivas
	LIST		M=_24LC32A_               ;Memoria a utilizar

*2-* Escribimos y definimos las direcciones de los datos, los datos deben de estar después
de la directiva *"DATA"*

_ ORG			0x0000 
	DATA		"Foros de Electronica"
        ORG                  0x00FF
        DATA                 "Datos de prueba"
	END_

*3-* Procedemos a almacenar el archivo con la extensión .ASM

*4-* Una vez hecho esto nos dirigimos a la carpeta de instalación del MPLAB y buscamos la aplicación del compilador MPASM.EXE, en mi caso está en el path:
_C:\Program Files (x86)\Microchip\MPASM Suite_

*5-* Ejecutamos el compilador y nos aparecerá un ventana así



Seleccionamos el archivo que queremos convertir a .HEX y nos fijamos que las demás casillas estén en la opción "Default"

*6-* Damos click en "Assemble" y listo, si el compilador no generó errores, en la misma carpeta donde tenemos el archivo .ASM estará el archivo .HEX listo para cargarse a la EEPROM. 
Ahora, para convertirlo a .bin podemos usar algún programa en la red para que haga la conversión.


----------



## D@rkbytes (Dic 20, 2012)

Gracias por la información Daniel.

Es bueno saber como llevar a cabo este procedimiento con el MPASM de MPLAB
Sin embargo, es mucho más fácil hacer este tipo de archivos *.hex con el programa PonyProg
(Incluso con otros programadores)

Saludos.


----------



## Daniel Meza (Dic 20, 2012)

Así es, de hecho así lo estaba intentando hacer pero no es muy comodo estar buscando direcciones y llenando el buffer a mano (¿así se hace no?); así que mejor opté por hacerlo como otro programa normal para PIC, así puedo usar las directivas del ensamblador y definir direcciones más cómodamente


----------



## D@rkbytes (Dic 20, 2012)

Pues por la búsqueda exacta de dirección, si es más cómodo definirla y escribir datos como describes.
Pero con los programas como el PonyProg, IC-Prog, WinPic800, etc.
Solamente basta editar el buffer en la dirección requerida, y guardar el archivo en formato INHX8M (hex)

Y te evitas todo eso de escribir instrucciones, crear el archivo asm y compilar.


----------

