Jump to content
PLC Forum


scheda elettronica da programmare spi


martin1984
 Share

Recommended Posts

Si, è un esperimento che farei anche io, e magari proverei ad accendere la macchina e spegnerla dopo qualche secondo, per poi rileggere e vedere se il Micro al primo avvio inizializza la eeprom in qualche modo. 

Link to comment
Share on other sites


15 erogazioni

 

:100000000700000008000000030000001A000000C4
:100010000A00C9FFFFFFFFFFFFFFFFFFFFFFFFFF1A
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000D501660096006E00D0070A00AA006E0077
:10005000780056F3FFFFFFFFFFFFFFFFFFFFFFFFEB
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:10008000660099FFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
:10020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
:10021000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE
:10022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
:10023000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE
:10024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
:10025000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE
:10026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
:10027000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E
:10028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10029000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E
:1002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
:1002B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E
:1002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
:1002D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E
:1002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
:1002F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E
:10030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
:10031000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED
:10032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
:10033000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD
:10034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
:10035000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD

Link to comment
Share on other sites

ok posso provare ad cancellare  solo la eeprom , ma nella sezione programm come faccio non c'è la scritta erase nella sezione epromm ? c'è solo nella sezione device ma quello penso che cancelli anche la flash ,o sbaglio ?

Link to comment
Share on other sites

accendedola solo con la flash cosa potrebbe accadere ? non si rovina la macchina ?

 

ho provato ad leggere la flash ed mi sembra molto grande sono 91kb 

Link to comment
Share on other sites

Livio Orsini

Nella flash risiede il programma, nella eeprom i dati.

Al limite, se il programma è fatto bene, trovando tutti i dati di partenza a 0 il programma carica i dati di default.

Sempre se il programma fosse fatto bene, i dati dovrebbero essere in duplice copia in 2 aree differenti della eeprom; all'avvio il programma fa la verifica della congruità dei dati memorizzati ed in caso di discrepanze dovrebbe dare l'allarme di dati corrotti.

Link to comment
Share on other sites

Si... Se clicchi su erase cancelli tutto, eventualmente ricontrolla anche i fuses. 

Ma se vuoi evitare di cancellare tutto è sufficiente che tu modifichi il file della eeprom facendo tutte le righe uguali a quelle piene di FF... Lasciando solo la parte iniziale che vedi cambiare da una riga all'altra. 

Una volta modificato salvi e lo scrivi nel Micro... In questo modo è come se la eeprom fosse vergine. 

Link to comment
Share on other sites

ho modificato ed ho lascito invariate solo le 2 prime righe di programmazione ,( o dovevo lascire solo i 6 numeri che venivano modificati , ed mettere le F sugli altri valori ) ma salvandolo mi diventa com .txt  , come lo trasformo in .hex per farlo riconoscere al programatore

 

:1000000005000000080000000300000017000000C9
:100010000A02CCFFFFFFFFFFFFFFFFFFFFFFFFFF15
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10021000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10023000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10025000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10027000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10029000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1002F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10031000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10033000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10035000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10036000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10037000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10038000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10039000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1003A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1003B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1003C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:1003D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

Link to comment
Share on other sites

Al momento di salvare, invece di chiudere e rispondere di si alla finestrella di salvataggio, fai salva, come tipo file scegli "tutti i file", e poi il nome lo metti già con l'estensione .hex, per capirci nella casella anziché "eeprom" scrivi "eeprom.hex"

 

Oppure disabiliti l'opzione di Windows che nasconde le estensioni dei file e la modifichi a mano.

 

Link to comment
Share on other sites

si ho appena provato ma quando vado a programmare compare la scritta

Getting isp parameter.. SD=0x00 .. OKChecksum error in the specified Intel HEX file

 

da quello che vedo le Checksum delle prime 2 righe sono corrette , invece dove ho messo f sulle altre righe la Checksum non posso calcolarla !

Link to comment
Share on other sites

se cancellassi completamente il chip ed poi programmassi solo la flash ed rimettessi i fuses coretti , la parte di eeprom non rimarrebbe vuota ?

Link to comment
Share on other sites

no, così non va bene.

Prima di tutto devi modificare solo i campi di dati, l'iltimo byte di ogni riga (il checksum) devi lasciarlo, e sulle righe che modifichi devi ricalcolarlo... te lo avevo spiegato in un post precedente.

