Clocks and IO Pins on ATSAM bsp

Isaac Gutekunst isaac.gutekunst at
Fri Jun 10 15:15:02 UTC 2016

Hi Everyone,

I'm moving along with our project here at Vecna, and am working to bring up the MCAN controller on the ATSAMV71Q21 processor. I'm having a fun time figuring out the clock tree, and bringing the peripheral up.

Are there any recommended ways of configuring all the clocks and enabling the GPIO pins to bring up a peripheral?

I'm doing an awkward mix of calling functions provided by Atmel, e.g. PIO_Configure(pinsMcan1, PIO_LISTSIZE(pinsMcan1)); (wrapped in a #ifndef __rtems__ in mcan.c), and twiddling bits in the variou PMC control registers: e.g.

   PMC->PMC_PCK[5] &= ~(PMC_PCK_CSS_Msk);
   PMC->PMC_PCK[5] |= ((2 << PMC_PCK_CSS_Pos) & PMC_PCK_CSS_Msk);

   PMC->PMC_PCK[5] &= ~(PMC_PCK_PRES_Msk );
   PMC->PMC_PCK[5] |= ((11 << PMC_PCK_PRES_Pos ) & PMC_PCK_PRES_Msk);


So far, I haven't gotten the peripheral to work, but that's a matter of struggling forward. I'm curious if anyone has already figured any of this out, and can offer advice.



More information about the users mailing list