Site icon Renzo Mischianti

PCF8575 e Micro su Matrici

Salve, Grazie x il lavoro ! Ho acquistato i chip e scaricato la sua libreria dopo aver letto l'articolo, perchè volevo realizzare con un Pro/Micro e più interfaccie PCF8575 uba specie di multitastiera, praticamente più interfaccie a matrice di vari pannelli di un cocpit utilizzando una sola CPU. Ho realizzato da prima la matrice a provata diretta sul Micro, e visto che tutto era ok sono andato avanti per farla leggere ak PCF8575. La matrice è fatta da circa 8 colonne e 7 righe, come primo progetto i pulsanti portavano a massa. Percui ciclo for tutte le colonne alte some set up e poi le abbassavo in sequenza ed andavo a leggere le righe singolarmente, con un incrementale per individuare il pulsante. Più un array per verificare lo stato antecedente in modo da rilevare solo i fronti di salita o discesa. Sul micro nessun problema, collegato al PCF sono iniziati i problemi. Ho introdotto dei ritardi sia da quando mando alto la colonna che dopo aver chiamato la lettura, altrimenti non ne voleva sapere. Una volta trovati indicativamente dei tempi che potessero andare , però la matrice si comporta in modo strano, sembra diafonia su i fili, delle righe vanno , altra blinkano tra on ed off ecc ecc. Così l'ho rifatta, visto che le uscite pilotano corrente , ho cambiato logica, messo dei pull up da 1 k sulle uscite e portate a messa e poi le alzo separatamente con un BAT come diodo per disaccoppiare. Ho risolto poco però. Sempre problemi di diafonia, in base a come muovo i cavi, circa 30 cm succedono magie. Ho visto leggendo l'articolo che è possibile fare una lettura del buffer dell' IO tipo shift register e poi andare a lavorare sulle singole posizioni. Così ho pensato OK, aumento i tempi, peggo in una sola volta e poi estraggo dalla singola lettura. Ma nulla , come lancio il readall sia in low memory che normale, il pro/micro si pianta. Dunque le domande sono multiple, la n1 meglio che lasci perdere non nasce per fare una cosa del genere? La 2 metto resistenze di pull up di valori più bassi, anche se tiro più corrente diminuisco la diafonia e risolvo? La 3 , devo cambiare micro il 32u4 meglio destinarlo ad altre cose? Grazie anticipatamente Riccardo P.S. allego anche il codice che stò usando per fare la varie prove
Exit mobile version