Цитата(Тема @ Feb 6 2008, 12:40)

Вот код почему он не работает?
Потому что он идиотский.
Я не понял что конкретно вам нужно получить в итоге, поэтому отвечу только на один вопрос
Как тактировать канал один1 от канала 0.
Для этого нужно сконфигурировать канал 0 на генерацию импульсов нужной вам тактовой частоты.
Код
AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_TC0);
// можно отдать внешний вывод таймеру и посмотреть на нашу тактовую частоту
// AT91F_PIO_CfgPeriph(AT91C_BASE_PIOA, 0, AT91C_PA15_TIOA0);
AT91C_BASE_TC0->TC_CMR = prescalerMask
| AT91C_TC_WAVE
| AT91C_TC_WAVESEL_UP_AUTO
| AT91C_TC_ACPA_CLEAR /* сброс tioa1 в начале работы */
| AT91C_TC_ACPC_SET /* установка в конце */
| AT91C_TC_ASWTRG_SET /* линии TIOA0 в 1 */
AT91C_BASE_TC0->TC_RA = 1;
AT91C_BASE_TC0->TC_RC = interval+1;
В блоке BCR XC1 либо XC2 как TIOA0
Код
AT91C_BASE_TCB->TCB_BMR = AT91C_TCB_TC0XC0S_NONE
| AT91C_TCB_TC1XC1S_TIOA0
| AT91C_TCB_TC2XC2S_NONE;
сконфигурировать канал 1 на тактирование от XC1 либо XC2
Код
AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_TC1);
AT91C_BASE_TC1->TC_CMR = AT91C_TC_CLKS_XC1
| AT91C_TC_WAVE
| AT91C_TC_WAVESEL_UP_AUTO
| AT91C_TC_ACPA_CLEAR /* сброс tioa1 в начале работы */
| AT91C_TC_ACPC_SET /* установка в конце */
| AT91C_TC_ASWTRG_SET /* линии TIOA0 в 1 */
AT91C_BASE_TC1->TC_RA = 1;
AT91C_BASE_TC1->TC_RC = interval+1;
незабудьте только запустить это хозяйство.