- Messaggi: 50
- Ringraziamenti ricevuti 0
I2C con expander PCF8574
Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Ricky85
- Autore della discussione
- Senior Member
alcune osservazioni:
1) Attento all'indirizzo. Esiste il PCF8574 e PCF8574A la loro differenza è nell'indirizzo (controlla il datasheet)
In particolare l'indirizzo che hai usato tu è del PCF8574A e non dell'PCF8574.
2) Non controlli gli ACK (Acknowledgment)
3) Non hai la condizione StopI2C
Ho dei PCF8574 sotto mano. Visto le richieste di altre librerie credo che ne scriverò una anche per questo integrato.
...forse una bozza nelle prossime ore!
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
Mauro Laurenti ha scritto: Ciao,
alcune osservazioni:
1) Attento all'indirizzo. Esiste il PCF8574 e PCF8574A la loro differenza è nell'indirizzo (controlla il datasheet)
In particolare l'indirizzo che hai usato tu è del PCF8574A e non dell'PCF8574.
2) Non controlli gli ACK (Acknowledgment)
3) Non hai la condizione StopI2C
Ho dei PCF8574 sotto mano. Visto le richieste di altre librerie credo che ne scriverò una anche per questo integrato.
...forse una bozza nelle prossime ore!
Saluti,
Mauro
Ciao Mauro,
ho editato il post sopra proprio mentre mi rispondevi... per gli Ack me ne sono reso conto stamattina che non li gestivo... ieri sera ero ormai decisamente troppo fuso ><
Per quanto riguarda l'integratino, uso effettivamente il PCF8574A e non il PCF8574 (mi ci stavo gia fregando all'inizio con questo discorso degli indirizzi)
Al post precedente ho inserito il codice che sto provando questa mattina (preso dal sito Microchip e opportunamente pacioccato), ma sono ancora al "pian dei babi" come si dice dalle mie parti...
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Ricky85
- Autore della discussione
- Senior Member
- Messaggi: 50
- Ringraziamenti ricevuti 0
ho appena finito di testare la libreria.
Funziona sia per scrivere dati che per leggere. Prima di pubblicarla vorrei ritoccare alcune cose, inoltre vorrei scrivere una Brief Note poiché ritengo l'argomento interessante.
In ogni modo per la tua libreria tieni conto che il PCF8574 lavora a 100KHz e non a 400KHz.
Usando 400KHz non riesci a trasmettere i dati.
I diodi LED devono essere collegati con il catodo all'uscita del PCF8574 e l'anodo ad una resistenza che va a Vcc.
Questo significa che il LED si accenderà quando scrivi uno 0 e non 1.
Questo e' richiesto poiché solo quando hai l'uscita a 0 riesci a pilotare correttamente il diodo LED.
Vedi se riesci ad aggiustare la tua libreria, altrimenti domani usi quella che ho scritto.
saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.
Si prega Accedi o Crea un account a partecipare alla conversazione.
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.