-         

Ergebnis 1 bis 3 von 3

Thema: UART in der Laufzeit abschalten und Pins anders nutzen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    16.05.2004
    Alter
    31
    Beiträge
    52

    UART in der Laufzeit abschalten und Pins anders nutzen

    Anzeige

    Hallo,

    Gibt es eine Möglichkeit die UART Schnittstelle wärend der Laufzeit wieder abzuschalten und die Pins dann doch z.B. als Ausgang/Eingang zu nutzen?
    Programiersprache ist Bascom.

    Problem ist ein 4-Pin 3,5mm Klinkenstecker der 2 Funktionen bekommen soll: 1x als "Konfigurationsschnittstelle"
    und zum 2. Brauche ich an diesem noch zusätzlich 1 Ausgang und einen Eingang...

    Frage ist also nun: Wie UART abschalten/Pin -> als Eingang/Ausgang und andersherum nur wie?
    Vielen Dank für die Hilfe!

    mfg D34TH

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von Willa
    Registriert seit
    26.10.2006
    Ort
    Bremen
    Alter
    37
    Beiträge
    1.269
    Soweit ich weiss, sind die RxD/ TxD Pins als UART Schnittstelle definiert sobald man "$baud = 19200" schreibt. Aber vielleicht kannst du einfach auf das Hardware UART verzichten und stattdessen ein Software UART verwenden (Bascom Hilfe -> "open" und "close")? Soweit ich das verstehe kann man die Schnittstelle mit "close" auch wieder schließen und dann evtl. auch als normale Pins benutzen.
    Viele Grüße, William
    -> http://william.thielicke.org/

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Die Transmit und Receive Funktion kannst du abschalten.
    Z.B. beim Mega8 im Register UCSRB die Bits TXEN und RXEN auf 0 setzen.
    Dann kannst du die Pins per DDRx Register anders nutzen.
    Allerdings weiß ich nicht, ob du die Funktion auch einfach wieder einschalten kannst, indem du TXEN und RXEN wieder auf 1 setzt.
    Musst du mal ausprobieren.

    Gruß

    Rolf

Berechtigungen

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