Здравствуйте! Не могу получить PWM на выводах PWM1 и PWM2 микроконтроллера TMS320LF2403A.
Как я понял, не считает таймер 1 (T1CNT не меняет значение)
Вот практически вся программа:
CODE
void main()
{
volatile int i,j;
MCRA->MCRA6 = 1; // MUX to PWM1
MCRA->MCRA7 = 1; // MUX to PWM2
#if 0
PADATDIR->A6DIR = 1;/* set PWM1/IOPA6 pin as out*/
PADATDIR->A7DIR = 1;/* set PWM2/IOPA7 pin as out*/
#endif
T1PR = 128; /* set up timer 1 period*/
ACTRA->CMP1ACT0 = 1;/* active low*/
ACTRA->CMP1ACT1 = 0;
ACTRA->CMP2ACT0 = 0;/* active hight */
ACTRA->CMP2ACT1 = 1;
CMPR1= 20;
COMCONA->CENABLE = 1;
COMCONA->FCOMPOE = 1;
GPTCONA->TCOMPOE = 1;
T1CON->Soft = 1;
T1CON->Free = 1;
T1CON->TMODE0 = 1; /* continous up/down mode */
T1CON->TMODE1 = 0; /* continous up/down mode */
T1CON->TECMPR = 1; /* Timer compare enable */
T1CON->TENABLE = 1; /* enable timer operations */
PADATDIR->IOPA7 = 0;
for (i = 0; ; i+=0x10)
{
WDKEY = 0x55;
WDKEY = 0xAA;
WDKEY = 0x55;
}
}
Спасибо за внимание!
Сообщение отредактировал Misile_Inc - Sep 4 2012, 10:33