打印

关于MSP430I2041的SD24的问题,低12位一直在变~~

[复制链接]
3041|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
e路向前走|  楼主 | 2015-11-2 17:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
调试背景:
1、硬件,MSP430I2041,A1+/A1-,A2+/A2-.
                A1+接10-1150mV的待测信号;A1-接地。
                A2+/A2- 都接地(观察AD采集的稳定性)。
                MSP-FET430UIF进行仿真并提供电源。
2、软件,TI官方例程,MSP430i20xx_Code_Examples\C\msp430i20xx_sd24_05\msp430i20xx_sd24_05.c(MSP430i20xx Demo - SD24, Single Conversion on a Single Channel, Use ISR)。
              中断部分代码为:
               case SD24IV_SD24MEM1:
                    // Get high word result
                    SD24CCTL1  &= ~SD24LSBACC;
                    highResult = SD24MEM1;

                    // Get low word result
                    SD24CCTL1  |= SD24LSBACC;
                    lowResult = SD24MEM1;
                    SD24CCTL1  &= ~SD24LSBACC;

                    results = (highResult << 8) | lowResult; // Save CH1 results (clears IFG)
                    break;

调试结果:
               得到采集数据如:0xFF424E...
问题总结:
         且不论数据的准确性。我在一个点上采多次,每次都不一样,24位数据只有高12位是稳定不变的,低12位每次采集数据都不一样。
尝试解决:
         1、内部基准不准,借助5522A提供精确基准电压1.2V。测量CH2接地通道,得到的测试结果没有明显改善;
         2、采集信号有波动,使用内部基准,由5522A提供CH1采集信号,结果类似;
         3、GND上有干扰,由于需仿真观察结果,现没有测试。
=========================================================================================
以上为我现在遇到的麻烦,头一次接触SD24,测试过程中有什么问题还希望大家能给出些指点,完全没有头绪了:Q

相关帖子

沙发
e路向前走|  楼主 | 2015-11-2 17:18 | 只看该作者
预留一楼,等头脑清醒点后再补充。。

使用特权

评论回复
板凳
dirtwillfly| | 2015-11-2 20:25 | 只看该作者
完全用的官方的例程吗?ad24的时钟是怎么配置的?
你的电源纹波测试过没有?

使用特权

评论回复
地板
dirtwillfly| | 2015-11-2 20:28 | 只看该作者
最好价格运放跟随

使用特权

评论回复
5
dirtwillfly| | 2015-11-2 20:28 | 只看该作者

使用特权

评论回复
6
xyz549040622| | 2015-11-3 07:58 | 只看该作者
24位数据只有高12位是稳定不变的,低12位每次采集数据都不一样。你这干扰真大,估计是你电源纹波太大吧。

使用特权

评论回复
7
e路向前走|  楼主 | 2015-11-3 09:24 | 只看该作者
本帖最后由 e路向前走 于 2015-11-3 09:39 编辑
dirtwillfly 发表于 2015-11-2 20:25
完全用的官方的例程吗?ad24的时钟是怎么配置的?
你的电源纹波测试过没有? ...

时钟没有特别配置啊,下面是主函数,
    WDTCTL = WDTPW | WDTHOLD;                   // Stop WDT

    //SD24CTL = SD24REFS;                         // Internal ref
    SD24CCTL1  |= SD24SNGL | SD24DF | SD24IE;   // Enable interrupt

    __delay_cycles(3200);                       // Delay ~200us for 1.2V ref to settle

    while(1) {
        __no_operation();                       // SET BREAKPOINT HERE
        SD24CCTL1 |= SD24SC;                    // Set bit to start conversion
        __bis_SR_register(LPM0_bits | GIE);     // Enter LPM0 w/ interrupts
        __no_operation();                       // For debugger
    }
你给我找的那个帖子我也看过,就是不太懂运放跟随这块,我现在学一下加上。
电源的纹波在16mV左右

使用特权

