Hallo
Habe angefangen das Datenblatt zum Attiny 441 genauer zu studieren und
einen Code daraus zu bauen. Bin bisher zu diesem gekommen.
1 | void I2C_init(void)
|
2 | {
|
3 | TWSA = I2C_SLAVE_ADDRESS; // TWI Adressregister
|
4 | TWSD = 0xFF; // Datenregister
|
5 | TWSCRA = (1<<TWEN)|(1<<TWSHE)|(1<<TWASIE)|(1<<TWSIE)|(1<<TWDIE);
|
6 | // Register A, TWEN-Schnittstelle Aktivieren, TWSHE-Haltezeit aktivieren, TWASIE-Adressenunterbrechung aktivieren,
|
7 | // TWSIE-Stop Unterbrechung aktivieren, TWDIE-Datenunterbrechung aktivieren
|
8 | TWSCRB = (1<<TWAA)|(1<<TWCMD1)|(0<<TWCMD0); // Regis. B, TWI Bestätigungsaktion, TWI Befehl
|
9 | sei(); // Interrups einschalten
|
10 | }
|
Habe angefangen verschiedene Funktionen aus dem Datenblatt dahinter zu
schreiben. Leider bin ich total überfragt ob das alles ist was ich
brauche oder was noch fehlt.
Wenn ich es richtig verstanden habe brauche ich noch ISR
(TWI_SLAVE_vect)
LG Heiner