I2C questo sconosciuto

allora ho cambiato #define address 0x64 in #define address 64e ora sembrerebbe funzionare,è un pò lento ad aggiornare le letture.

edit:ho abbassato il delay da 1000 a 100 ora è più veloce. ma ho bisogno di tutto il codice per avere letture sull' asse X?

micky861: ho trovato questo : http://todbot.com/arduino/sketches/I2CScanner/I2CScanner.pde ... edit: l'indirizzo 30 è un altro sensore sulla IMU dovevano essere 4 ma dato che fa la scansione fino al 100 gli altri due non li vede il 105 e il 119.

Non so perché quel sketch fa la scansione solo fino al indirizzo 100 e non fino al indirizzo massimo possibile ( 127).

modifica la riga

byte end_address = 100;

in

byte end_address = 127;

e trovi tutti gli indirizzi.

Ciao Uwe

micky861: allora ho cambiato #define address 0x64 in #define address 64e ora sembrerebbe funzionare,è un pò lento ad aggiornare le letture.

edit:ho abbassato il delay da 1000 a 100 ora è più veloce. ma ho bisogno di tutto il codice per avere letture sull' asse X?

se hai un delay ci credo che le letture son lente :-)

se vuoi leggere solo l'asse X, allora ti posizioni sul suo indirizzo di partenza e poi leggi tanti byte quanti sono i registri che compongono il valore asse X

Scuate forse non sono stato molto chiaro, volevo dire se è possibile snellire il codice dato che mi serve solo un valore di esso. ho questo dubbio perchè non ho ancora ben capito tutto il suo funzionamento e vorrei eliminare le parti che non mi interessano per la lettura dell'asse X senza peròprovocare dei "danni" al codice..

quale codice? postalo che vediamo dove si può sforbiciare

come vedrai ho gia disabilitato con / ---/ stampa sulla seriale dei valori Y Z,ma è la metà finale che non sò se si può eliminare qualcosa. per questo codice uso IDE 0023 che poi tra l'altro volevo importarlo nell IDE 1.0.

dimenticanza

prova.pde (5.09 KB)

Le funzioni readAccel e readAccel2 non vengono richiamate quindi puoi eliminarle.