Página 1 de 1

Especie de Write-Code - Um numero de serie por software

MensagemEnviado: 07 Dez 2006 20:27
por microeletronica
Ola Senhores, Boa noite.

Estava pensando um dia desses de uma forma de gravar os microcontroladores de producao de um equipamento com um codigo unico, como se fosse uma chave, um numero imutavel e unico.

Pensei entao em utilizar uma forma de gravacao que, toda vez que gravasse o dispositivo, mandasse de alguma forma o string da hora e data de gravacao do relogio do PC para o microcontrolador.

Entao este passaria a ter um numero que fosse unico, pelo menos seria muito dificil ter outro equipamento igual. Mas sei que depois de gerado o hex, é dificil recompilar, dar esse dever pra producao.
Os equipamentos que utilizo tem normalmente um microcontrolador e nao tem memoria externa, sao de baixo custo e utilizam LPC ou PIC.

Gostaria de saber se alguem ja fez isso, ja pensou nisso ou se esse topico ja foi abordado nesta lista.

Pensei em utilizar de repente uma serial pra enviar esta string, pra habilitar o aparelho pela primeira vez.
Mas isso daria muito trabalho, ja que aumentaria o tempo de producao - gravacao. Legal seria um procedimento unico que mandasse esse string na gravacao do hexa.

É possivel?:

Obrigado pela discussao.

MensagemEnviado: 07 Dez 2006 22:58
por xultz
Na verdade não é nadas doutro mundo não. Você só tem que achar a(s) posição(ões) de memória flash desses bytes de serial no arquivo hex, o que é bem fácil, haja visto que o .hex é em formato texto de sintaxe super simples.
Você teria que gerar um programa que modificasse o .hex o tempo todo, para cada gravação, alteraria essas posições, recalcularia o checksum da linha e mandasse gravar. No caso do PIC, se não me falha a memória, tem uma opçao de linha de comando para gravar no PicStart. No caso dos LPC, o programa poderia chamar o lpc21isp e mandar ver.

MensagemEnviado: 10 Dez 2006 15:39
por a.rairan
o PROMATE 3 da microchip faz isso.

ele gera instruções de RETLW com o seu serial,. no inicio do software vc dah um call para o local da instrução (que vc define) e jah carrega o work no seu serial e pronto

MensagemEnviado: 10 Dez 2006 20:51
por microeletronica
Obrigado
;)

MensagemEnviado: 11 Dez 2006 20:31
por jeanfernandes
Micro....

Eu fiz o seguinte....determinei um const byte serial[12] = {......}
depois fiz uma merreca de programa em C....turbao mesmo....pra alterar os dados....de acordo com um tabelasso que gerei....(um arquivo .dat com o primeiro campo...pra marcar se tava usado ou nao).....
dai fiz um bat como os mala ai disseram....

Ehehehehehehhhehe