评论回复
8
e路向前走|  楼主 | 2015-11-3 09:25 | 只看该作者
本帖最后由 e路向前走 于 2015-11-3 09:39 编辑
xyz549040622 发表于 2015-11-3 07:58
24位数据只有高12位是稳定不变的,低12位每次采集数据都不一样。你这干扰真大,估计是你电源纹波太大吧。 ...

不排除这个可能,我用示波器看到的纹波在16mV

使用特权

评论回复
9
ayl439| | 2015-11-3 09:49 | 只看该作者
请教楼主:你这个片子是哪里拿到的?我多方了解,这个片子在国内根本买不到啊,连样片都申请不到

使用特权

评论回复
10
xyz549040622| | 2015-11-3 10:22 | 只看该作者
e路向前走 发表于 2015-11-3 09:24
时钟没有特别配置啊,下面是主函数,
    WDTCTL = WDTPW | WDTHOLD;                   // Stop WDT

阻抗不匹配也有可能了,最好是示波器加你的AD值对比,看看是哪部分的错误了

使用特权

评论回复
11
e路向前走|  楼主 | 2015-11-3 10:27 | 只看该作者
ayl439 发表于 2015-11-3 09:49
请教楼主:你这个片子是哪里拿到的?我多方了解,这个片子在国内根本买不到啊,连样片都申请不到 ...

这个我也说不好的,我们总公司有用过,我们就拿过来用了。我说呢,关于这个片子的帖子不是很多呢。

使用特权

评论回复
12
dirtwillfly| | 2015-11-3 13:21 | 只看该作者
ayl439 发表于 2015-11-3 09:49
请教楼主:你这个片子是哪里拿到的?我多方了解,这个片子在国内根本买不到啊,连样片都申请不到 ...

这个ic是去年年底刚出来的,ti还没有大量铺货

使用特权

评论回复
13
ayl439| | 2015-11-3 13:38 | 只看该作者
e路向前走 发表于 2015-11-3 10:27
这个我也说不好的,我们总公司有用过,我们就拿过来用了。我说呢,关于这个片子的帖子不是很多呢。 ...

应该也是不好搞到

使用特权

评论回复
14
ayl439| | 2015-11-3 13:38 | 只看该作者
dirtwillfly 发表于 2015-11-3 13:21
这个ic是去年年底刚出来的,ti还没有大量铺货

恩,应该是了

使用特权

评论回复
15
e路向前走|  楼主 | 2015-11-4 11:46 | 只看该作者
ayl439 发表于 2015-11-3 09:49
请教楼主:你这个片子是哪里拿到的?我多方了解,这个片子在国内根本买不到啊,连样片都申请不到 ...

w.w.w.mouser.cn/Search/Refine.aspx?Keyword=msp430i2041
你可以看看这个网站上,显示有货的。
我权限不够,不能发链接

使用特权

评论回复
16
ayl439| | 2015-11-4 15:59 | 只看该作者
e路向前走 发表于 2015-11-4 11:46
w.w.w.mouser.cn/Search/Refine.aspx?Keyword=msp430i2041
你可以看看这个网站上,显示有货的。
我权限不 ...

咦,两周前我看的时候,i2040和i2041还是限制供货(不能买),现在居然有货了,谢谢提醒!

使用特权

评论回复
17
tongbu2015| | 2015-11-7 17:14 | 只看该作者
需要大量的实验验证的。软硬件设计都很重要的。

使用特权

评论回复
18
android2| | 2015-11-9 20:18 | 只看该作者
SD24的输入阻抗200K左右。
楼主的采样设定,时钟等怎么设的

使用特权

评论回复
19
迪卡| | 2015-11-10 18:45 | 只看该作者
会不会是基准电源纹波大的原因

使用特权

评论回复
20
e路向前走|  楼主 | 2015-11-11 11:24 | 只看该作者
tongbu2015 发表于 2015-11-7 17:14
需要大量的实验验证的。软硬件设计都很重要的。

这是肯定的,准备重新做一板子,听取大家经验,加上运放。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

1

粉丝