Hallo,
irgendwie habe ich Probleme mit dem lesen von einem Byte und dem senden
des NACK´s
1 | uint8_t twiReadNack( TWI_t *twi , uint8_t reg )
|
2 | {
|
3 | /*
|
4 | * NACK senden
|
5 | */
|
6 | twi->MASTER.CTRLC = TWI_MASTER_ACKACT_bm;
|
7 |
|
8 | /*
|
9 | * Adresse übertragen
|
10 | */
|
11 | twi->MASTER.DATA = reg;
|
12 | /*
|
13 | * Warten bis Übertragung komplett ist
|
14 | */
|
15 | while(!(twi->MASTER.STATUS&TWI_MASTER_WIF_bm));
|
16 | /*
|
17 | * Warten bis ein Byte empfangen wurde
|
18 | */
|
19 | while( ! ( twi->MASTER.STATUS & TWI_MASTER_RIF_bm ) );
|
20 |
|
21 | return (twi->MASTER.DATA);
|
22 | }
|
Was mache ich vom Ablauf her falsch?