PWM-Modulation

OP #5905102
Lesenswert?
• ▲
▼
Guten Tag,
Ich studiere momentan Elektrotechnik im Bachelor und habe eine Frage 
bezüglich Der PWM einer Diode. In dem Beispiel Code (im Anhang) werden 4 
Didoden angesteuert. Sie sollen mittels PWM und Knopfdruck ihre 
Intensität (bzw. Helligkeit) verringern oder erhöhen. Außerdem sollen 
die Dioden ihre vorherige Helligkeit beibehalten, also sepreat und 
unabhängig einstellbar sein. Meine Frage bezieht sich auf folgende 
Zeilen:
switch (PWMlevel)
      {
      case 0: if(PWMtime >2){

                 LEDoff25 = LEDon & (~(LEDoff[0]));
            setLEDs(LEDoff25);
            PWMlevel++;


Warum wird hier der Wert des Arrays LEDoff[] bittweise negiert und dann 
bittweise über eine UND Operation vereinigt. Ich habe diesbezüglich 
bereits in anderen Foren geposted aber keine Erklärung erhalten.

Mit freundlichen Grüßen
Gustav
Angehängte Dateien:
#5905118
Lesenswert?
• ▲
▼
Gustav S. schrieb:

PWM-Modulation ist sowas ähnliches wie ein weißer Schimmel oder ein 
LCD-Display.

> Ich studiere momentan Elektrotechnik im Bachelor und habe eine Frage
> bezüglich Der PWM einer Diode.

Dioden haben keine PWM ;-)

> In dem Beispiel Code (im Anhang) werden 4

Warum hängst du nicht deinen originalen Quelltext als .c Datei an? Dann 
wird die nämlich auch mit Syntaxhervorhebeung angezeigt.

> Didoden angesteuert.

Du meinst wahrscheinlich LEDs.

> Warum wird hier der Wert des Arrays LEDoff[] bittweise negiert und dann
> bittweise über eine UND Operation vereinigt.

Das ist eine Bitmanipulation zum Löschen einzelner Bits.

Dein Quelltext ist schlecht lesbar, weil die Tabulatoren riesig sind. 
Die sollte man per Editor durch Leerzeichen ersetzen lassen, damit sie 
überall gleich aussehen. Außerdem ist die Struktur deines Quelltextes 
sowohl von der reinen Lesbarkeit als auch vom Grundkonzept her eher 
schlecht.

Siehe Strukturierte Programmierung auf Mikrocontrollern

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.