CMOS Pegel, UART

Gast #1509896
Lesenswert?

Hallo,

ich habe einen Sensor, der mit CMOS Pegeln arbeitet (CMOS compatible: 
low state: 0.0…0.4V; high state: 0.7…3.3V). Die serielle Ausgabe dieses 
Sensors will ich nun auslesen. Wenn ich den Sensor direkt an einen 
MAX232 anschliesse kommen keine Daten raus. Benötige ich einen weiteren 
Pegelwandler?

Grüße
#1510198
Lesenswert?

Mit min. 0.7 V für High sind das keine CMOS-Pegel.  Und wenn es sich 
tatsächlich um die Daten für einen CMOS-*Ausgang* handelt, auch keine 
CMOS-kompatible Pegel.  Nach dem Begleittext geht es Dir um einen 
Ausgang.  Kann es sein, dass Du die Daten eines Eingangs aus dem 
Datenblatt abgeschrieben hast?  Wie soll dann eine vernünftige Antwort 
zustande kommen?
Gast #1510217
Lesenswert?

Kann leider den Beitrag nicht bearbeiten:

Benedikt: Ja ich verwende einen MAX232. Sprich ich bräuchte einen 
Pegelwandler, um auf die Pegel des Sensors zu kommen. Gibt es Wandler, 
die mit 5v laufen und diese niedrigen Pegel umsetzen können?
Persönliche Seite #1510250
Lesenswert?

Hast du den Fastrax UP500 oder den UP500R? Der UP500R hat den 
CMOS-to-RS232-Pegelwandler bereits eingebaut.

Ansonsten: Sicher kann man Pegelwandler benutzen (Fastrax Ltd. zeigt 
es ja). Man muss nur den Richtigen finden und die 0.7V für die untere 
Schwelle von HIGH ist hier die Herausforderung.

Bsp. aus dem Datenblatt des MAX3232:
VIL Driver low-level input voltage max. 0,8V

d.h. ein MAX3232 würde ein 0,7V HIGH des Fastrax UP500 noch als LOW 
erkennen! Theoretisch unbrauchbar, praktisch: Messen!
Gast #1510260
Lesenswert?

Hallo,

ich habe den UP500, also ohne den Pegelwandler.
Ich habe leider kein Oszilloskop, also konnte ich nur mit dem Multimeter 
messen. Der Pegel am TX des Sensors springt immer zwischen 0.2v und ca 
0.8v, zwischenzeitlich sind aber schon mal Peaks über 1v dabei. Ich weiß 
nur nicht, wie aussagekräftig so eine Messung ist.

Was könnte man denn noch machen, wenn es mit dem MAX3232 nicht 
funktioniert? Kann man die Pegel nicht von "Hand" hochziehen?

Alex
Persönliche Seite #1510276
Lesenswert?

Ich bin da mangels Übersicht an Bauteilen ratlos und müsste heftig 
suchen.

Vielleicht ergänzt du noch deine Frage: Geht es um eine 
Serienproduktion, d.h. brauchst du eine nachbausichere Lösung für 1234 
Stück oder ist es ein einmaliges Heimprojekt, so dass auch eine 
Bastellösung in Frage kommt? Willst du nur GPS Daten empfangen, d.h. nur 
CMOS-TX müsste auf RS232-TX umgesetzt werden? Oder willst/musst du auch 
Daten zum GPS senden (TX und RX müssen umgesetzt werden)?
Gast #1510314
Lesenswert?

Hallo Stefan,

also es müssten sowohl RX als auch TX Daten umgesetzt werden, da der 
Sensor ggf über NMEA umprogrammiert werden muss.
Es geht um keine Serienproduktion, sondern um ein kleines Hobbyprojekt 
zuhause.

Noch eine Frage, die etwas untergegangen ist:
Kommt ein µC mit den Pegeln dieses Sensors klar, oder müssten die auch 
für den umgesetzt werden? (Atmega644P).

Alex
Persönliche Seite #1511082
Lesenswert?

Man kann es drehen und wenden - es passt IMHO nicht, wenn der UP500 
sendet.

Datenblatt Atmega644P
VIL Input Low Voltage
VCC = 1.8V - 2.4V                     max. 0.2VCC V
VCC = 2.4V - 5.5V                     max. 0.3VCC V

