Msp430f5529开发板测周期和AD.docx

上传人:b****5 文档编号:30720028 上传时间:2023-08-19 格式:DOCX 页数:10 大小:484.61KB
下载 相关 举报
Msp430f5529开发板测周期和AD.docx_第1页
第1页 / 共10页
Msp430f5529开发板测周期和AD.docx_第2页
第2页 / 共10页
Msp430f5529开发板测周期和AD.docx_第3页
第3页 / 共10页
Msp430f5529开发板测周期和AD.docx_第4页
第4页 / 共10页
Msp430f5529开发板测周期和AD.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Msp430f5529开发板测周期和AD.docx

《Msp430f5529开发板测周期和AD.docx》由会员分享,可在线阅读,更多相关《Msp430f5529开发板测周期和AD.docx(10页珍藏版)》请在冰豆网上搜索。

Msp430f5529开发板测周期和AD.docx

Msp430f5529开发板测周期和AD

Msp430f5529开发板测频率和ADC采样电压

必备资料:

f5529的中文指导和数据手册(遗憾是汇编语言不是C)

中文指导:

网上有大侠把英文版的用户指导翻译成中文了

数据手册:

还没有出现中文版这种神器,不过多看几遍就OK

一.定时器A一些基本资料

至于寄存器里面含义自己应该可以看懂!

这句话我认为有一个极容易产生一个误区,就是TA有7个比较捕获寄存器,

当你查看msp430f5529.h的时候,我就发现只有

TAxCCTL0,TAxCCR0

TAxCCTL1,TAxCCR1

TAxCCTL2,TAxCCR2

它们都是共用一个TACTL。

压根就是没有3~6例如没有TAxCCTL3,TAxCCR3,我认为单片机上肯定是有7个比较捕获寄存器,就是msp430f5529没有对剩余的四个进行宏定义。

个人想法。

 

TAxCCTL0,TAxCCR0

这个最高级,好像大部分的430单片机写的程序都是优先写它。

特点:

增计数模式

连续计数模式

增减计数模式

这几种模式都能用

例如增计数模式:

TA0CCTL0=CCIE;//CCR0interruptenabled

TA0CCR0=50000;

TA0CTL=TASSEL_2+MC_1+TACLR;//SMCLK,upmode,clearTAR

__bis_SR_register(GIE);//EnterLPM0,enableinterrupts

就凭它的权力最多,就应该单独想用一个中断函数与CCTL1,CCTL2区分开来!

//Timer0A0interruptserviceroutine

#pragmavector=TIMER0_A0_VECTOR

__interruptvoidTIMER0_A0_ISR(void)

{

}

其中的R0代表你用的TA定时器的第几个

TA0-----R0

TA1-----R1

TA2-----R2

CCTL0---A0一个中断对应一个中断源

例如我写的是TA2CCTL0和TA2CCR0,则对应的中断就是

#pragmavector=TIMER2_A0_VECTOR

应该明白了吧!

 

TAxCCTL1,TAxCCR1

TAxCCTL2,TAxCCR2

特点:

连续计数模式

经我调试

TA0CCTL1=CCIE;//CCR0interruptenabled

TA0CCR1=50000;

TA0CTL=TASSEL_2+MC_1+TACLR;//SMCLK,upmode,clearTAR

是进不了中断的,这是血的教训,(如果你采用的是比较模式,千万别想着,TMD理论上就是这样,为什么进不了中断)

应该把MC_1改为MC_2就OK了.

官方这样说

这样可以从侧面提问,上文中为什么不是TAxCCRx,而只是TAxCCR0!

应该明白了,

这里有一点千万要区分开来,这是晕死的教训!

TA0R,与TA0CCR1的区别,我也不知道是看了那本破书,或者就是那些5系列一下的430单片机程序可以,我只能感叹F5529真是神器!

在中断函数里把cap=TA0CCR1,或者是TA1CCR1,还说TA0R,TA0CCRx其实是一样的,就是计数的储存。

可能在一些5系列一下的430单片机是可以,但是在f5529严格区分开来,养成好习惯,TA0R不等于TA0CCRx

TA0CCR0是定数的,是不变的

TA0R是用来计数的。

是变化的

比较模式就是那TA0R去不断比较TA0CCR0,以万变应不变,超过就产生中断!

所以你在中断读取你计数的值

这样写是菜鸟

cap=TA0CCR1是XXXXXXX

应该写成

cap=TA0R,必须养成这个好习惯!

它们的中断函数是多源中断,说白了就是三个有用的

case2:

CCTL1

case4:

CCTL2

case14:

连续计数溢出中断

可以对比一下下面这个图:

中断函数

#pragmavector=TIMER1_A1_VECTOR

__interruptvoidTIMER1_A1_ISR(void)

这里就是TA1CCLxx是取值为1,2的

例子:

//Timer1_A3InterruptVector(TAIV)handler

#pragmavector=TIMER1_A1_VECTOR

__interruptvoidTIMER1_A1_ISR(void)

{

switch(__even_in_range(TA1IV,14))

{

case0:

break;//Nointerrupt

case2:

break;//CCR1

case4:

break;//CCR2

case6:

break;//reserved

case10:

break;//reserved

case12:

break;//reserved

case14:

break;//overflow

default:

break;

}

}

这里对应的寄存器应该是TA1CCL1或者是TA1CCL2!

 

2.ADC12(12为模数转换器)

ADC内核将一个模拟输入信号转换为12位的数字信号,并将其结果存储在转换存储器中。

该内核采用两个可编程/选择的电压(VR+和VR-)作为转换的上限和下限。

当输入信号大于或等于VR+时,数字输出(NADC)为最大值(0FFFh),而当输入信号小于者等于VR-时,输出为0。

在转换控制存储器中定义输入通

道和参考电压(VR+和VR-)。

ADC转换结果Nadc的计算公式为:

Nadc=4095×(Vin-VR-)⁄(VR+-VR-)

ADC12_A内核可通过两个寄存器ADC12CTL0和ADC12CTL1来进行配置,通过ADC12ON位使能内核。

理解一句话:

ADC12硬件会把转换的结果自动存放到ADC12MEM存储器中,每个ADC12MEMx都有自己对应的ADC12MCTLx.

voidadc1()

{

P6SEL|=BIT6;

ADC12CTL0=ADC12ON+ADC12SHT0_8+ADC12MSC;

ADC12CTL1=ADC12SHP+ADC12CONSEQ_2;

ADC12MCTL0=ADC12SREF_0+ADC12INCH_6;

ADC12CTL0|=ADC12ENC;

}

中断函数里

#pragmavector=ADC12_VECTOR

__interruptvoidADC12ISR(void)

{

转换的数据在ADC12MEM0;//这点要想通

}

 

ADC12中断

ADC12有18个中断源:

ADC12IFG0-ADC12IFG15

ADC12OV,ADC12MEMx溢出

ADC12TOV,ADC12_A转换时间溢出

当ADC12MEMx存储寄存器载入转换结果的时候,相应的ADC12IFGx位置位。

如果相应的ADC12IEx位和GIE位置位,将产生中断请求。

 

温馨提示:

如果你是在msp430f5529现有的工程修改你想要的程序,那你要注意了,系统工程本身就用了AD采样了,齿轮采样已经用了AD的中断,有两种方法你可以选择,在它的Wheel.c里修改,或者你自己新建个工程,不用齿轮!

 

在看程序之前,请注意:

1.我们要把一个信号,脉冲信号引用单片机,肯定要选用一个端口,网上的程序程序的端口F5529是不能用的,因开发板上的没有排针引出,为此我痛苦了好久,不过没事,用现有排针的端口P2.1,P2.0.

翻看数据手册:

找到

寄存器怎么对应呢!

TA1CCTL1-------------TA1.1

TA1CCTL2-------------TA1.2

例如

TA0CCTL2-------------TA0.2,

知道了吧,接下来就是设置这个端口为第二功能,外围模块!

编好程序怎么知道你程序能不能采到数据,小技巧就是你在P2.0引出一根杜邦线,在VCC和GND之间切换,有数据就OK,接下来就调试数据!

2.采样的端口你也要根据你排针上你有什么来选择

这里我选择的是P6.6的第二功能

编好程序怎么知道你程序能不能采到数据,小技巧就是你在P6.6引出一根杜邦线,接VCC或者GND,有数据就OK,接下来就调试数据!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

为了程序的完整性,请进入这个网站下载!

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1