Sind die Ports von PIC-µC tri-state oder nicht?

Gast #175821
Lesenswert?
• ▲
▼
"Tristate sind sie meines Wissens nach nur im Zustand des Resets."

Ich habe in Zwischenzeit irgendwas gefunden, und zwar beim CCS-Compiler
gibt es Function "output_float". Ich habe sie kompiliert, auch mit
"output_low" und "output_high", um den Unterschied zu finden und
dies habe ich bekommen:

....................    output_float(pin_A0);
000F:  BSF    03.5
0010:  BSF    05.0
....................    output_low(pin_A0);
0011:  BCF    05.0
0012:  BCF    03.5
0013:  BCF    05.0
....................    output_high(pin_A0);
0014:  BSF    03.5
0015:  BCF    05.0
0016:  BCF    03.5
0017:  BSF    05.0

Also, "output_float" ist etwas gleich als "output_high" - beide
setzen Bit auf 1 (BSF 05.0).
Gast #175822
Lesenswert?
• ▲
▼
Meines Wissens sind Pins, welche als EINGANG definiert sind, hochohmig.
Müsste bei allen uCs so sein. Man muss dann nur die nicht benutzten
Eingänge bei der Auswertung berücksichtigen.

Stephan.
Gast #744501
Lesenswert?
• ▲
▼
... so ich versuch mal das mal aufzuklären.

z. B.: bei PIC:

  .) will man einen PIN als output --> ist der "schalter" TRIST.
    (hochohmig) geschlossen!!! Der Pin kann sowohl von +5V als auch
     gegen
     massen einen strom treiben!

  .) will man einen Pin als input --> TRIST. ist offen


Hilfreich und interessant kann diese Information bei BUS - Systemen 
sein. Jedoch kann man mit dieser Information mit einem  PIC's z.B.: 12 
LED's über 4 pins und 4 mal 100 OHM Widerstände ansprechen! Tristate 
spielt hier eine wichtige Rolle. Mit einem 8051 ist das nicht möglich!

Setzten des TRIST. einfach mit SETB, oder in C mit Zuweisung = 1;

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