Atmel SamE70 PWM gleichzeitige Ausgabe auf PWMH0 und PWML0 möglich?

OP #4620117
Lesenswert?
• ▲
▼
Ich möchte mit dem SAM-E70 eine RGB-LED per PWM steuern. Dafür sten mir 
die Pins PD11 (PWMC0_PWMH0), PD24 (PWMC0_PWML0) und PD26 (PWMC0_PWML2) 
zur Verfügung.
Probleme habe ich bei der Ansteuerung der Pins PD11 und PD24. Diese 
scheinen nicht getrennt voneinander zu arbeiten.

Hier der SourceCode-ausschnitt im PWM0_Handler:
1
  m_PwmChannelLed.channel = PIN_PWM_LEDG_CHANNEL;
2
  m_PwmChannelLed.output_selection.b_override_pwml=false;
3
  m_PwmChannelLed.output_selection.b_override_pwmh=true;
4
  m_PwmChannelLed.output_selection.override_level_pwml=PWM_HIGH;
5
  m_PwmChannelLed.output_selection.override_level_pwmh=PWM_HIGH;
6
  pwm_channel_update_output(PWM0, &m_PwmChannelLed,&m_PwmChannelLed.output_selection,false);
7
  pwm_channel_update_duty(PWM0, &m_PwmChannelLed, ~s_Color_g & 0xff);
8
    
9
  m_PwmChannelLed.channel = PIN_PWM_LEDB_CHANNEL;
10
  m_PwmChannelLed.output_selection.b_override_pwml=true;
11
  m_PwmChannelLed.output_selection.b_override_pwmh=false;
12
  m_PwmChannelLed.output_selection.override_level_pwml=PWM_HIGH;
13
  m_PwmChannelLed.output_selection.override_level_pwmh=PWM_HIGH;
14
    
15
  pwm_channel_update_duty(PWM0, &m_PwmChannelLed, ~s_Color_b & 0xff);
16
  pwm_channel_update_output(PWM0, &m_PwmChannelLed,&m_PwmChannelLed.output_selection,false);

Meine Vermutung ist, dass ich was mit der Verwendung der 
"Output_selection"-Struct falsch mache, finde aber den Fehler nicht.

Ich hoffe ich habe mein Problem einigermaßen verständlich beschrieben.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren