Hallo, ich wollte mal fragen ob es Probleme bereitet oder ob ich etwas dabei beachten muss, wenn ich den ADC und den TWI anschalte, da die ja teilweise die gleichen Pins verwenden. Oder muss ich die einfach nur beide einschalten und der adc geht dann halt auf den beiden TWI Pins nicht?
Hi >Oder muss ich die einfach nur beide einschalten und der adc geht dann >halt auf den beiden TWI Pins nicht? Richtig. Du solltest aber Vermeiden, während der ADC-Wandlung das TWI zu benutzen. Du könntest das Messergebnis verschlechtern. MfG Spess
MHh joa ok. Problem ist, das kann ich nicht beeinflussen, da ich nicht der Master bin ;) Wird schon gehen, die Messungen müssen nicht so genau sein. Danke!
Wenn du der Slave bist, kannst du ja je nach Protokoll 2 Befehle vorsehen: 1) eine Messung starten 2) Messergebnis abfragen (wenn fertig, eine evtl. vorhandene Interrupt-Leitung benutzen) Zwischen den beiden Befehlen könntest du ja den TWI abschalten. Der Master muss halt dann zwischen den beiden Befehlen eine bestimmte Zeit warten.
Nein, nein und nochmals nein ;) Die beiden Systeme müssen eigenständig und asynchron arbeiten. Und auf keinen Fall darf ich den Master auf irgend eine Weise aufhalten, da er zeitkritische Sachen macht ;) Denke das geht schon so...
Was willst du eigentlich? Auf den TWI Leitungen einen analogen Sensor anschliessen und per ADC abfragen? Irgendwie versteh ich hier nur Bahnhof.
Die Kurzfassung? Ich baue ein 2D Positionserkennungssystem für einen Roboter, basierend auf Ultraschall und Infrarot. Der Atmega soll die Position berechnen, plausibilisieren (heißt das so?) und dem Master zur Verfügung stellen. Daher ein eigener µC mit ADC und TWI.
Die Beeinflussung des ADs durch ein aktives TWI sollte nicht so stark sein. Man sollte ein bischen auf den Verlauf der Masse achten und wenn möglich keine extra kleine Vref benutzen, dann sollten die Fehler eher klein, d.h. kaum merklich, bleiben. Wenn man unbedingt will, könnte man die AD werte verwerfen, wenn gerade während der Wandlung was per TWI reinkommt. Vermutlich ist das aber nicht nötig.
>Und auf keinen Fall darf ich den Master auf irgend eine Weise aufhalten, >da er zeitkritische Sachen macht ;) Na, wenn das so ist, sollte der Master ja wohl so programmiert sein, daß eine Taktverlängerung auf dem TWI-Bus ihn nicht ausbremst. Schließlich sieht die TWI-Spezifikation den Fall explizit vor. Ist also das Problem vom Master, nicht deins :-) Oliver
Hallo! Ich habe ein ganz ähnliches Problem: Ein ATmega8, der sammelt per TWI Daten von verschiedenen Sensoren. Ein HCS12, der fordert dann und wann die gesammelten Daten per TWI vom ATmega8 an. Sensorplatine: - ATmega8 in Multimaster TWI (ist selber mal Master und mal Slave) - alle 6 ADCs in Benutzung --> Pins 27 und 28 sind also doppelt belegt: - Pin 28: ADC5 und SCL - Pin 27: ADC4 und SDA Was genau muss ich jetzt bei der Beschaltung und Programmierung beachten, damit keine Verwirrung entsteht? DANKE im Voraus!!
>--> Pins 27 und 28 sind also doppelt belegt: >- Pin 28: ADC5 und SCL >- Pin 27: ADC4 und SDA > >Was genau muss ich jetzt bei der Beschaltung und Programmierung >beachten, damit keine Verwirrung entsteht? Einen uC besorgen wo sie nicht doppelt belegt sind.
Heißt das, ich KANN die beiden NICHT gleichzeitig (also abwechselnd) benutzen?
Hallo, naja, im Prinzip schon, dem AVR ist es relativ egal. Wie und womit schaltest Du extern aber zwischen den I2C-Geräten und den zu messenden ADC-Quellen um? Gruß aus Berlin Michael
Anna-zaira Engeln schrieb: > Heißt das, ich KANN die beiden NICHT gleichzeitig (also abwechselnd) > benutzen? Dem ATmega8 ists wurscht, aber Deine angeschlossene Schaltung wird Probleme haben. Du kannst nicht analoge und digitale Signale auf einen Draht legen und erwarten, daß die sich nicht gegenseitig stören. Du könntest die Pins mit nem Analog-MUX umschalten, dann geht es. Aber dann ist es einfacher, einen AVR zu nehmen, der 6 AIns und I2C auf getrennten Pins hat, z.B. ATtiny261, ATtiny24. Peter
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.