MSP430定时器概要1.ppt
文本预览下载声明
定时器:Up Mode 使用TACCR0 和 TACCR1 输出举例1 当初始输出=0时,mode2和mode3的效果相同 OUT1 改变 TACCR1,可改变输出正脉冲的宽度,但周期不变,从而改变了占空比,实现了 PWM 输出; 改变TACCR0,并使TACCR1=TACCR0/2,则可以得到占空比=50%的调频信号输出。 OUT1 定时器:Continuous Mode 使用TACCR0 和 TACCR1 输出举例2 当初始输出=0时,mode2和mode3的效果相同 OUT1 定时器:Up/Down Mode 使用TACCR0 和 TACCR1 输出举例3 OUT2 定时器:Up/Down Mode OUT1 使用 TACCR0 和 TACCR1 OUT2 使用 TACCR0 和 TACCR2 输出举例4 OUT1 OUT2 Tdead = Ttimer×( TACCR1-TACCR2 ) Ttimer: Cycle time of the timer clock Tdead Timer_A 中断 与 Timer_A 模块有关中断有两大类: ① TACCR0 中断: TACCR0 CCIFG,独享中断向量,在 0FFECh 中 ② TAIV 中断: TACCR1 CCIFG TACCR2 CCIFG 共享中断向量,在 0FFEAh 中 TAIFG TACCR0 Interrupt TACCR0 CCIFG 0FFECh 6 TAIV Interrupt TACCR1 CCIFG, TACCR2 CCIFG, TAIFG 0FFEAh 5 Timer Block 定时器模块 CCR0 捕捉/比较 模块0 CCR1 捕捉/比较 模块1 CCR2 捕捉/比较 模块2 TAIFG TACCR1 CCIFG TACCR2 CCIFG TACCR0 CCIFG 共享同一个 中断向量 独享一个 中断向量 TAIV 中断 TACCR0 中断 TACCR0 中断产生与控制电路 TACCR0 CCIFG GIE CAP=0 : Compare Mode 比较方式 CAP=1 : Capture Mode 捕捉方式 TACCTL0.4 TACCTL0.8 捕捉信号 比较信号 #include msp430x14x.h ;------------------------------------------------------------------------------ ORG 01100h ; Program Start ;------------------------------------------------------------------------------ RESET mov #0A00h,SP ; Initialize stackpointer …… mov #CCIE,TACCTL0 ; TACCR0 interrupt enabled …… Main bis #GIE,SR ; interrupts enabled …… ;------------------------------------------------------------------------------ TACCR0_ISR …… reti ;------------------------------------------------------------------------------ ; Interrupt Vectors ;------------------------------------------------------------------------------ ORG 0FFFEh ; MSP430 RESET Vector DW RESET ; ORG 0FFECh ; TACCR0 interrupt Vector DW TACCR0_ISR END TACCR0 中断子程结构 TAIV中断( 3 种中断,共享同一个中断向量
显示全部