Gast
#4964168
Hallo, ich wollte einen seltsamen und noch unbekannten HW-Bug hier melden/vorstellen. - Dieser Fehler tritt bei mir bei Timer TCE0 im PWM-Betrieb (ca. 71kHZ) auf (andere Timer nicht getestet) => Beim schreiben auf das .CCBBUF-Register mit einem Wert wird *sporadisch/sehr selten* der Wert des .PERBUF(low)-Registers verfälscht!!! Daraus folgend, wird eine(!) PWM-Periode verfälscht! => Das ist KEIN Programmier- oder Compilerfehler! (Habe das im Disassembly-Fenster nachgeschaut) ==> Workaround: Wenn nach: TCE0.CCBBUF= uint16_t; Das Register TCE0.PERBUFL gelesen wird (z.B. if(TCE0.PERBUFL != wert)... tritt der Fehler nicht mehr auf! - Prozessor ATXMega64A3U Rev. G - Taktfrequenz: 32MHz (ext.), Ub= 3,3V - 1 DMA-Kanal mit 430kByte/s und mehrere INT-Routinen aktiv