Товарищи, не сочтите за труд, посоветуйте, как быть!
Штудирую таймер-счётчик TCC0, конкретно Single-slope PWM. И возник такой вопрос: выводы OC0х в моей XMEGA распиханы по 3 портам параллельно. Настраиваю PC0 на выход, TC0_CCAEN в единицу - и на РС0 имею ШИМ. А как получить этот же ШИМ на PD0? И настраивал его на выход, и РС0 на вход ставил - нет в порту D ШИМа. Что не так делаю? По какому принципу вообще распихиваются сигналы по портам?
Сейчас в РС0 вывожу так:
Код
PORTC_DIR = 0b00000001;
TCC0_CTRLA = TC_CLKSEL_DIV1_gc; // DIV1, Prescaler: Clk
TCC0_CTRLB = TC0_CCAEN_bm | TC_WGMODE_SS_gc; // CCAEN = 1, Single-slope PWM operation
TCC0_CTRLD = TC_EVACT_OFF_gc | TC_EVSEL_OFF_gc; // No Event Action, No Event Source
TCC0_CTRLE = 0; // NORMAL, TCC0 is set to normal mode (timer/counter type 0)
TCC0_PER = 0xC34E; // TOP = 0xFFFF
TCC0_CCA = 0x61A7; // Non-buffering method
TCC0_INTCTRLA = TC_ERRINTLVL_OFF_gc |
TC_OVFINTLVL_OFF_gc; // Error Interrupt Disabled, Overflow Interrupt Disabled
TCC0_INTCTRLB = TC_CCDINTLVL_OFF_gc | // Compare or Capture D...A Interrupts Disabled
TC_CCCINTLVL_OFF_gc |
TC_CCBINTLVL_OFF_gc |
TC_CCAINTLVL_OFF_gc;