i2c twi schrieb:
> ..schon mal andiskutiert und dachte eigentlich alles verstanden zu
> haben, aber ich bekomme kein ACK :-(
Schaun wir mal...
> Jetzt habe ich ein ganz einfaches Testprogramm,...
Sehr gut!
> Ausgabe:
>
>
1 | > i2c start
|
2 | > wert1=08
|
3 | > wert2=20
|
4 | >
|
Ok, TWI wird Master und bekommt dann kein ACK vom Slave...
> Mein auf das Problem reduzierte Testprogramm (Bascom, aber ich hoffe
> einfach zu lesen):
geht schon....
>
1 | > Twdr = &H40 'datenbyte=Adresse
|
2 | >
|
Da ist dein Fehler. Die Adresse von IC ist 0x40. Das TWI möchte aber
Adresse + R/W Bit....
7 Bit adresse | R/W
Bit 7..1 | Bit 0
Zusammen 8 Bit für TWDR.
Also 0x40 1 Bit nach links schieben = 0x80 und dann
1 addieren für Lesen oder 0 für Schreiben.
Das Ergebnis kommt dann ins TWDR.