I2C con expander PCF8574

13 Anni 1 Mese fa - 13 Anni 1 Mese fa #1 da Ricky85
I2C con expander PCF8574 è stato creato da Ricky85

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
  • Avatar di Ricky85
  • Senior Member
  • Senior Member
Di più
13 Anni 1 Mese fa - 13 Anni 1 Mese fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: I2C con expander 8574
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
Ultima Modifica 13 Anni 1 Mese fa da Mauro Laurenti.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
13 Anni 1 Mese fa #3 da Ricky85
Risposta da Ricky85 al topic Re: I2C con expander 8574

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
  • Avatar di Ricky85
  • Senior Member
  • Senior Member
Di più
13 Anni 1 Mese fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: I2C con expander PCF8574
Ciao,

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.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
13 Anni 1 Mese fa - 13 Anni 1 Mese fa #5 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: 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.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro LaurentiPinnaStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login