Actualmente tengo un número de serie codificado en mi firmware para un diseño con el que estoy trabajando. El firmware puede leer y reportar el número de serie. Eso funciona bien para lo que necesito. El problema es que cada nuevo número de serie me obliga a cambiar mi código y volver a compilarlo. Esto es engorroso cuando hay muchas unidades que se deben construir, tiene la posibilidad de introducir errores y es una mala práctica general. Los números de serie se me asignaron y el diseño del hardware se estableció en piedra, por lo que no puedo agregar ninguna característica en el hardware para serializar las unidades (EEPROM / Silicon ID Chip / Pull-Ups). Lo que me gustaría hacer es ubicar el número de serie en una dirección fija, compilar el código una vez y luego editar esa dirección en el archivo HEX compilado para cada nuevo número de serie. El número está referenciado en varios lugares, por lo que idealmente, quiero definir & localícelo una vez, luego haga referencia a esa "variable" en cualquier otra parte de mi código. ¿Alguien sabe cómo ubicar datos constantes en una ubicación de memoria direccionable específica de mi elección, usando el compilador C18? ¿Hay alguna manera mejor que alguien pueda sugerir?