Hallo
Ich überleg mir jetzt schon länger wie ich mein RN-Control (5V) mit meinem Bluetooth Controller (3.3V) über I²C verbinden kann. Der Bluetoothcontroller ist ein ATmega 328P. Am liebsten wär mir eine einfache Transistorlösung.
Was mir aber eingefallen ist: Der mega328P hat ja eine Operating Voltage von 1.8V bis 5.5V, hat er somit im 3.3V Betrieb auch 5V tolerante Eingänge? Bzw. Erkennt dann mein RN-Control mit dem mega32 das 3.3V Signal?
Anmerkung: Mein I²C soll im Standartmode bei 100kHz laufen.
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Schon, aber ich muss ja die 5V irgendwie wieder runter regeln, am einfachsten mit einem Spannungsteiler, aber wenn sich dann die Richtung wieder umdreht (3V3 sendet) hab ich ja einen zusätzlichen Spannungsabfall in der Leitung. Somit brauch ich eben einen Pegelwandler, der in beide Richtungen funktioniert.
Den Spannungspegel vom I²C legst du ja mit der Spannung fest die du an die Pull-up Widerstände legst. Dein RN-Control hat einen Mega32. Der erkennt Pegel von 0,6 x Vcc als High.
Wie lang ist den deine Leitung? Wenn deine Leitung nur 20-30cm lang ist, kannst du den Spannungsabfall (denke ich) vernachlässigen. Bei Leitungslängen von mehreren Metern solltest du einen anderen Bus als I²C nehmen.
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Ahh ok...
Wie groß muss ich dann die Pul-Ups auslegen?
*Schaltplan Platzhalter*
Leitungslänge: vom RN-Control bis zum BT-Controller rund 5cm, sollte dann einmal noch der Roboterarm kommen werdens insgesamt rund 15 cm weren
Bei 15cm Leitungslänge brauchst du den Spannungsabfall nicht zu beachten :P
Die Pull-ups kannst du auf 4,7k legen. Das sollte eigentlich reichen.
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Ich hab da jetzt mal einen kleinen Schaltplan gezeichnet:
Wenn ich ganz ehrlich bin, ich trau dem Ding nicht
Denn, wenn das RN-Control HIGH ausgibt (5V) liegt diese Spannung ja auch am BT-Controller an. Aber der ist ja 3.3V...
Versteh ich da was von der Schaltung falsch?
Geändert von robo_tom_24 (28.05.2012 um 14:33 Uhr) Grund: Schaltplan vergessen
Du verstehst das Prinzip des I²C nicht.
I²C Geräte geben keinen Pegel aus. Jedes Device hat Open Collector Ausgänge die den I²C Pegel runterziehen. Aus diesem Grund legst du ja auch mittels Pull-up eine Spannung an die Pins an. Eben aus dem Grund weil der I²C keinen Pegel ausgibt. Und wenn du den Pegel auf 3,3V legst, also 3,3V über Pull-Ups an SCL und SDA legst, zieht sowohl das 5V Device als auch das 3,3V Device diesen Pegel runter.
Du siehst das nirgends 5V Signale verschickt werden
Les dir das mal durch:
http://de.wikipedia.org/wiki/I%C2%B2C
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Achsooo
Das heißt der µC gibt LOW und Open Collector aus...
Das ändert die Sache natürlich
Aber die Schaltung würde ja so weit mal stimmen oder?
Jap die kannst du so verwenden.
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Lesezeichen