User manual
91 92
11.2 Einfacher DA Umsetzer mit PWM
Der NANO hat selbst einen einfachen DA Umsetzer vorgesehen, er arbeitet mit der sogenannten Pulsbrei-
tenmodulation. Das Signal ist eigentlich noch digital, die Pulsbreite entspricht aber dem analogen Wert. Mit
einem Kondensator könnte man den Wert noch glätten und in einen „echten“ analogen Wert umwandeln.
Wenn man eine einfache LED anschließt, kann man aber auch ohne Kondensator die Helligkeit der LED durch
die Pulsbreitenmodulation steuern. Das Licht ist in Wirklichkeit gepulst, aber unser Auge ist zu träge um das
Flackern noch gut auösen zu können.
Hierfür können nicht alle Ports verwendet werden. Beim NANO sind es die Ports 3,5,6,9,10 und 11 die mit dem
Befehl analogWrite() angesprochen werden können.
PWM steht als Abkürzung für Pulsweitenmodulation oder auch Pulsbreitenmodulation.
+
-
9V
1A
SCLS DA
+9V
A0
A1
Tx
Rx
PD2
SCLKMOSI
PD3
PD 6
PD 4
PD 5
PD 7
A7
A3
A2
A6
NANO
to
Br ick`R`
3,3V 5V
USB
B0
SS
MISC
B1
I²C
Ports 3,5,6,9,10,11 PWM
LED
LED
// DE_32 DA Beispiele PWM
#include <Wire.h> // I2C Bibliothek
#include <avr/pgmspace.h> // reserve
#dene DA3 3 // Port PD3
void setup() {
pinMode(DA3, OUTPUT); // Auch als Ausgang
}
void loop() { // Schleife
static int helligkeit=0; // LED Helligkeit
analogWrite(DA3, helligkeit);
delay(20); // 20ms
helligkeit++; // Hier aufsteigend
if (helligkeit>255) helligkeit = 0; // 0..255
}
Was passiert? Die LED am Port PD3 ist am Anfang ganz dunkel, dann sieht man plötzlich die Hellig-
keit ansteigen, bis ein Maximum erreicht wird und alles von vorne beginnt. Der Vorgang dauert ein
paar Sekunden (>256 * 20mSec).










