SoftPWM LEDs leuchten durcheinander
hallo hab mit einem beispielprogramm gestartet.
wenn ich es laufen lasse ohne softpwm geht alles einwandfrei. sobald ich aber die ausgänge per softpwmset ansprechen möchte dann leuchten irgendwie andere leds die nicht leuchten sollten aber die angesprochenen überhaupt nicht.
vielleicht hab ich ja einen fehler den ich übersehen habe.
ohne softpwm:
softpwm version:
wenn ich es laufen lasse ohne softpwm geht alles einwandfrei. sobald ich aber die ausgänge per softpwmset ansprechen möchte dann leuchten irgendwie andere leds die nicht leuchten sollten aber die angesprochenen überhaupt nicht.
vielleicht hab ich ja einen fehler den ich übersehen habe.
ohne softpwm:
code: [select]
// kanäle auf ausgang, und dann deaktivieren
pinmode(l_blk_re, output);
digitalwrite(l_blk_re, low);
pinmode(l_fahrlicht_re, output);
digitalwrite(l_fahrlicht_re, low);
pinmode(l_standlicht1_re, output);
digitalwrite(l_standlicht1_re, low);
pinmode(l_standlicht2_re, output);
digitalwrite(l_standlicht2_re, low);
pinmode(l_fernlicht_re, output);
digitalwrite(l_fernlicht_re, low);
pinmode(l_fernlicht_lk, output);
digitalwrite(l_fernlicht_lk, low);
pinmode(l_standlicht1_lk, output);
digitalwrite(l_standlicht1_lk, low);
pinmode(l_standlicht2_lk, output);
digitalwrite(l_standlicht2_lk, low);
pinmode(l_fahrlicht_lk, output);
digitalwrite(l_fahrlicht_lk, low);
pinmode(l_blk_lk, output);
digitalwrite(l_blk_lk, low);
pinmode(l_blk_h_re, output);
digitalwrite(l_blk_h_re, low);
pinmode(l_blk_h1_re, output);
digitalwrite(l_blk_h1_re, low);
pinmode(l_rueckfahrlicht_re, output);
digitalwrite(l_rueckfahrlicht_re, low);
pinmode(l_bremse_re, output);
digitalwrite(l_bremse_re, low);
pinmode(l_bremse_i_re, output);
digitalwrite(l_bremse_i_re, low);
pinmode(l_bremse_ii_re, output);
digitalwrite(l_bremse_ii_re, low);
pinmode(l_blk_h_lk, output);
digitalwrite(l_blk_h_lk, low);
pinmode(l_blk_h1_lk, output);
digitalwrite(l_blk_h1_lk, low);
pinmode(l_rueckfahrlicht_lk, output);
digitalwrite(l_rueckfahrlicht_lk, low);
pinmode(l_bremse_lk, output);
digitalwrite(l_bremse_lk, low);
pinmode(l_bremse_i_lk, output);
digitalwrite(l_bremse_i_lk, low);
pinmode(l_bremse_ii_lk, output);
digitalwrite(l_bremse_ii_lk, low);
pinmode(led, output);
digitalwrite(led, low);
code: [select]
void showheadlights() {
dbgout("h:");
dbgoutln(headlightstate);
switch (headlightstate) {
case stand:
digitalwrite(l_blk_re, 0);
digitalwrite(l_fahrlicht_re, 0);
digitalwrite(l_standlicht1_re, 0);
digitalwrite(l_standlicht2_re, 0);
digitalwrite(l_fernlicht_re, 0);
digitalwrite(l_fernlicht_lk, 0);
digitalwrite(l_standlicht1_lk, 0);
digitalwrite(l_standlicht2_lk, 0);
digitalwrite(l_fahrlicht_lk, 0);
digitalwrite(l_blk_lk, 0);
digitalwrite(l_blk_h_re, 0);
digitalwrite(l_blk_h1_re, 0);
digitalwrite(l_rueckfahrlicht_re, 0);
digitalwrite(l_bremse_re, 1);
digitalwrite(l_bremse_i_re, 1);
digitalwrite(l_bremse_ii_re, 1);
digitalwrite(l_blk_h_lk, 0);
digitalwrite(l_blk_h1_lk, 0);
digitalwrite(l_rueckfahrlicht_lk, 0);
digitalwrite(l_bremse_lk, 1);
digitalwrite(l_bremse_i_lk, 1);
digitalwrite(l_bremse_ii_lk, 1);
break;
softpwm version:
code: [select]
void showheadlights() {
dbgout("h:");
dbgoutln(headlightstate);
switch (headlightstate) {
case stand:
digitalwrite(l_blk_re, 0);
digitalwrite(l_fahrlicht_re, 0);
digitalwrite(l_standlicht1_re, 0);
digitalwrite(l_standlicht2_re, 0);
digitalwrite(l_fernlicht_re, 0);
digitalwrite(l_fernlicht_lk, 0);
digitalwrite(l_standlicht1_lk, 0);
digitalwrite(l_standlicht2_lk, 0);
digitalwrite(l_fahrlicht_lk, 0);
digitalwrite(l_blk_lk, 0);
digitalwrite(l_blk_h_re, 0);
digitalwrite(l_blk_h1_re, 0);
digitalwrite(l_rueckfahrlicht_re, 0);
softpwmset(l_bremse_re, 255);
softpwmset(l_bremse_i_re, 255);
softpwmset(l_bremse_ii_re, 255);
digitalwrite(l_blk_h_lk, 0);
digitalwrite(l_blk_h1_lk, 0);
digitalwrite(l_rueckfahrlicht_lk, 0);
softpwmset(l_bremse_lk, 255);
softpwmset(l_bremse_i_lk, 255);
softpwmset(l_bremse_ii_lk, 255);
break;
du hast den link zur verwendeten bibliothek vergessen.
ausserdem solltest du den ganzen code posten und nicht nur ausschnitte davon, denn der fehler könnte ja einem ganz anderen ort liegen als du denkst.
ausserdem solltest du den ganzen code posten und nicht nur ausschnitte davon, denn der fehler könnte ja einem ganz anderen ort liegen als du denkst.
Arduino Forum > International > Deutsch (Moderator: uwefed) > SoftPWM LEDs leuchten durcheinander
arduino
Comments
Post a Comment