-         

Ergebnis 1 bis 8 von 8

Thema: 1,8V UART Pegel an AVR

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.03.2006
    Ort
    nahe Tulln (Niederösterreich)
    Alter
    26
    Beiträge
    460

    1,8V UART Pegel an AVR

    Anzeige

    Hallo,

    ich möchte ein GPS Modul (Sirf IV) per UART an einen ATmega328 anschließen, der die empfangenen Daten dann auf eine SD-Karte schreibt (GPS Logger).
    Kommunikation findet nur vom GPS-Modul zum AVR statt, umgekehrt nicht (der RX Pin des GPS und der TX Pin des AVR werden nicht angeschlossen).

    Das GPS Modul läuft aber mit 1,8V, und gibt daher an der UART auch nur einen 1,8V Pegel aus. Der mega328, die SD-Karte und alles andere läuft mit 3,3V.
    Da der GPS Logger sehr klein werden soll, würde ich gerne ohne Levelshifter auskommen.

    Ich habe im Datenblatt nachgesehen, ab welchem Pegel der mega328 eine "1" am UART Eingang erkennt, aber habe nichts gefunden. Mir ist auch kein gescheiter Suchbegriff eingefallen...

    Sind die Atmel uCs TTL oder CMOS Bauteile?
    Ich habe nämlich folgende Tabellen gefunden: http://www.elektronik-kompendium.de/...ig/0205171.htm
    Laut denen erkennt er 1,8V noch nicht als HIGH. Aber es gibt ja auch noch andere Technologien als TTL und CMOS oder?

    Weiß das vielleicht jemand?

    lg Christoph


    EDIT:
    Hier ein Link zum Datenblatt:
    http://www.google.com/url?sa=t&rct=j...V0sRIyb8TICO6Q

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die Daten stehen schon im Datenblatt, gleich am Anfang von Elektrical characteristic. Da steht für V_IH als Mindestwert 0,6 * Vcc. Das wären 2 V, also etwas zu viel. Wenn man die Spannung für den µC auf etwa 2,9 V reduziert, könnte es gerade noch gehen. Die Atmels sind CMOS, aber halt nicht mit fest 5 V sondern relativ variabel.

    Es gäbe da ein paar Möglichkeiten:
    1) Man nutzt den analogen Komperator als Eingang, mit der Bandgapspannug (1,1 V) als Schaltschwelle. Allerdings muss man die UART dann in Software machen.
    2) Man nutzt einen Pegelwandler. Die kleinste Version wäre vermutlich einfach eine Diode oder ein Widerstand in Reihe, und dann den internen Pullup aktivieren. Das ist aber relativ hochohmig, und entsprechend eher langsam. Für eine UART mit 9600 Baud könnte es aber reichen, wenn die Leitung nicht so lang ist und man wenig Störungen hat.

    3) Man versucht es, und hofft das man einen Chip bekommt der etwas früher anspricht. Mit etwas Glück geht es mit dem Widerstand von Vorschlag oben, aber auch noch ohne den Pullup - das spart einem den Strom vom Pullup.

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    Ich habe diese Probleme in einem GPS-Tracking-System mit 2 NPN (z.B. BC847) Transistoren und 3 Widerstände (in 0805) gelöst. Das funktioniert 100% ig und ist sicher. In SMD ist der Platzbedarf auch minimal. Was hälst du davon?

    Viele Grüße
    Andreas

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    ...wenn ich nochmal überlege sind es sogar nur 2 Widerstände...

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.03.2006
    Ort
    nahe Tulln (Niederösterreich)
    Alter
    26
    Beiträge
    460
    Hi,

    danke für die schnellen Antworten!

    In der zwischenzeit habe ich mir ein Pspice Tutorial durchgelesen und mal versucht so einen Pegelwandler zu simulieren, falls ich einen brauche.

    Die Variante mit zwei npn Transistoren ist klar, die funktioniert sicher. Einer passt den Pegel an, aber invertiert unerwünschterweise, der andere negiert dann nochmal.
    Aber sollte es nicht auch mit einem PNP Transistor gehen?

    Also ich habs simuliert, und laut pspice funktioniert es auch (er wandelt 1,8V auf ca. 2,5V, der Kollektorstrom ist dabei 260uA), nur weiß ich nicht ob es dann in der Praxis auch funktioniert...


    Ich habe mal Screenshots gemacht:

    Klicke auf die Grafik für eine größere Ansicht

Name:	pegelwandler_schaltung.jpg
Hits:	16
Größe:	25,2 KB
ID:	21001
    Anhang 21002
    Anhang 21003


    lg Christoph
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken pegelwandler_I.jpg   pegelwandler_U.jpg  
    Geändert von Christoph2 (30.12.2011 um 18:42 Uhr)

  6. #6
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Man kann das so machen mit dem PNP Transistor. Den Widerstand an der Basis kann man auch noch weglassen, wenn sichergestellt ist, das der AVR immer Spannung hat, wenn das GPS welche hat.

    Man kann sogar den Transistor durch eine Diode (so wie Basis.Emitter) ersetzen und wenn man mag die 10 K am Ausgang durch den µC internen Pullup Widerstand (ca. 50 K) (sofern der sich bei Rx als Eingang aktivieren läßt).

    In beiden Fällen kann ein kleiner Strom im µA Bereich (mit der Diode mehr als mit dem Transistor) von der 3,3 V Seite zur 1,8 V Seite fließen. Wenn man sicher sein will, dass die 1,8 V Seite nie mehr als 1,8 V sieht müsste man noch einen Widerstand vom Eingang nach GND dazu nehmen.

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.03.2006
    Ort
    nahe Tulln (Niederösterreich)
    Alter
    26
    Beiträge
    460
    Danke, dann werde ich das so probieren!

    Zitat Zitat von Besserwessi Beitrag anzeigen
    In beiden Fällen kann ein kleiner Strom im µA Bereich (mit der Diode mehr als mit dem Transistor) von der 3,3 V Seite zur 1,8 V Seite fließen. Wenn man sicher sein will, dass die 1,8 V Seite nie mehr als 1,8 V sieht müsste man noch einen Widerstand vom Eingang nach GND dazu nehmen.
    Damit der Basisstrom des Transistors über den Widerstand nach GND abfließen kann statt über das GPS Modul meinst du, oder?
    Ich habe mal 10k genommen, sollte passen oder?


    Klicke auf die Grafik für eine größere Ansicht

Name:	pegelwandler_schaltung.jpg
Hits:	14
Größe:	42,4 KB
ID:	21043


    lg
    Christoph

  8. #8
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Genau, es geht um den kleine Basisstrom. In Diesem Beispiel wäre das etwa 0,8 V / 10 K / hfe , also eher weniger als 1 µA. Dafür würde dann auch schon ein Widerstand von 2 M ausreichen, denn man sich aber ggf. auch sparen kann, denn so ein bisschen Strom sollte das GPS Modul vertragen.

Ähnliche Themen

  1. RS485- Pegel
    Von ngblume im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 28.01.2007, 13:33
  2. +/- 10V auf TTL Pegel
    Von Bashhox im Forum Elektronik
    Antworten: 9
    Letzter Beitrag: 21.12.2006, 10:52
  3. Funkmodul 0,8V auf 5V Pegel
    Von ProgDom im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 10.08.2006, 00:27
  4. Pegel an uC Anpassen
    Von freaky360 im Forum Sensoren / Sensorik
    Antworten: 7
    Letzter Beitrag: 27.01.2006, 23:56
  5. TTL-Pegel?
    Von luma im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 05.08.2005, 08:56

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •