Hi ,
i just tried out to use the TC0 of ATSAME54 in my application. The 16 and 32 Bit CC0, CC1 registers seem to be only 8 bit usable instead of 16/32 Bit. The status register evaluate correct during program run, but can´t be set correctly during test.
Thanks and best regards
Thomas
First of all, thanks to your inquiry in Arm community.
We checked your issue and it seems that ATSAME53 is the Microchip SoC, which is out of our Arm community scope because we can only support the Arm IP products.
For personal curiosity, I searched the ATSAME54 datasheet [1], it explicitly shows that this SoC can support three TC modes:<quote>
Up to eight 16-bit Timers/Counters (TC) each configurable as:
– 16-bit TC with two compare/capture channels
– 8-bit TC with two compare/capture channels
– 32-bit TC with two compare/capture channels, by pairing two TCs
</quote>
So your issue may be that you don't configure the SoC Timer Counter as the 32-bit mode, but in 8-bit mode.
For details, please double check the datasheet.
[1]: www.microchip.com/.../SAM_D5x_E5x_Family_Data_Sheet_DS60001507G.pdf
Hi Zhifei Yang, i tried every type of initialisation. The display shows 8/16/32 Bit lenght in the data, but only the lowest 8 Bits change in the peripheral display. If i load the data into external variables the results are correct in 8/16/32 Bit values. I also can change the values to longer datatypes by hand, but it displays only the lowest 8 Bits.