E poi, se vuoi provare a far partire la macchina con la eeprom vergine devi cancellare tutto, coprese le prime due righe.

Se proprio vuoi lasciare qualcosa io lascerei solo la riga che hai cancellato te, visto che contiene dei dati che non sono mai cambiati durante le erogazioni.

 

Una eeprom vuota è così:

:10000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:10008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
:10020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
:10021000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE
:10022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
:10023000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE
:10024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
:10025000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE
:10026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
:10027000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E
:10028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10029000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E
:1002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
:1002B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E
:1002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
:1002D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E
:1002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
:1002F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E
:10030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
:10031000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED
:10032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
:10033000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD
:10034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
:10035000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD
:10036000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D
:10037000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D
:10038000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D
:10039000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D
:1003A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D
:1003B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D
:1003C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D
:1003D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D
:1003E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D
:1003F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D
:00000001FF

se vuoi puoi fare copia incolla di questo. ovviamente per fartelo accettare il file deve essere .hex.

 

Se vuoi provare a scrivere una memoria azzerata solo nella parte variabile scrivi questa:

:10000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000D501660096006E00D0070A00AA006E0077
:10005000780056F3FFFFFFFFFFFFFFFFFFFFFFFFEB
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:10008000660099FFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
:10020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
:10021000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE
:10022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
:10023000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE
:10024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
:10025000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE
:10026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
:10027000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E
:10028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10029000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E
:1002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
:1002B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E
:1002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
:1002D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E
:1002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
:1002F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E
:10030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
:10031000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED
:10032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
:10033000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD
:10034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
:10035000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD
:10036000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D
:10037000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D
:10038000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D
:10039000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D
:1003A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D
:1003B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D
:1003C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D
:1003D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D
:1003E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D
:1003F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D
:00000001FF

 

ma per curiosità, che macchina è?... possibile che quel conteggio sia la somma di due tipi di erogazioni diverse?.... perchè c'è un numero che incrementa, che sommato ad un altro numero vicino, da come risultato il numero delle erogazioni segnate sul display.(5+8=13). Sugli altri numeri che incrementano non ho trovato relazione, deve essere una macchina complessa, non è una macchina "domestica"

 

Quote

invece dove ho messo f sulle altre righe la Checksum non posso calcolarla !

Certo che puoi calcolarla... ti ho spiegato come fare.

 

Link to comment
Share on other sites

Quote

Sugli altri numeri che incrementano non ho trovato relazione, deve essere una macchina complessa, non è una macchina "domestica"

 

Se è una automatica è probabile che tenga traccia delle erogazioni in un altro registro per fare altre operazioni, tipo fare un ciclo di pulizia ogni x erogazioni, e magari una volta fatto il ciclo di pulizia o quel che è, quei registri vengono portati a zero mentre il totalizzatore permane.

 

I numeri che non variano saranno durata dell'erogazione, durata della macinatura (se c'è un macinino) o altra roba del genere.

Link to comment
Share on other sites

ok provo  rispondere

 

la macchina è per casa o ufficio , non ha 2 contatori ha solo 2 tasti per fre il caffe ( lungo o corto ) potrebbe essere quello che divide le erogazioni

non ha il macinino ma va a capsule

non ha il ciclo di lavaggio dopo un numero di erogazioni

 

ho anche il manuale di servisio della macchina , se lo vuoi te lo posso mandare come messaggio pivato

 

poi provo a scrivere la eprom e ti faccio sapere ,grazie per avermela modificata

Link to comment
Share on other sites

Se hai il manuale di servizio potresti provare a cercare riferimenti alla programmazione, altrimenti è inutile. 

 

Se hai i due tasti potrebbero effettivamente incrementare due contatori distinti, ma che sul display vengono mostrati con una somma dei due. Per verificarlo puoi provare a fare un caffè lungo e vedere così se incrementa l'altro dato. 

 

I dati fissi oltre alla programmazione come ipotizzato da Darlington potrebbero contenere informazioni sulla macchina (modello, numero di serie, data di produzione, ecc.) 

Link to comment
Share on other sites

non riesco a capire come fai a calcolare le ultime 2 su ogni riga ed perche cambiano anche se sono tutte F

ho cercto di capire con lo schemino iniziale ma non riesco a capire

Link to comment
Share on other sites

ho cercato online ed ho visto che ci sono delle utility che  calcolano la Checksum  ma non capisco quale sia quella per il mio tipo di programmazione

Link to comment
Share on other sites

