Änderungen

Aus Hackerspace Ffm
Wechseln zu: Navigation, Suche

ArduinoVariablePWMFrequenz

542 Byte hinzugefügt, 16:28, 12. Nov. 2017
<pre>OCR1A = 200;</pre>
Zu guter letzt können wir auch noch die Funktion pinMode(11, OUTPUT); über Register direkt einstellen.
Die I/O-Ports werden in A, B, C, ... aufgeteilt. Das steht im Kapitel 13.4.
Jeder Portregister fasst 8 pins zusammen.
Das Register DDRx ist das Data Direction Register, im Falle von DDRB das für den Port B.
Über die Pinbelegung sehen wir das der Pin 11 auch PB5 genannt wird.
[[Datei:DDRB.PNG|800px]]
Also müssen wir das Bit DDB5 setzen.
<pre>DDRB = DDRB | B00100000;</pre>
Und hier noch mal der ganze Code:
<pre>
DDRB = DDRB | B00100000; // pin 11 als OUTPUT konfigurieren
TCCR1A = 0b11000010; // Pin OC1A frei schalten
TCCR1B = 0b00011001; // Prescaler auf 01 setzen um ~31.000 Takte zu haben
688
Bearbeitungen