Hi,

ohne zu wissen, ob deine SetupWriteChannel Funktion (und auch die anderen) richtig arbeitet, fällt mir auf, dass du den DMA auf 1Byte-Burst sowie auf SCRDIR_FIXED gestellt hast. Das PER Register der Timer ist aber 16Bit breit, das passt schonmal nicht.
Außerdem weiß ich nicht, ob du das PER Register überhaupt irgendwo veränderst? Dir ist klar, was dieses Register macht?

Gruß
Chris