Das Problem ist, dass hier zuerst der aktuelle Wert des CLK.CTRL-Registers ausgelesen werden muss. Somit besteht die Verknüpfung nicht nur aus Festwerten und kann daher auch nicht direkt aufgelöst werden.

Da aber nach dem Reset alle Bits des CLK.CTRL-Registers sowieso komplett auf 0 stehen, kann man sich das
Code:
(CLK.CTRL & ~CLK_SCLKSEL_gm)
auch sparen und einfach nur
Code:
CCP = CCP_IOREG_gc;
CLK.CTRL = CLK_SCLKSEL_RC32M_gc;
schreiben, das verkürzt die ganze Sache ungemein.

Gruß,
askazo