50Hz Signal mit Timer 5 Arduino MEGA

Hi,
ja, ich weiss, es gibt viele Posts ueber genau dieses Thema, ich habe jedoch keine Erfolge mit deren Hilfe bei meinem Problem erzielt.

void setup() {
  
  TCCR5A = 0;
  TCCR5B = 0;
  OCR5A = 0;
  OCR5B = 0;

  TCCR5B |= (1 << CS51);

  TCCR5A |= (1 << WGM51) | (1 << WGM50);
  TCCR5B |= (1 << WGM53) | (1 << WGM52);

  OCR5A = 40000;

  TCCR5A |= (1 << COM5B1);

  OCR5B = 2000;  

  DDRL = 0b00010000;
 }

void loop() {

}

Hier sollte ich ein 50Hz Signal mit 1ms On-Time herauskriegen. Aber ich bekomme gar kein Signal am Pin39 (PL4/OC5B) heraus.

LG

Ich bin zu faul nachzuschauen, was die Bitschiebereien bewirken, ein paar Kommentare könnten den Code übersichtlicher machen.

Mißt Du direkt am Controller Pin, oder hast Du die Pin Nummer aus dem Pin Mapping des Arduino Mega ermittelt?

DrDiettrich:
Ich bin zu faul nachzuschauen, was die Bitschiebereien bewirken, ein paar Kommentare könnten den Code übersichtlicher machen.

Mißt Du direkt am Controller Pin, oder hast Du die Pin Nummer aus dem Pin Mapping des Arduino Mega ermittelt?

Hier ein Bild:

Zeigt, dass Pin39 auch OC5B ist.

Ich messe mit einem Oszi am Ardu-Header

LG

Ein Blick in die Tabelle zeigt aber:

39 PL4 ( OC5B ) Digital pin 45 (PWM)

DrDiettrich:
Ein Blick in die Tabelle zeigt aber:

39 PL4 ( OC5B ) Digital pin 45 (PWM)

Ja, habs auch gerade bemerkt Haha

Danke!

LG