www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Portausgänge mit PWM überlagern


Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich benötige 6 Ports zur Ansteuerung einer B6 Brücke.
Diese müssen auch eine PWM ausgeben können.

Da es kaum Controller gibt, die sowiele PWM Ausgänge besitzen und da sie 
auch nicht unabhängig voneinander einstellbar sein müssen, habe ich mir 
überlegt, über eine Software-and Verschaltung einen PWM Ausgang mit den 
6 Ports zu verknüpfen. Das PWM läuft permanent und über das Schalten von 
den Ports wird es sozusagen nur durchgeschalten.

Das sollte funktionieren, allerdings weis ich nicht, wie ich das 
softwaremäßig umsetze.

Vielen Dank schonmal für die Hilfe.

Grüße

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Je Port einen NPN Transistor in Emitterschaltung. Über die 
Kollektor-Widerstände führst du dein PWM Signal zu. Schaltet Transistor 
(ausgang HIGH) so wird das PWM Signal "platt gemacht" und es fällt im 
eingeschalteten Zustand keine Spannung über den Transistor ab.

Schaltest du nicht, kannst du das PWM Signal hochohmig am Kollektor 
abgreifen. Brauchst dann vlt nen weiteren Verstärker.

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde das gerne mit einer Softwarelogik machen, also einfach mit 
einer and-Verknüpfung.

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also mein Portausgang sieht zb so aus:

PORTD=((1  << PD1)|(1<<PD2))

hier werden jetzt PD1 und PD2 angeschalten, also auf 1.

Nebenbei läuft der Timer, der über den Pin PB3 vom PORTB das PWM 
ausgibt.

Wie würde man das codemäßig nun schreiben, dass der PORTD mit dem Pin 
PB3 vom PORTB and-verknüpft wird ?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nur weil der Timer einen PWM Ausgang bedient, heißt das ja nicht,
dass die entsprechenden Interrupts (Compare-Interrupts) nicht
mehr ausgelöst werden. Dort musst du dich reinsetzen.

Einfacher wäre sicherlich die Hardwarelösung.
Oder aber gleich eine Software-PWM mit 6 Kanälen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.