Atualmente, tenho um número de série codificado no firmware para um design com o qual estou trabalhando. O firmware pode ler e reportar o número de série. Isso funciona bem para o que eu preciso. O problema é que cada novo número de série exige que eu mude meu código e recompile. Isso é complicado quando há muitas unidades a serem construídas, é possível introduzir erros e é uma má prática geral. Os números de série são fornecidos a mim e o design do hardware é definido, portanto, não posso adicionar nenhum recurso no hardware para serializar as unidades (EEPROM / Chip de identificação de silicone / pull-ups). O que eu gostaria de fazer é localizar o número de série em um endereço fixo, compilar o código uma vez e editar esse endereço no arquivo HEX compilado para cada novo número de série. O número é referenciado em vários lugares, então, idealmente, desejo defini-lo e localizá-lo uma vez, referencie essa "variável" em qualquer outro lugar do meu código. Alguém sabe como localizar dados constantes em um local específico de memória endereçável de minha escolha, usando o compilador C18? Existe uma maneira melhor de sugerir alguém?