|
|
|
||||||||
| Arcade | Registrazione | Blogs | Regolamento | Feedback | FAQ | Lista Utenti | Calendario | Segna come Letti |
| Ultimi 5 blog pubblicati su PcTuner Blog | ||||||
|
||||||
![]() |
|
|
Strumenti Discussione | Modalità Visualizzazione |
|
|
#1 |
|
Registered User
|
Come calcolo checksum?
Ho un sensore che mi trasmette dei dati e devo controllare il checksum: se non sbaglio dovrebbe essere il resto della divisione della somma dei Byte (per non mi ricordo che numero, ma non mi diventa).
__________________Checksum: "somma delle 4 Keyword e del byte 55 (hex) escludendo dal calcolo il bit di parità" (datasheet sensore). Cioè? Comunque alcuni codici di esempio sono questi: 55 D0 85 85 94 43 (checksum = 43h) 55 D0 85 86 94 C4 (C4h) 55 D0 85 89 94 C7 (C7h) 55 D0 85 08 94 46 (46h) Tipo, tra la prima e la terza sequenza cambia solo un bit, ma il checksum passa da 43 a C4... boh! Magari qualcuno più ferrato ne capisce qualcosa...
Materazzi squalificato!? Tanto alla fine...
|
|
|
|
|
|
#2 |
|
Registered User
|
A volte per checksum si intende impropriamente una qualsiasi forma di controllo errore su un pacchetto (tipo, ad esempio, il CRC).
In questo caso invece si tratta proprio di checksum vera e propria: esegui la somma unsigned dei byte (il primo pacchetto che hai scritto dev'essere sbagliato). 55h + D0h + 85h + 85h + 94h = (2)C3h la checksum è C3h Tanto in C quanto in assembly ti basta usare un byte o un unsigned char inizializzato a zero e continuare a sommare i valori del pacchetto. Alla fine avrai la checksum. |
|
|
|
|
|
#6 |
|
Registered User
|
Mi sa che se non ci dici almeno che tipo di sensore sia sarà difficile darti una mano...
Da una ricerca rapida pare che quei pacchetti corrispondano a quelli che le centraline per auto mandano sul bus OBD II per identificare le proprie funzionalità, ma mi sa che non c'entri nulla dato che parli di sensore. |
|
|
|
![]() |
Per le vostre immagini su questo forum potete usare PcTunerUp! Iscriviti gratuitamente alla nostra newsletter. |
| Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 visitatori) | |
| Strumenti Discussione | |
| Modalità Visualizzazione | |
|
|