Forum: Mikrocontroller und Digitale Elektronik Atmega32 I2C Slave


von Pete P. (nomispetrus)


Lesenswert?

Hallo Jungs,

Ich habe nicht die treffende Antwort gefunden.
Ist ein Atmega32 mit internen 8MHz schnell genug als I2C-Slave mit 
zusätzlich ca 20 Tasten auslesen und UART-Kommunikation? Oder wird das 
knapp?

Als Master sollte er ja 16MHz haben, aber als Slave?

Danke für Antworten,
-pete

von Einer K. (Gast)


Lesenswert?

Pete P. schrieb:
> Als Master sollte er ja 16MHz haben,

Interessant...
Wusste ich noch nicht.

Und zur Not gibts ja auch noch das Clockstretching.

Pete P. schrieb:
> Oder wird das knapp?

Wenn du dich ungeschickt anstellst... vielleicht.

von Pete P. (nomispetrus)


Lesenswert?

Naja, ich würde gerne die 400kHz ausnutzen, und den Master so wenig wie 
möglich bremsen.

Und in der Arduino IDE gibt es so schicke wire-Funktionen, da wäre es 
schade, zu bremsen.

von Pete P. (nomispetrus)


Lesenswert?

Für 400kHz I2C sollten es mehr als 8MHz sein laut Datenblatt beim Mega32 
als Master.

von Maxim B. (max182)


Lesenswert?

Hallo,
auch wenn i2c etwas langsamer als 400 kHz arbeitet, wirst du das kaum 
merken. Aber nur wenn das Programm insgesamt gut zusammengesetzt ist.

Statt kHz und MHz zu zählen, überlege lieber, wie das Ganze arbeiten 
soll. Ist das einfach unendliche Schleife, oder willst du alles 
Wichtigste in ISR machen. Oder kommt Dispatcher in Frage...

Pete P. schrieb:
> Und in der Arduino IDE gibt es
Ach so... Na, wenn alles mit Arduino-IDE gemacht wird, dann kannst du 
von Dispatcher vergessen... Dann solltest du wohl wirklich F_CPU so hoch 
wie nur möglich nehmen...

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.