Arduino Mega, Tristate Ausgang

OP (Firma: Manfred) #7081479
Lesenswert?

Schönen Vormittag,

momentan bin ich ein bisserl Durcheinander, wie ich das am besten 
bewerkstellige:

habe einen Telefonanschluss, den ich über einen Übertrager mit dem 
Eingang eines MT8870 verbinde (Tonnachwahlempfänger) und zusätzlich mit 
einem AusgangsPIN (PIN 12, OSC1B) des Arduino MEGA, mit dem ich via CTC 
diverse Bestätigungstöne ausgebe.

Nun ist es so, wenn PIN12 auf GND ist, werden keine Signale vom Telefon 
empfangen, also muss ich ihn auf High impedance und ohne Signal stellen.
Im Setup des Programmes wird PIN12 als OUTPUT definiert.

Den Tongenerator schalte ich jeweils mit

TCCR1A=0;
pinMode(PIN12,INPUT);

aus, reicht es wenn ich dort den PIN12 zusätzlich als INPUT definiere 
und dann bei der weiteren Tonausgabe mit

TCCR1A = (1 << COM1B0);
pinMode(PIN12,OUTPUT);

einfach wieder den PORT auf Ausgang setze.

Eigentlich kann ich dann im SETUP die pinMode-Konfiguration gleich 
weglassen. Passt das so mit dem Tristate oder gibts andere (bessere) 
Möglichkeiten?
Moderator (Firma: Titel) Persönliche Seite #7081507
Lesenswert?

Manfred S. schrieb:
> habe einen Telefonanschluss, den ich über einen Übertrager mit dem
> Eingang eines MT8870 verbinde (Tonnachwahlempfänger) und zusätzlich mit
> einem AusgangsPIN (PIN 12, OSC1B) des Arduino MEGA
Ich würde da mal ohne angeschlossenen µC-Pin messen, was da im 
"Normalbetrieb" spannungsmäßig auf der Leitung abgeht.

Denn wenn die Spannung dort über Vcc+0,3V steigt, dann wird über die 
ESD-Schutzdiode im µC Strom auf die Vcc eingespeist. Wen die Spannung 
dort negativ werden kann, dann wird sie über die Schutzdiode des Pins 
auf -0,3V geklemmt.
OP (Firma: Manfred) #7081637
Lesenswert?

Ah, danke für die Antworten - bin beruhigt, werds heute abends gleich 
testen, sollt aber funktionieren. Überspannungen sollten weitgehend mit 
den antiparallel geschalteten Zenerdioden ausgemerzt werden..

Anbei noch das Schaltbild, dahinter hängt der in den großen 
Versandhäusern angebotene MT8870 Fertigbaustein (IN-Eingang).
Angehängte Dateien:
OP (Firma: Manfred) #7081682
Lesenswert?

Falk B. schrieb:
> Manfred S. schrieb:
>> Anbei noch das Schaltbild, dahinter hängt der in den großen
>> Versandhäusern angebotene MT8870 Fertigbaustein (IN-Eingang).
>
> Und was hat das mit dem Tristate am Arduino zu tun?

Wenn der PIN12 auf OUTPUT und LOW steht, wird wohl kein Signal 
durchkommen zum MT8870, daher der hochohmige Tristate Eingang..
#7081688
Lesenswert?

Manfred S. schrieb:
>>> Anbei noch das Schaltbild, dahinter hängt der in den großen
>>> Versandhäusern angebotene MT8870 Fertigbaustein (IN-Eingang).
>>
>> Und was hat das mit dem Tristate am Arduino zu tun?
>
> Wenn der PIN12 auf OUTPUT und LOW steht, wird wohl kein Signal
> durchkommen zum MT8870, daher der hochohmige Tristate Eingang..

Und wo ist das im Schaltplan zu sehen?
Moderator (Firma: Titel) Persönliche Seite #7081695
Lesenswert?

Manfred S. schrieb:
> Ah, danke für die Antworten - bin beruhigt, werds heute abends gleich
> testen, sollt aber funktionieren. Überspannungen sollten weitgehend mit
> den antiparallel geschalteten Zenerdioden ausgemerzt werden..
Nach dem Kondensator hast du nur noch Wechselspannung, also auch -6V.

Manfred S. schrieb:
> Wie hoch ist der Strom der Eingangsschutzdioden? Wo steht das im
> Datenblatt?
Es gibt da diese eine AVR182-Appnote mit der Nulldurchgangserkennung. 
Siehe dort dann im Kapitel 2.2 den Text: "note that the maximum current
through the AVR’s clamping diode should not be higher than 1mA."
OP (Firma: Manfred) #7081725
Lesenswert?

Lothar M. schrieb:
>> Wie hoch ist der Strom der Eingangsschutzdioden? Wo steht das im
>> Datenblatt?
> Es gibt da diese eine AVR182-Appnote mit der Nulldurchgangserkennung.
> Siehe dort dann im Kapitel 2.2 den Text: "note that the maximum current
> through the AVR’s clamping diode should not be higher than 1mA."

Ah, super danke - stimmt, also könnte ich mal den Widerstand von 470 Ohm 
auf mehr als 5k erhöhen, denk das sollte dann beim Telefon trotzdem als 
Signal gut hörbar sein dannn sollts passen. Aber ich seh schon, eine 
Treiberstufe (z.B. mit einem freien PIN vom ULN2003) wär wohl die 
elegantere Lösung..

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