Hallo nochmal,
@Doc_Arduino: Danke! Ich hab Deinen Schaltplan probiert, aber das hat nicht so ganz geklappt. 
@Blade01: Hoffentlich habe ich die Lösung gefunden!?
@HotSystems: Hoffentlich drücke ich mich verständlich aus.
In der Früh hab ich den Wald vor lauter Bäumen nicht mehr gesehen. Ich habe das ganze jetzt nochmal getestet und gemessen. 
Grundsätzlich ist es egal ob Vcc =3,3 Volt oder Vcc = 5 Volt. Das PWM Signal übernimmt die Spannung von Vcc.
Aber was mir auch nicht ganz klar ist, veranschaue ich lieber mit einem Schaltplan. Leider nicht besonders schön aber man sollte den Abschnitt verstehen. Ich kann den Plan auch am Computer zeichnen. Ich hab den wichtigsten Teil ausgeschnitten, aber nicht mit der Schere 
Entgegen meiner Erwartung, funktioniert der Schaltplan von Doc_Arduino nicht mit dem Adafruit Breakout.
Der rechte Schaltplan funktioniert einwandfrei mit einer LED. Sowohl Dimmen als auch Ein/Aus-Schalten.
Beim linken Schaltplan, scheint es keine Logik (er macht irgendwas) zu geben. Dimmen funktioniert allerdings solange man unter ca. 400Hz bleibt, bei 50Hz wird es wieder eng, sprich: Die sichtbare Dimm Phase ist sehr kurz.
Wenn ich mal stabile Werte sehe, ist die Kurve grauenhaft, tut aber was im Sketch steht.
Ich habe als N-MOSFET einen IRF520.
Ich habe folgende zwei Sketches, die ich aus den Beispiel Dateien abgeändert und für die Tests verwendet.
Ein/Aus:
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
// called this way, it uses the default address 0x40
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(0x42);
// you can also call it with a different address you want
//Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(0x41);
// you can also call it with a different address and I2C interface
//Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(&Wire, 0x40);
byte pin = 0;
void setup() {
Serial.begin(9600);
Serial.println("GPIO test!");
pwm.begin();
pwm.setPWMFreq(400); // Set to whatever you like, we don't use it in this demo!
// if you want to really speed stuff up, you can go into 'fast 400khz I2C' mode
// some i2c devices dont like this so much so if you're sharing the bus, watch
// out for this!
Wire.setClock(400000);
}
void loop() {
Serial.println("AN:");
pwm.setPWM(pin, 4096, 0); // turns pin fully on
delay(2000);
Serial.println("AUS:");
pwm.setPWM(pin, 0, 4096); // turns pin fully off
delay(2000);
}
Und den folgenden Sketch zum Dimmen:
/*
* Test Programm - Pin Messung
*/
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
// called this way, it uses the default address 0x40
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(0x42);
#define SERVOMIN 0 // this is the 'minimum' pulse length count (out of 4096)
#define SERVOMAX 4096 // this is the 'maximum' pulse length count (out of 4096)
void setup() {
Serial.begin(9600);
Serial.println("Pin 0 Test Messungt!");
pwm.begin();
pwm.setPWMFreq(1000);
delay(10);
}
void loop() {
for (uint16_t pulselen = SERVOMIN; pulselen < SERVOMAX; pulselen++) { // duty-cycle = 0%,..,100%
pwm.setPWM(0, 0, pulselen); // setze auf Pin 0 ein duty-cycle von pulselen
}
for (uint16_t pulselen = SERVOMAX; pulselen > SERVOMIN; pulselen--) {
pwm.setPWM(0, 0, pulselen);
}
}
Da mich das, wie bereits gesagt, selber sehr interessiert habe ich Oszilloskop Screenshots gemacht und hänge zwei an (rechter Schaltplan!) <- Bei mir schaltet eine LED ein/aus oder kann gedimmt werden.
Frage an die Profis unter euch: Ist der rechte Schaltplan die richtige Lösung?
Die Screenshots vom Oszilloskop sind an Drain (Output) gemessen.
lg dony