void ConfigureTc0(void) { unsigned int div, tcclks; // Enable TC0 peripheral clock PMC_EnablePeripheral(AT91C_ID_TC0); TC_FindMckDivisor(1, BOARD_MCK, &div, &tcclks); TC_Configure(AT91C_BASE_TC0, tcclks | AT91C_TC_CPCTRG); AT91C_BASE_TC0->TC_RC = (BOARD_MCK / (2 * div)); // Configure interrupt on RC compare AIC_ConfigureIT(AT91C_ID_TC0, 0, ISR_Tc0); AT91C_BASE_TC0->TC_IER = AT91C_TC_CPCS; AIC_EnableIT(AT91C_ID_TC0); }