您的位置 首页 新品

msp430AD收集数据记载及剖析

1、利用先锋脉冲数据采集模拟程序对实现板进行测试,其中测试管脚的信号为:周期为2.4S高电平时间为0.3s设置AD时:P6SEL

1、使用前锋脉冲数据收集模拟程序对完结板进行测验,

其间测验管脚的信号为:周期为2.4S 高电平时刻为0.3s
设置AD时:P6SEL |= 0x08;
ADC12CTL0 = ADC12ON+MSC+REFON+REF2_5V + SHT0_8;
ADC12CTL1 = SHP + CONSEQ_2 + ADC12SSEL_3 +ADC12DIV_7;
ADC12MCTL0 = SREF_1 + INCH_3;
ADC12IE = 0X01;
ADC12CTL0 |= ENC;
ADC12CTL0 |= ADC12SC;
即选用第3通道,选用SMCLK(DCO) 并对其进行8分频,SHT0_8(256)选用内部参阅电压2.5v

测验1,依据DCO进行的测验

通过实践测验:
周期:869 高电平:108 占空比:108/869 = 0.124
周期:870 高电平:109 占空比:109/870 = 0.125
规范:300/2400 = 0.125

理论剖析:初始DCO为800K,8分频为:100K,周期为:10us
而转化一个数需求的周期数据为256+13+3=272个ADC12CLK ,
SO 转化一个数的时刻为2.72ms
综上,2.4s内能完结2400/2.72=882.35个数的转化,与实测的870根本符合。

若不考虑Tsync:则转化一个数需求的周期数据为256+13=269个ADC12CLK ,
SO 转化一个数的时刻为2690ms
然后2.4S内能完结2400/2.69 = 892 (与实测的相差大)

测验2,依据外部8MHz晶体进行的测验

设置AD时:
BCSCTL1 &= ~XT2OFF; // 翻开XT2高频晶体振荡器

do
{
IFG1 &= ~OFIFG; //铲除晶振失利标志
for (i = 0xFF; i > 0; i–); // 等候8MHz晶体起振
}
while ((IFG1 & OFIFG)); // 晶振失效标志依然存在?

BCSCTL2 = SELM_2+DIVM_3; //select XT2,并对其进行8分频,然后供应MCLK;
ADC12CTL0 = ADC12ON+MSC+REFON+REF2_5V + SHT0_8; // Turn on ADC12, extend sampling timeSHT0_8

ADC12CTL1 = SHP + CONSEQ_2 + ADC12SSEL_2 +ADC12DIV_7;// Use sampling timer, repeated sequence,并对ADC时钟进行8分频

ADC12MCTL0 = SREF_1 + INCH_3;
ADC12IE = 0X01;
ADC12CTL0 |= ENC; // Enable conversions
ADC12CTL0 |= ADC12SC; // Start conversion

理论剖析:
初始XT2为8MHz 8分频为1MHz ,再对其进行8分频为125KHz 所以ADC12CLK的周期为8us
so 转化一个数的时刻为:(256+3+13)* 8 = 2.176ms
SO 2.4S的周期能转化2400/2.176=1102.9 也即1102个数

若不考虑Tsync 则转化一个数的时刻为:(256+13)* 8 = 2.152ms
SO 2.4S的周期能转化2400/2.152=1115.2 也即1115个,与实践测验仅差一个数。

实践测验:
周期:1114 高电平:139 占空比:139/1114 = 0.12477
规范:300/2400 = 0.125

2、把周期为2.4ms 高电平为300ms的脉冲信号加到另一块板子上

另一块板子选用DCO800k ,其他设置参数同上 其测验成果是:
周期:801 高电平:100 占空比:100/801 =0.1248
周期:799 高电平:99 占空比:99/799 = 0.1239
规范:300/2400 = 0.125

另一块板子选用XT2=6MHz时的测验成果:
周期:836 高电平: 104 占空比:104/836 = 0.1244
周期:836 高电平: 104 占空比:104/836 = 0.1244 能够看出(使用外部晶体重复性好)
规范:300/2400 = 0.125

理论剖析:
初始XT2为6MHz 8分频为750KHz ,再对其进行8分频为93.75KHz 所以ADC12CLK的周期为10.7us
so 转化一个数的时刻为:(256+3+13)* 10.7 = 2.91ms
SO 2.4S的周期能转化2400/2.91=824.7 也即824个数 {与实践测验的836根本相符}

若不考虑Tsync 则 2.4S的周期能转化2400/(269*10.67)=836.2 也即836 与实践测验彻底相符

总结:就以上测验剖析,可知,根本到达要求,但对DCO来说,稍有偏移,
依据DATASHEET:采样的总时刻为Tsample +Tsync 但假如,不考虑Tsync,则对上面的选用外部晶体收集数据时
理论与实践彻底相符。
但对DCO就不同,而且DCO,对不同的板子,尽管占空比相同,但收集数据个数也有很大的不同。这可能与DCO自身,所以为了把2.4S内的数据都收集到,应该取较大的采样数据。
随温度及环境而改变有关。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/273234.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部