Der letzte Schritt

Nach all der Rechnerei fehlt uns nunmehr nur noch ein kleiner Schritt: Wir müssen den PWM-Modus für einen Pin aktivieren. Das können wir über Zugriffe in /sys/class/pwm erledigen, fast analog zur Aktivierung des Pins zur Nutzung für GPIO.

Stellenmarkt
  1. Senior IT-Architect Datensicherung (m/w/d)
    BWI GmbH, deutschlandweit
  2. Fachinformatiker*in / Informatiker*in - Web-Content-Management-System
    Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., München
Detailsuche

Zuerst gilt es, den Pin zu exportieren - auch hier ist die Nummer des Pins der Galileo-Dokumentation zu entnehmen. Dem Arduino-Pin 9 ist der PWM-Pin 1 zugeordnet:

  1. f = open("/sys/class/pwm/pwmchip0/export", "w");
  2. f.write("1")
  3. f.close()

Und dann wird er aktiviert:

Golem Akademie
  1. Hands-on C# Programmierung: virtueller Zwei-Tage-Workshop
    09./10.06.2022, virtuell
  2. Cloud Transformation Roadmap: Strategien, Roadmap, Governance: virtueller Zwei-Tage-Workshop
    , Virtuell
Weitere IT-Trainings

  1. f = open('/sys/class/pwm/pwmchip0/pwm1/enable', "w")
  2. f.write('1')
  3. f.close()

Die potenzielle Doppelbelegung von Pins gilt es auch hier zu beachten. Hinzu kommt, dass mit diesen Zeilen lediglich der PWM-Modus für den Pin angeschaltet wird, die eigentliche Aktivierung als Ausgangspin muss im Vorfeld über die GPIO-Schnittstelle erfolgen - also unserem pinMode()-Imitat von oben.

PWM-Modus für sonstige Fälle

Der Vollständigkeit halber wollen wir hier noch erwähnen, wie der PWM-Modus "normal" benutzt werden kann, zum Beispiel, um eine LED zu dimmen oder einen Motor über einen Motortreiber zu steuern - also Fälle, in denen die Frequenz der PWM uns nicht weiter interessiert. Dann reicht auch der Zugriff über /sys/class/pwmchip0/-Einträge aus.

Die eigentliche Konfiguration erfolgt über die Einträge period und duty_cycle. Beide erwarten Angaben in Nanosekunden. Der period-Wert entspricht der im PWM-Abschnitt angesprochenen Periode. Der duty_cycle definiert die Impulsdauer, also die Dauer, in der insgesamt tatsächlich Strom während einer Periode fließt. Folgendes Beispiel würde eine LED nur zu 50 Prozent mit Strom versorgen:

  1. f = open('/sys/class/pwm/pwmchip0/pwm1/period', "w")
  2. f.write('1000000')
  3. f.close()
  4.  
  5. f = open('/sys/class/pwm/pwmchip0/pwm1/enable', "w")
  6. f.write('1')
  7. f.close()
  8.  
  9. f = open('/sys/class/pwm/pwmchip0/pwm1/duty_cycle', "w")
  10. f.write('500000')
  11. f.close()

Die Prozentzahl von 50 Prozent ergibt sich aus dem Verhältnis von duty_cycle zu period. Der duty_cycle-Wert von 500000 sind 50 Prozent des period-Wertes von 1000000.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Zielgerichtet probierenDas finale Skript 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
  11.  


hungkubwa 31. Jan 2014

Wozu der Umweg über Flattr wenn man auch direkt Paypal nutzen kann? Versteh ich nicht.

savejeff 30. Jan 2014

Danke :] Ich benutze die app täglich auf mehreren PCs und habe mich so drann gewöhnt. Sie...

Anonymer Nutzer 30. Jan 2014

Besten Dank für die Info. Gruss, gehirnpest

Casandro 30. Jan 2014

...ein 5 Jahresprojekt, dass dann nach 7 Jahren wegen nicht eingetretenem Erfolg eingestellt.



Aktuell auf der Startseite von Golem.de
Heimkino und Hi-Fi
Onkyo meldet Konkurs an

Onkyo hat beim Bezirksgericht Osaka Konkurs angemeldet. Ob das überschuldete Unternehmen gerettet werden kann, ist ungewiss.

Heimkino und Hi-Fi: Onkyo meldet Konkurs an
Artikel
  1. Konkurrenz zu linearem Fernsehen: Netflix plant Live-Streaming-Formate
    Konkurrenz zu linearem Fernsehen
    Netflix plant Live-Streaming-Formate

    Derzeit wird bei Netflix noch an der Technik für Live-Streaming gearbeitet.

  2. Flughafen BER: Drohne über Teslas Gigafactory behindert Flugverkehr
    Flughafen BER
    Drohne über Teslas Gigafactory behindert Flugverkehr

    Über dem Gelände der Gigafactory Berlin ist es zu einem Zwischenfall mit einer Drohne und einem Passagierflugzeug gekommen.

  3. Bundesländer: Umweltminister einig über Autobahn-Tempolimit
    Bundesländer
    Umweltminister einig über Autobahn-Tempolimit

    Die Landesumweltminister der Bundesländer haben sich einstimmig für ein Tempolimit auf Autobahnen ausgesprochen. Was fehlt, ist dessen Höhe.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Week: Bis zu 46% Rabatt auf Mäuse & Tastaturen • Grafikkarten günstig wie nie (u. a. Palit RTX 3080 Ti 12GB 1.285€) • Bosch Professional Elektrowerkzeug bis zu 53% günstiger • Jubiläumsangebote bei MediaMarkt • MSI Optix MAG342CQR ab 389,90€ • MindStar (u. a. AMD Ryzen 7 5700X 269€, AMD Ryzen 9 5950X 509€ und LC-Power LC-M35-UWQHD-120-C 339€) [Werbung]
    •  /