2013-02-27 7 views

risposta

13

Che cosa vuoi veramente sapere?

Con ELM327 il protocollo è abbastanza semplice. Basta inviare un PID in ASCII e riceverai una risposta in ASCII. Si basa sul sondaggio. Quindi riceverai 1 risposta per 1 richiesta. Finché non si invia, non si riceve.

Per la conversione e quali comandi inviare, controllare i collegamenti forniti.

Alcuni altri link:

AT Commands
OBD-II Commands

+0

Link comando AT aggiornato. https://www.sparkfun.com/datasheets/Widgets/ELM327_AT_Commands.pdf –

+1

Modificare la risposta come suggerito. –

3

Se si vuole usare questa libreria, è necessario scaricare il codice sorgente. Il codice sorgente è auto-esplicativo. C'è anche il codice sorgente di un'applicazione di esempio. Ho provato a eseguire l'applicazione di esempio, ma non ha funzionato per me. Tuttavia, ho dato un'occhiata al codice sorgente e mi ha aiutato per la mia applicazione.

In questa libreria troverete le principali query già implementate e facili da usare. Ho trovato solo un errore nella classe ObdResetCommand. Questa classe implementa la classe super-ObdCommand e l'override del metodo ReadResult in questo modo:

@Override 
public void readResult(InputStream in) throws IOException { 
    // do nothing 
    return; 
} 

Per farlo funzionare, è necessario rimuovere questo metodo prioritario al fine di utilizzare la classe di super-uno. Se non lo fai, la risposta non viene letta e verrà letta nel seguente comando, in modo che ogni risposta venga ritardata di una query.

Spero che aiuti.

+0

puoi vedere questa domanda http://stackoverflow.com/questions/18528792/unable-to-send-atz-command-to-elm-327-after-establishing-connection-with-elm327 –