Dire che "rappresentano valori esadecimali" di per sé vuol dire poco ... nel senso che un byte sono 8 bit e basta. Cosa rappresentano per te quei byte ... dipende .... devi saperlo (un valore con segno? un valore senza segno? Un carattere ASCII? ecc..). E se facessi un esempio, sarebbe ovviamente meglio.Originariamente inviato da Sampy84
Quando mando un comando di richiesta alla eeprom essa mi risponde con 3 blocchi di byte ( 6 Byte, 8 Byte, 1 byte ) questi, se non erro dovrebbero rappresentare dei valori esadecimali
Ovviamente non puoi "buttare" i byte direttamente su un JTextField ... nemmeno supponendo 1 byte -> 1 char (se il byte valesse 9 sarebbe uno spazio di "tabulazione" ... e quindi?).Originariamente inviato da Sampy84
Siccome la risposta dovra essere visualizzata su una JtextField di una gui come faccio a convertire la risposta della eeprom in caratteri o interi visualizzabili correttamente?? Perche se glie li faccio stampare direttamente adesso visualizzo avviamente solo simboli strani come faccine e quadratini.
Ma bisogna vedere cosa vuoi rappresentare e come! Vuoi che un byte 10100110 sia scritto nel JTextField come 2 caratteri a6 (è la rappresentazione in esadecimale del byte)??? Allora usa Integer.toHexString().Originariamente inviato da Sampy84
Avevo trovato una guida che diceva di dividere i blocchi di byte e fare una doppia divisione per 16 e prendere solo il resto ma nn sono stato in grado di risolvere, potete darmi una mano ???
codice:byte b = -90; // è 10100110 in binario, a6 in esadecimale String s = Integer.toHexString(b & 0xFF); // s contiene "a6"