Hallo an die AVR Familie Ich habe eine kleine Frage. Ich möchte intelligente I2C-Slave Module bauen, die sich im Standard I2C Bus befinden (wie z.b. PCF8574, 24C02, usw Umgebung). Die Module sollen z.b. mehrere 10BIT Analogeingänge besitzen, Phasenanschnittsteuerungen usw. Die Soll- und Istwerte werden vom/zum Mastercontroller gesendet. Nun meine eigentliche Frage. Hat schon jemand die I2C Slave Funktion z.b. im tiny26 bzw Mega8 mit USI bzw. TWI verwendet? Wenn ja ist es problemlos zu implementieren, oder muss man etwas bestimmtes beaachten? Bzw. würdet Ihr von der Lösung abraten? Mein Problem ist, dass ich so rasch als möglich das Layout entwickeln muss, und erst später Zeit habe mich um die Software zu kümmern. Für hilfreiche Kommentare wäre ich dankbar.
Wenn der Master sich an den I2C-Standart hält, kein Problem. D.h. der Master muß warten, wenn der Slave den SCL auf low hält, bis er den Interrupt abgearbeitet hat. Dumme I2C-Chips haben dagegen nur einen SCL-Eingang, da kann der Master losrotzen so schnell er kann. Peter
Danke für die Info Blöde Frage Hält sich die I2C Lib vom Codevision an den I2C Standard?
So blöd ist die Frage garnicht. Da ich WINAVR benutze, kann ich sie Dir aber nicht beantworten. Peter
Danke Peter Hast du schon mal den I2C-Slave z.b. mit USI verwendet? bzw. welche Erfahrungen damit gemacht?
Beim Mega8(TWI) hats problemlos funktioniert, beim Tiny2313 (USI) bin ich grandios gescheitert, habe auch im Netz nicht wirklich was zu dieser Problematik gefunden, hier kam auch nichts. Lösung: nur die Start-condition per Interrupt ausgewertet, den Rest per Software gemacht. War, wie immer, unter Zeitdruck, läuft aber so problemlos.
ne, Master war ein Beck SC12. Der hat "nach oben" per TCP/IP kommuniziert, von da aus per I2C an diversen I/Os. Also nur I2C-slaves.
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.