?VIH Input High Voltage
VCC = 1.8V - 2.4V       min. 0.7VCC   max. VCC+0.5 V
VCC = 2.4V - 5.5V   min. 0.6VCC   max. VCC+0.5 V

Dein UP500
low state:  0.0…0.4V (Messung ca. 0.2V)
high state: 0.7…3.3V (Messung ca. 0.8V)

Berechnungen
RX Eingang des Atmega644P bei Vcc=3,3V
low state:  0,0…1V (=0,3*3,3)
high state: 2…3,3+0,5V (=0,6*3,3...)
=> UP500-HIGH liegt innerhalb µC-LOW!
Gleicher Fall wie Beitrag "Re: CMOS Pegel, UART"

RX Eingang des Atmega644P bei Vcc=1,8V (Minimale Vcc des Atmega644P)
low state:  0,0…0,4V (=0,2*1,8)
high state: 1,3…1,8+0,5V (=0,7*1,8...)
=> UP500-HIGH liegt über µC-LOW, aber erreicht sicheres µC-HIGH noch 
nicht

Wenn UP500 empfangen soll, ist das nicht kritisch, der Atmega644 könnte 
die Pegel ausgeben und die etwas zu hohen VOL des µC könnte man ohne 
Nachteile für VOH mit Spannungsteiler in den 0,0..0,4V Bereich zwingen.

Für ein Hobbyprojekt würde ich (Vorischt Laie!!!) überlegen, die 
UP500-TX mit einem nicht-invertierenden Verstärker 
(Operationsverstärker-Grundschaltungen) um den Faktor ca. 2,5 
(realer Wert ausprobieren) zu verstärken, um auf die Eingangspegel eines 
mit 3,3V betriebenen MAX3232 oder µC zu kommen. Kann man auch für 
Zielbereich 5V Logik machen. Ausprobieren deshalb, weil es keine 
einheitliche Verstärkung gibt, die für oberes LOW und unteres HIGH 
gleichzeitig exakt in den Zielbereich abbildet.

Vielleicht / hoffentlich helfen dir noch ein paar Experten weiter.
Persönliche Seite #1511106
Lesenswert?

Wie wäre es mit Mosfets mit extrem hohem Pulldown?
Die Dinger verstärken ja auch mal 1mV zu 5V, warum sollten da 0,7V ein 
Problem sein.
Sonst wie schon gesagt OpAmp oder vielleicht Darlington-Transistoren.

Der Chip scheint echt merkwürdig zu sein, wenn er selber meint, dass 
0,7V High sind. Der nächste Trend scheint sich abzuzeichnen: Low 
Voltage!
Valentin
#1511196
Lesenswert?

@  Stefan B. (stefan) Benutzerseite

>low state:  0.0…0.4V (Messung ca. 0.2V)
>high state: 0.7…3.3V (Messung ca. 0.8V)

Glaub ich irgendwie nicht. Kann es sein, dass das Ding einen Open Drain 
Ausgang hat und einfach ein Pull-Up von sagen wir 10K nach 3,3V fehlt?

>UP500-TX mit einem nicht-invertierenden Verstärker
>(Operationsverstärker-Grundschaltungen) um den Faktor ca. 2,5
>(realer Wert ausprobieren) zu verstärken, um auf die Eingangspegel eines
>mit 3,3V betriebenen MAX3232 oder µC zu kommen.

Wenn das Ding WIRKLICH nur 0,7V ausspuckt, was ich nicht wirklich 
glauben kann, nimmt man einen Pegelwandler mittels Komparator. Beim 
AVR einfacherweise den eingebauten Analogkomparator.

MFG
Falk
Gast #1511256
Lesenswert?

http://www.avr-praxis.de/forum/showthread.php?p=9363
Ähnliches Problem, aber andere Messwerte: 0.5 und 2V (mit denen wir 
bereits happy wären)

http://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=474271
Gleicher Fragesteller wie im 1. Link. Noch andere Messwerte: 0.9 und 
1.45V
Da ist auch eine Lösung von Suggarman angegeben (2 Transen wie HildeK 
auch vorgeschlagen hat). Unterschiede in den Messwerten vermutlich durch 
Messmethode (Multimeter) bedingt.

IMHO: Case closed.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren