Здравствуйте
Помогите разобраться с таймерами. Контроллер 430G2353.
что должна делать программа - подсчитывать число импульсов поступивших на таймер за период, задаваемый watchdog oм.
если стоит TA0 - все работает как надо
если в этом же коде поменять ТА0 на ТА1 то 1.IAR выдает ошибку (см выделение в тексте) 2.если закоментировать эту строку (где выдается ошибка, то все-равно импульсы не копяться)
Я считал что ТА0 и ТА1 идентичны. где я ошибаюсь?
CODE
bis #TACLR,&TA0CTL
mov #0x0320,&TA0CTL ;TASSEL_3+MC_2;// TACLK, cont mode ;for TACLK + cont.mode need 0x0026 ;0x0320
mov #0xe100,&TA0CCTL2 ; 0e100
;-------------------
mov #0x5a1e,&WDTCTL;wdthold=0,wdtnmies=0,wdtnmi=0,wdttmsel=1(interval mode),wdtcntcl=1(wdtcnt=0000h),wdtssel=1=aclk, wdtisxx=01=/8192
bis #TACLR,&TA0CTL
wait_capt6:
bit #CCIFG,&TA0CCTL2
jz wait_capt6
mov TA0R,r8 тут IAR выдает ошибку
mov &TA0CCR2,r9
......
;-------------
;WDT Interrupt
;-------------
WDT_INT:
xor #CCIS0,&TA0CCTL2
mov #WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog timer
reti;