Buona Pasqua a tutti, sto cercando di utilizzare più AT85 come slave e un Nano come master, i diversi esempi reperiti utilizzano la libreria TinyWireS.h, qualcuno sa indicarmi dove trovarla? io riesco soltanto a reperire la TinyWireM.h!!
Se tu usassi un "core" più aggiornato, come quello di Spence Konde, NON dovresti usare altro che la classica Wire senza cercare cose ormai più che obsolete ...
Ciao. Non ho mai provato la wire su attiny, però vedo che ci sono 2 esempi "master_writer" e "slave_receiver"... hai provato utilizzando questo esempio?
Grazie, sapevo che doveva esserci un errore nella trasmissione, ma, non avendo due Nano liberi, non capivo dove e perchè (mai avevo usato lo I2C se non con i sensori).
Non credo che il codice dello slave sia giusto, però se dici che tra 2 nano funziona ne prendo atto. A livello fisico di collegamenti sei sicuro che siano giusti? Hai messo i pullup su SDA e SCL?
Come immaginavo, i due resisistori (da 10 K) non hanno avuto alcun effetto. Cambiato il nano master: stesso risultato. Ricontrollato i collegamenti, sono OK.
Qualcuno ha altre idee o bisogna presumere che lo AT85 non funziona come ricevitore I2C?
Intanto i resistori sono OBBLIGATORI perché il bus I2C è open-drain e quindi occorre qualche cosa che tenga i pin HIGH, poi ... magari il valore ideale per questi semplici collegamenti è 4.7K ... comunque dovrebbe essere poco influente.
Questo quello che Spence Konde scrive tra le vari cose nelle note relative al core ...
When using I2C on anything other than the ATtiny48/88
You must use an I2C pullup resistor on SCL and SDA (if there isn't already one on the I2C device you're working with - many breakout boards include them). 4.7k or 10k is a good default value. On parts with real hardware I2C, the internal pullups are used, and this is sometimes good enough to work without external pullups; this is not the case for devices without hardware I2C (all devices supported by this core except 48/88) - the internal pullups can't be used here, so you must use external ones. Even on the 48/88 you should always use external pullups as the internal pullups are not nearly as strong as the specification requires.
Per il resto, scrive un'altra cosa importante:
Current strongly recommended IDE version: 1.8.13
Inoltre spero che tu stia utilizzando ancora il "core" ATTinyCore 1.5.2 e non la nuova release del core 2.x che è ancora sperimentale.
Purtroppo parli con una persona che ha scoperto arduino da pochi anni e non ha le "basi" e/o la facilità di utilizzo del linguaggio informatico delle nuove generazioni. Attiny l'ho scoperto da meno di un anno, ATTinyCore lo scopro adesso non sapevo nemmeno esistesse.
Su internet ho visto esiste un file .zip devo scaricarlo? e dove metterlo?
Scusa le domande certamente banali per chi è esperto del settore, ma mi hanno insegnato a chiedere quando non si sa (ed il mio NON sapere nella materia è sicuramente enorme!).