Gast
#1873218
Hallo! Ich habe vor mir ein Projekt, bei dem es gilt, mit dem NGW100 mittels I²C Werte von vier ADXL345 Beschleunigungssensoren auszulesen. Nun habe ich noch nie mit I²C gearbeitet, und leider kaum eine Ahnung wie genau dies vonstatten gehen soll. Was ich bis jetzt herausgefunden habe ist dass man besser die I2C-GPIO Funktionen verwenden sollte, da die Atmel-eigene Implementierung sehr mangelhaft sein soll. Weiterhin sollte durch die Verwendung von I2C-GPIO eine freie Wahl der verwendeten Pins möglich sein, soweit ich es in Erfahrung bringen konnte. Nun verwenden diese vier Sensoren alle die selbe ID, was ja bedeuted, dass sie innerhalb des Netzwerkes wohl nicht einzeln ansteuerbar sein werden. Hier taucht meine erste grundlegende Frage auf: Kann man diese trotdem irgendwie auf einfache Weise ansteuern, oder sollte man einfach mittels ein paar Transistoren zwischen den einzelnen Sensoren TWI durchschalten (Sie werden nicht gleichzeitig benötigt)? Weiterhin habe ich eben, da ich noch nie mit I²C gearbeitet habe, die Frage, ob mit jemand ein Beispiel der Ansteuerung eines solchen Gerätes geben könnte. Rein theoretisch müsste es doch nur zuerst ein Öffnen des I2C sein, daraufhin ein finden des richtigen Devices, dann ein paar Werte auf das Gerät schreiben (zum Einstellen des Sensors) und zuletzt die Werte der verschiedenen Achsen auslesen. Leider habe ich praktisch soetwas noch nie angewendet. Im Grunde genommen wird dies der Hauptteil des Programmes, das von dem Controller erledigt werden soll, aufgrund der gemessenen Werte sollte dann nur noch ein Motor ein oder ausgeschalten werden, je nach dem vorab berechneten Wert. Also der Soll-Wert wird mit dem Ist-Wert verglichen, um dann den Ist Wert auf den Soll Wert zu bringen. Vom Prinzip her also einer Servo-Steuerung sehr ähnlich, nur sollen eben vier Motoren angesteuert werden. Diese Ansteuerung sollte aber wohl mittels GPIO kein allzu großes Problem darstellen. Sollte also jemand bereit sein, mir Codebeispiele von I²C auf einem AVR32 Gerät zu senden, wäre ich demjenigen sehr dankbar. Auch für jeglichen weiterführenden Link wäre ich zudem dankbar! Auf jeden Fall schonmal Danke im Voraus!