Hallo,
ich habe folgendes vor:
Ich habe eine Schaltung auf TTL-Pegel, deren Zustand ich einlesen
möchte.
Standard ist die Schaltung auf 0V GND. Ich möchte den Zustand einlesen,
wenn die Schaltung auf 5V umschaltet.
Die erste Idee war:
externer Pulldown-Widerstand an den Eingang des µCs und den Pin
Abfragen, ob er HIGH wird.
Nun war mein Gedanke, ob ich auf den externen Pulldown Widerstand nicht
verzichten könnte, den internen Pullup aktivieren und dann abfragen oder
kann das Probleme machen?
VG
Sven
Sven schrieb:> externen Pulldown Widerstand nicht> verzichten könnte, den internen Pullup aktivieren
Du willst einen Pulldown durch einen Pullup ersetzen, ohne die Logik
zu invertieren? Das geht nicht.
Oder willst du nur bei nichtangeschlossener externer Schaltung für
definierte Verhältnisse sorgen? Dann kannst du das gern so machen, falls
keine Spezifikation für Nichtangeschlossensein der externen Schaltung
existiert(scheint mir aber nicht so).
Die MSP430 von TI können, soweit ich weiß, auch interne Pulldowns
schalten.
Welchen Controller benutzt du?
mfg mf
Achso ganz vergessen. Benutze einen 8-bit AVR (Tiny13).
Klar, die Abfrage muss dann invertiert erfolgen, logisch. Aber kann sich
das auf die Schaltung auswirken die ich einlesen will? Oder ist das bei
dem geringen Strom der über die Pullups rinnt gleichgültig?
Volker Schulz schrieb:> war jemand schneller
Nicht ganz richtig, u beleuchtest genaugenommen einen ganz anderen
Aspekt.
Es gibt bei beiden Varianten 3 Fälle:
a) Externe Schaltung verbunden, 0V
b) Externe Schaltung verbunden, 5V
c) Externe Schaltung nicht verbunden
Bei 'Pullup' kannst du b) und c) nicht unterscheiden.
Bei 'Pulldown' kannst du a) und c) nicht unterscheiden.
Nun kann der TO entscheiden, was besser ist. Oder eine "externe
Schaltung vorhanden" - Überprüfung mit einbauen.
mfg mf
Sven schrieb:> [...] Oder ist das bei> dem geringen Strom der über die Pullups rinnt gleichgültig?
Das wuerde ich doch mal stark annehmen. Definitiv koennen wir ohne Deine
Schaltung zu kennen aber nur raten... ;)
Volker
Die Schaltung kenne ich im Detail selbst nicht.
Die Schaltung schaltet eine Kontrollleuchte im Auto Cockpit. Da ich
wissen muss, wann die Leuchte angeht (um etwas zu schalten) , wollte ich
dies abfragen.
Gemessen habe ich, wenn die Leuchte angeht 4,7V und aus 0,4V, als
TTL-Pegel.
Aber danke, ich werde es mal mit internem Pullup versuchen.
Ist die externe Schaltung überhaupt trennbar?
Wenn du eine schaltungserkennung per ADC haben willst:
Teile die Versorgungs-Spannung des Tiny13 reht hochohmig 1:1 und führe
das an den ADC-Pin. Dieser ADC-Pin ist dann auch gleich der Sense-Pin
für die 0V/5V.
Wenn du mit dem ADC hier ungefähr VCC/2 misst, dann ist die externe
Schaltung wohl nicht dran. Ansonsten misst man hier wohl irgendwas um
die 0V oder 5V.
Wenn nur bei 5V, nicht aber bei 0V was passieren soll, würde ich eher
einen Pulldown spendieren. 68k oder irgendwas anderes in Größenordnung
der internen Pullups(die dann aber aus bleiben!).
mfg mf
Sven schrieb:> im Auto CockpitSven schrieb:> Gemessen habe ich, wenn die Leuchte angeht 4,7V und aus 0,4V
Örks, im Auto...
Mach da lieber noch einen 10k-Widerstand in Serie zum Pin und so 10nF
bis 47nF oder so parallel zu Pin und AVR-Masse(RC-Filter, vllt. sogar
noch eine 5,1V Z-Diode parallel zum C dazu). Störungen sind im Auto
Alltag.
Betriebsspannung des Tiny auch gut entkoppelt?
mfg mf
Sven schrieb:> Die Schaltung kenne ich im Detail selbst nicht.> Die Schaltung schaltet eine Kontrollleuchte im Auto Cockpit. Da ich> wissen muss, wann die Leuchte angeht (um etwas zu schalten) , wollte ich> dies abfragen.> Gemessen habe ich, wenn die Leuchte angeht 4,7V und aus 0,4V, als> TTL-Pegel.> Aber danke, ich werde es mal mit internem Pullup versuchen.
Moooment, zwischen was und Leuchte (aus) misst Du denn 0,4V? Das klingt
fuer mich nicht wirklich nach 5V // GND sondern nach 5V // hochohmig...
Da bringt der interne Pullup dann nix. ;)
Volker
Sven schrieb:> Gemessen habe ich, wenn die Leuchte angeht 4,7V und aus 0,4V, als> TTL-Pegel.
Wie kommst Du auf die Idee, einen Pullup oder Pulldown zu benötigen?
Die Lampe erledigt das schon!
Mini Float schrieb:> Mach da lieber noch einen 10k-Widerstand in Serie zum Pin und so 10nF> bis 47nF oder so parallel zu Pin und AVR-Masse(RC-Filter, vllt. sogar> noch eine 5,1V Z-Diode parallel zum C dazu).
So würde ich das auch tun. Und über Pullup/down würde ich erst mal gar
nicht nachdenken.
Gruß
Jobst
Jobst M. schrieb:> Sven schrieb:>> Gemessen habe ich, wenn die Leuchte angeht 4,7V und aus 0,4V, als>> TTL-Pegel.>> Wie kommst Du auf die Idee, einen Pullup oder Pulldown zu benötigen?> Die Lampe erledigt das schon!Wenn die gemessenen 0,4V auch wirklich 0,4V zu Masse waren. Apropos
Masse: AVR und das TTL-Signal muessen natuerlich auf der selben liegen.
Ich erwaehne das nur weil ich in diesem Forum schon Pferde vor der
Apotheke habe kotzen sehen und weil der Begriff "AVR-Masse" fiel.
> Mini Float schrieb:>> Mach da lieber noch einen 10k-Widerstand in Serie zum Pin und so 10nF>> bis 47nF oder so parallel zu Pin und AVR-Masse(RC-Filter, vllt. sogar>> noch eine 5,1V Z-Diode parallel zum C dazu).>> So würde ich das auch tun. Und über Pullup/down würde ich erst mal gar> nicht nachdenken.
Ich wuerde optokoppeln, dann wieder ueber den Pull-Up nachdenken aber
ueber den Rest nicht. ;)
Volker
Sven schrieb:> Also die 0,4V und 4,6V habe ich gegen (Fahrzeug-)Masse gemessen, wo ich> später den AVR auch anschließen will.
Ich wundere mich halt ueber die 0,4V, weil Du schriebst:
Sven schrieb:> [...]> Standard ist die Schaltung auf 0V GND. Ich möchte den Zustand einlesen,> wenn die Schaltung auf 5V umschaltet.> [...]
Und 0,4V gegen GND ist halt nicht GND. ;)
Nun koennte es sich um echte TTL-Pegel gegen GND handeln, oder Deine
Messpunkte (0,4 und GND) liegen tatsaechlich auf einer Masse aber so
weit auseinander, dass Du irgendeine Spannung messen konntest oder aber
der Pegel ist 5V und hochohmig, wobei die 0,4V dann eher ein
Zufallsprodukt des Multimeters waeren. Dies gilt es herauszufinden, denn
in letzterem Falle braeuchtest Du einen externen Pull-Down.
Bei der Gelegenheit koenntest Du natuerlich auch herausfinden wie
belastbar die 5V sind und im Zweifel mit einem Optokoppler galvanisch
trennen...
Volker