Archiv verlassen und diese Seite im Standarddesign anzeigen : AVR als I²C Slave?
Schokohoernl
28.05.2006, 14:55
Hallo!
ich will einen AVR (AT90S2313) als I²C Slave betreiben. wie mach ich das am besten? ich programmiere mit BASCOM und ich weiss, dass es da die I2CSlave funktion gibt, dazu braucht man aber die kostenpflichtige I2Cslave library und 15€ sind mir da zu viel.
gibt es da nicht schon fertige chips, die daten die sie vom 2313 erhalten haben speichern und dann als i2cslave ausgeben?
thx 4 help
Schoko
Also das hat hier schonmal einer gemacht.
Ich hab jetzt auch einen Atemga8 als Slave laufen! Geht ganz gut.
Guck dir das mal an:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=15715&highlight=i2c+slave
MfG
Ringo
Schokohoernl
28.05.2006, 16:23
wie auch schon in dem von dir geposteten topic bemerkt wurde, funkt das ganze nur, wenn der µC TWI hat. das hat aber weder der AT90S2313 noch die nachfolgerwersion ATtiny2313, sondern nur die großen MEGA's, die für mich zu groß (platzmäßig) sind.
aber dieser PCF8574 is ja fast die lösung für mein problem.... nur brauche ich ja hier gleich 8 leitungen (ein byte eben) die dann per I²C ausgegeben werden.
gibt es keine chips, in die ich per I²C (oder was anderem, was nicht so ewig viele leitunge braucht) in ein register daten reinschreibe, und die das dann auf anfrage des I²C masters ausgeben?
mfg
Schoko
Hallo,
der PCF8574 hat doch 8 Inputs.
Was möchtest du denn genau machen?
Schokohoernl
28.05.2006, 20:58
hi!
also ich will mir nen ultraschall-modul basteln, dass die distanz über i²C ausgibt.
auswertung soll nen 2313 bzw ein noch kleinerer (pinzahl) AVR übernehmen.
jetzt is eben die sache, dass ich den AVR als I²C slave betreiben muss, wobei dazu die zusatzlibrary (kostenpflichtig) von MCS erforderlich ist.
jetzt bräuchte ich halt nen chip, den icheinerseits an den AVR anklemmen kann, un anderer seits ber I²C auslesen kann, was der AVR dem chip gerade sagt.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.