Hallo Dirk.
Mal wieder ein Dankeschön an dich zwecks deines Beitrags.
Dirk Dörr wrote:
> 1. Vernünftige Fehlerbeschreibung.
> "Funktioniert nicht" ist nicht sehr aussagekräftig. Ich nehme mal an,
> daß Du das ganze mit einem Oszi überprüfst, aber nicht einmal ein
> Clock-Signal siehst. Richtig?
Richtig g
> 2. Start. Dann Stop. Dann Daten lesen?????
>
> Bist Du sicher, daß es das ist was Du willst?
Habe auf www.at91.com im Forum nach TWI working gesucht und das, was da
kam schien genau so gemeint zu sein.
> Dann veränderst Du auch noch in der for-Schleife die Schleifenvariable
> i. Das willst Du bestimmt nicht. So wie es da steht wird die Schleife
> vermutlich nur einmal ausgeführt (Wenn pTWI->TWI_THR 0xFF liefer; wie
> ich jetzt einfach mal annehme).
>
> 3. Kein Initialisieren des TWI
>
> Ist Dir die Methode
>
> void AT91F_TWI_Open(void)
>
> aus dem Beispiel entgangen?
Genau die habe ich jetzt verwendet. Nur meckert jetzt natürlich der
Linker, weil er in keiner Datei die vordefinierten Funktionen
AT91F_TWI_CfgPIO ();
AT91F_TWI_CfgPMC ();
AT91F_TWI_Configure (AT91C_BASE_TWI);
AT91F_SetTwiClock();
findet.
Nun stehe ich wieder da wie der Ochs' vorm Berg.
Habe meinen Quellcode jetzt auch etwas verändert. Wenn dir das hilft,
kann ich ihn gerne wieder posten.
Gruß
der Praktikant