Bascom Ausgang auf Tristate

OP #3061283
Lesenswert?

Hallo Leute

ich möchte einen Ausgang eines Atmegas per Bascom weder auf 0 noch auf 1 
schalten, sondern auf den Tristate Zustand.

Kann man das mit Bascom realisieren?

Wenn ich den Port nicht Konfiguriere, dann ist er ja offen. Kann ich 
diese Config auch wider während des Programms ändern?

Also z.B.

PortC.0 = 1
 wait 1
PortC.0 = 0
 wait 1
PortC.0 = ??? Tristate
 wait 1
#3062418
Lesenswert?

Christian H-elec schrieb:
> Hallo
>
> Das scheint so nicht ganz zu stimmen.
> Der Port ist, wenn er einmal per Befehl Config konfiguriert wurde immer
> irgendwie definiert.
>
> Kann man diese Config nicht wieder löschen?

vergiss das Config.
Jeder Port auf dem AVR hat ein DDRx Register, über welches er auf 
Eingang oder Ausgang konfiguriert wird.
Config macht auch nichts anderes, als dort die entsprechenden BIts zu 
setzen. Aber nichts und niemand hindert dich daran, selber in den DDRx 
Registern das einzustellen, was du willst.

AVR-Tutorial
AVR-GCC-Tutorial

Ja, ich weiss. Keines dieser Tutorien ist für Bascom. Aber das macht 
nichts. Denn das Prinzip (und das ist das wichtige) ist überall das 
gleiche. lediglich die Schreibweise ist ein wenig anders. Kennst du das 
Prinzip ist der Rest ein Kinderspiel.
Gast #3062424
Lesenswert?

Christian H-elec schrieb:
> Kann man diese Config nicht wieder löschen?

Einfach irgendwo im Code wieder als Output konfigurieren. Das Kommando 
macht nichts anderes als das DDRx Register zu beschreiben.

Du hast nicht geschrieben, wie so oft hier, welchen µC du nutzt. 
Vielleicht kommt dir das jtag-Interface auf Port C in die Quere.

Rest vom Code ist auch unbekannt. Netiquette.
#3062439
Lesenswert?

Beachte auch:
Es macht einen Unterschied, ob auf dem Portpin der Pullup-Widerstand 
eingeschaltet ist.
Nur weil du einen Portpin, der auf Ausgang mit dem Wert 1 gesetzt ist 
auf Eingang umschaltest, wird das entsprechende Bit im Port Register 
nicht gelöscht. Deine 1 vom vorhergehenden Ausgansgstatus wird so zur 
Aufforderung den Pullup an diesem Pin einzuschalten.

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