Zwischen zwei PWM-Signalen umschalten

OP #4583510
Lesenswert?

Hallo,

ich habe folgendes Problem:

Ich habe 2 PWM-Signale(Pegel 5V), ich benenne sie mal mit PWM1 und PWM2.
Nun will ich mithilfe eines digitalen Signals(Pegel 3.3V), von 
beispielsweise einem µC, entweder PWM1 oder PWM2 auf eine Leitung legen, 
also zwischen ihnen wechseln können.
Am besten wäre eine Lösung, die keine Multiplexer-ICs o.Ä. beinhaltet, 
da mir diese im Moment nicht zur Verfügung stehen und ich möglichst 
schnell eine Lösung brauche, insofern das möglich ist.

Ich brauche auch keine fertige Schaltung, ein paar Denkanstöße würden 
ausreichen.


Infos zu den PWM-Signalen:

f = 40Hz
5% < D.C. < 30%


Grüße

Max V.W.
#4583545
Lesenswert?

Max V. schrieb:
> Am besten wäre eine Lösung, die keine Multiplexer-ICs o.Ä. beinhaltet,
> da mir diese im Moment nicht zur Verfügung stehen und ich möglichst
> schnell eine Lösung brauche, insofern das möglich ist.

entweder der µC ändert die PWM oder du schaltest sie mit Transistoren 
um, Logikgatter gehen auch wenn du keine Multiplexer nehmen kannst.

letztendlich sind das nix weiter als 2 high/low Signale die mal 
durchgelassen werden sollen mal nicht.

Ein AND mit 2 Eingänge kann das für je ein PWM

E2 am AND high PWM kommt raus
E2 am AND low PWM kommt nicht raus

2tes AND dito

nun musst man nur noch ein E2 invertieren und dann gehts mal auf dem 
einen mal auf dem anderen raus, zum zusammenmischen nimmt man ein ODER 
mit 2 Eingänge

entweder kommt die 1/0 Folge an einem Eingang oder am anderen Eingang 
aber sicher wieder raus.
OP #4583548
Lesenswert?

Danke für die Antworten.

Ich habe gerade mal geschaut, was ich an Logikgattern da habe.

- 2x NAND-Gate IC (insg. 8 Gatter)
- 1x AND-Gate IC (Insg. 4 Gatter)

Leider nicht mehr so viel..


@Mogli:

Das wäre natürlich die einfachste Möglichkeit, aber leider stammen die 
PWM-Signale nicht von einem uC.
#4583601
Lesenswert?

Max V. schrieb:
> Echt? Könntest du bitte den Link schicken?

Hier der link auf WA : 
http://www.wolframalpha.com/input/?t=crmtb01&i=!(!(A+AND+E)+AND+!(B+AND+!E))

A und B sind jeweils PWM1 und PWM2, E ist das Auswahlsignal. !E wird aus 
E mit einem weiteren NAND Gatter erzeugt (beide inputs 
zusammenschliessen bildet einen Inverter).
Angehängte Dateien:
Gast #4583610
Lesenswert?

Hehe, wenn ich nach deinem Bild hier so auf meinen Zettel schau ist das 
auch klar :). Da hatte ich noch mal Inverter hinter den Eingangs UND. 
Deren Invertierung ich hinter das ODER aus NAND gelegt habe in dem 
Glauben damit ein Gatter zu sparen. Hätte ich diesen dämlichen Schritt 
nicht im Hinterkopf gemacht wäre wohl aufgefallen, dass 2x NOT 
hintereinander nicht sonderlich sinnvoll sind..
#4583621
Lesenswert?

Beide auf einen Interruptpin geben, im Handler nen Ausgangspin schalten 
und dann wahlweise den einen oder anderen Interrupt freigeben.

Bzw. beim AVR kann man den Pin-Change-Interrupt nehmen und in der Maske 
festlegen, auf welchen Pin er hören soll.

Oder der ATmega328PB kann direkt den Analog-Comparator auf einen Ausgang 
legen und über den ADC-MUX den Eingang auswählen. Dann hat man 0% 
CPU-Last.

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