Hallo, ich möchte von einem LPC2148 aus auf einem ATmega16 einen Interrupt auslösen (INT0/PD2 auf Masse ziehen). Der ATmega16 läuft auf 5V, der LPC auf 3.3. Ich suche eine einfache Möglichkeit, den LPC-Port gefahrlos mit dem AVR zu verbinden. Zu der 5V-Toleranz der LPC-Ports finde ich widersprüchliche Angaben im Netz, die beiden I2C-Kanäle des LPC sind schon belegt. Sonst hat kein Port einen Open-Drain-Ausgang. Ich dachte an einen 10K-Pullup-Widerstand und einen 1K-Serienwiderstand vor dem LPC-Port. Reicht das aus oder sollte ich einen kleinen Transistor nehmen ? Ich möchte auch den Fall abdecken, dass der Atmel-Port evtl. durch Softwarefehler als Ausgang und auf 5V geschaltet wird. Gruß, Martin
@ Martin (Gast) >Ich dachte an einen 10K-Pullup-Widerstand und einen 1K-Serienwiderstand Der Serienwiderstand reicht, ggf. auf 10K erhöhen. Siehe Pegelwandler. MfG Falk
@Falk: Danke, aber im Datenblatt des ATmega16 steht, das mindestes 0,6Vcc (=3,0V) für einen sicheren High-Pegel nötig sind. Das könnte mit dem Seienwiderstand eng werden, zumal wenn ich mehrere AVRs gleichzeitig ansteuern will. Mit der Variante "3.3V Open Collector nach 5V (TTL oder CMOS)" müsste es doch sicher funktionieren, oder ? Dann wäre mehr Schaltleistung für saubere Impulse vorhanden als über einen 10K Widerstand. (Den Transistor würde ich dann zusätzlich einbauen.) Mit freundlichen Grüßen, Martin
Doe O.C. Variante hattest du oben mangels O.C. doch schon ad acta gelegt.
@Andreas Kaiser (a-k): >Doe O.C. Variante hattest du oben mangels O.C. doch schon ad acta >gelegt. Ja, die I2C-Bus-Ausgänge, die extra für externe Pullup-Beschaltung vorgesehen sind, sind schon belegt. Daher möchte ich an einem anderen Ausgang den Transistor extern anbauen, so wie im Artikel als chip-intern dargestellt. MfG Martin
Martin wrote: > Zu der 5V-Toleranz der LPC-Ports finde ich > widersprüchliche Angaben im Netz Dazu schaut man ja auch nicht ins Netz, sondern ins Datenblatt. > die beiden I2C-Kanäle des LPC sind > schon belegt. Sonst hat kein Port einen Open-Drain-Ausgang. Das ist Quatsch, jeder Portpin hat eine Richtungsumschaltung und damit klappt Open-Drain prima. Ich hab z.B. LEDs gegen 5V am LPC, bei High glimmen sie noch, aber bei Input gehen sie aus. Peter
Was ist denn bei der 5V Toleranz widersprüchlich? Laut Datenblatt verträgt der 2148 auf allen IO Leitungen 5V. Bisher hatte ich damit auch keine Probleme. Es wäre vielleicht nicht verkehrt einen Widerstand zwischen den µCs zu verbauen. Nur für den Fall das bei einer fehlerhaften Konfiguration der IO-Pins des AVR nicht AVR und LPC Ports gegeneinander arbeiten. Da würde der LPC wohl verlieren.
let wrote: > Was ist denn bei der 5V Toleranz widersprüchlich? Laut Datenblatt > verträgt der 2148 auf allen IO Leitungen 5V. Hmm. Auf allen Inputs ja. Wie steht's mit Outputs?
Ach so, daran hatte ich noch gar nicht gedacht. Wenn der Ausgang auf high steht würde der Highside-FET als Senke fungieren, wofür er möglicherweise nicht ausgelegt ist. Falls doch hat man aber einen Pullup gegen die 3,3V. Wenn Peter das mit LEDs schon getestet hat geht da zumindest nichts in Rauch auf. Dann dürfte man hier nur zwischen Input und Output/Low toggeln. Darin sehe ich kein Problem. Die IOs sind defaultmäßig Eingänge, sodaß auch beim Powerup/Reset nichts anbrennt.
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.