2502|1

95

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

msp430g2553多通道采集不对应 [复制链接]

#include"msp430g2553.h"
unsigned int a[32],b[8];
unsigned int i,j;
float v[8];
void main(void) {
                                 WDTCTL=WDTPW+WDTHOLD;
//        P1OUT=0;
        ADC10CTL0|=ADC10ON+ADC10IE+REFON+REF2_5V+SREF_1+MSC+ADC10SHT_2;//取内部参考电压2.5V,使采样时间为16xADC10CLK,
                                                                                                                                        //增大采样时间以保证采样的准确性;
        ADC10CTL1|=INCH_7+CONSEQ_3;//最大采样通道为P1^7,采用序列多次采样的模式,INCH_X决定了采样通道为AX~A0;
        ADC10DTC1|=0X20;//一共采样32次
        ADC10AE0|=0XFF;//使能通道A7~A0;
//        P1DIR=BIT0+BIT6;
        while(1)
        {
                ADC10CTL0&=~ENC;//关闭采样使能
                while(ADC10CTL1&ADC10BUSY);//判断是否有采样或转换动作
                ADC10CTL0|=ADC10SC+ENC;//开始采样
                ADC10SA=(unsigned int )a;//将组数a的首地址作为采样的起始地址,首先是对A7~A0依次采样放入数组a【0】~a[7]中,在循环对A7~A0依次采样,放入数组a【8】~a【15】
                                                                        //中,以此类推,向下循环直到32次结束
                __bis_SR_register(LPM0_bits+GIE);//关闭CPU,开启总中断
                for(i=0;i<8;i++)
                {
                        b=0;
                        for(j=0;j<4;j++)
                        {
                                b+=a[i+j*8];
                        }
                }
                for(i=0;i<8;i++)
                {
                        b=b/4;//取4次采样的平均
                        v=b*25;
                        v=(v/1023)/10;//转化为电压值
                }
//                if(v[6]>1)a
//                P1OUT^=BIT6;
//                else
//                P1OUT^=BIT0;
        }
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR(void)
{
        LPM0_EXIT;//退出CPU中断
}

我的理解程序是这样对应的。
但是实测发现是这样对应的。

求指点一下  是不是程序问题?

 
点赞 关注

回复
举报

95

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表