微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 电设工作小结之——MSP430G2553学习笔记——1

电设工作小结之——MSP430G2553学习笔记——1

时间:11-28 来源:互联网 点击:

_BIS_SR(LPM0_bits+GIE);//EnterLPM0w/interruptGIE允许中断

}

//Timer_A3InterruptVector(TA0IV)handler

#pragmavector=TIMER0_A1_VECTOR

__interruptvoidTimer_A(void)

{

switch(TA0IV)//TAIV中断向量寄存器用于

{

case2:break;//CCR1notused捕获/比较器1

case4:break;//CCR2notused捕获/比较器2

case10:P1OUT^=0x01;//overflow定时器溢出

break;

}

}

7,注意:定时器Timer0_A的时钟可以选择为外接时钟输入TACLK(P10),这样当外接一个信号时,定时器Timer0_A就相当于一个计数器使用。这样就可以用Timer0_A接外接信号,Timer1_A接标准的时钟如32768Hz的晶振,就可以实现等精度测频了。其实Timer1_A的时钟也可以外接的,但是在g2553中没有这个外接管脚(P37),所以就只能选择正常的时钟了。

Timer0_A的外接时钟输入TACLK(P10)的设置如下:下面是我实现等精度测频时,两个定时器的初始化程序:

voidtimer0_init()

{

TACTL|=TASSEL_0+MC_2+TACLR;//选择TACLK时钟作为计数时钟源,不分频必须连续计数模式

P1SEL|=BIT0;//P10为Timer0_A的时钟TACLK输入,接外部待测信号,这样Timer0_A就当作计数器用

}

//Timer1_A采用ACLK作为时钟源计数,这样ACLK就相当于是标准信号,这样两个定时器相当于都工作在计数器方式,

//ACLK32768Hz作为标准信号,这样可以实现等精度测频

voidtimer1_init()

{

TA1CCTL0=CCIE;

TA1CCR0=32768;//1s定时

TA1CTL|=TASSEL_1+MC_2+TACLR;//选择ACLK时钟作为计数时钟源,不分频必须连续计数模式

}

8,用定时器和比较器可以实现DAC

使用定时器也可以实现串口通信

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top