ho caricato il la eprom con il file parzialmente azzerato ed la macchina sembra funzionare ed le rogazioni sono 0 , adesso l'ho riletta ed si è modificata così

:1000000000000000000000000000000000000000F0
:100010000A00F5FFFFFFFFFFFFFFFFFFFFFFFFFFEE
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000D501660096006E00D0070A00AA006E0077
:10005000780056F3FFFFFFFFFFFFFFFFFFFFFFFFEB
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:10008000660099FFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
:10020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
:10021000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE
:10022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
:10023000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE
:10024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
:10025000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE
:10026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
:10027000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E
:10028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
:10029000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E
:1002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
:1002B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E
:1002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
:1002D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E
:1002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
:1002F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E
:10030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
:10031000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED
:10032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
:10033000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD
:10034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
:10035000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD
:10036000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D
:10037000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D
:10038000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D
:10039000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D
:1003A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D
:1003B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D
:1003C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D
:1003D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D
:1003E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D
:1003F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D
:00000001FF

 

Link to comment
Share on other sites

Ti avevo già spiegato come calcolare il checksum.

mi autocito:

Quote

 

Questo è un esempio di una riga di un file hex:


:10010000FF64320055FFFFFFFFFFFFFFFFFFFFFF10

devi interpretarli così:

: (due punti) = è il carattere di inizio riga

10 = è il numero di byte del campo dati (in esadecimale, quindi 16 byte)

0100 = indirizzo base dei dati della riga

00 = tipo di record (le righe che contengono dati sono tutti 00)

FF64320055FFFFFFFFFFFFFFFFFFFFFF = campo dati (16 byte) sono questi che devi vedere ed eventualmente modificare.

10 = Checksum, somma di tutti i byte precedenti della riga, e complemento a 2. ovviamente si prende solo il byte meno significativo.

 

 

Provo a farti un esempio, vediamo se così è più comprensibile.

Ti serve soltanto una calcolatrice esadecimale (va benissimo quella di windows)

Prendiamo come esempio la riga sopra, togliamo i due punti (:) e il checksum, ciò che rimane è:

10010000FF64320055FFFFFFFFFFFFFFFFFFFFFF

 

ogni byte è rapprensentato da 2 cifre, separiamo i byte per facilitarne la lettura:

10 01 00 00 FF 64 32 00 55 FF FF FF FF FF FF FF FF FF FF FF

 

Facciamo una semplice somma algebrica con la calcolatrice esadecimale:

10 + 01 + 00 + 00 + FF + 64 + 32 + 00 + 55 + FF + FF + FF + FF + FF + FF + FF + FF + FF + FF + FF  =  CF0   (le cifre sono diventate 3 perchè a forza di soomare abbiamo superato il massimo rappresentabile con un byte)

 

Ora facciamo il complemento a 2, la calcolatrice di windows ci da in tempo reale la conversione in binario:

110011110000

Il complemento a 2 si fa invertendo tutti i bit e sommando 1, quindi il nostro numero dopo l'inversione e la somma sarà

001100001111  +

                        1 =

------------------------

001100010000

 

Prendiamo solo gli 8 bit meno significativi (quelli più a destra):

00010000

 

ed ecco il tuo checksum, se lo converti in esadecimale è 10 (l'ultimo byte della riga)

 

adesso è più chiaro? :)

 

 

Link to comment
Share on other sites

Quote

ho caricato il la eprom con il file parzialmente azzerato ed la macchina sembra funzionare ed le rogazioni sono 0 , adesso l'ho riletta ed si è modificata così

Vedo che ha inizializzato a 0 tutta la prima riga (che secondo me contiene 4 contatori a 32 bit di cui il primo è il numero di caffè corti e il secondo il numero di caffè lunghi), e ha scritto 0A00F5 nella seconda.

Se non hai altre necesità puoi usare questo file letto per azzerare tutti i contatori, capire cosa sia lo 0A00F5 potrebbe essere difficile, potrebbe essere un controllo di errore dei dati salvati e chissà come viene calcolato.

 

Link to comment
Share on other sites

Già che ci sei, prima di programmarle prova a leggere la eeprom, giusto per vedere se quella che apparentemente sembra una parte fissa, è diversa da macchina a macchina... tra quei dati potrebbe esserci il seriale o la data di produzione.

Se poi non ti interessa perdere queste informazioni, come non detto.

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share


×
×
  • Create New...