7694|6

10

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

msp430g2553中ADC10 DTC怎么搞啊 [复制链接]

#include "msp430g2553.h"
int data1[32]={0};
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; //关看门狗
BCSCTL1 = CALBC1_1MHZ; //设定DCO为1MHZ
DCOCTL = CALBC1_1MHZ;
P1DIR=0XFF;
P1OUT=0X00;
P1SEL |= BIT2;//1.2为模拟输入
ADC10CTL1|=INCH_2+SHS_0+ADC10DIV_7+ADC10SSEL_2+CONSEQ_2;
//10通道,ADC10SC触发,8分频,时钟为MCLK,单通道多次
ADC10CTL0|=SREF_1+ADC10SHT_3+MSC+REF2_5V+REFON+ADC10IE+ADC10ON;
//内部参考源,采样保持时间64个ADC10CLKs,置MSC位,开内部参考源,2.5V,中断允许,启动ad10;
ADC10DTC1=0X20;//20次采样
ADC10SA=*data1;//DTC首地址
ADC10CTL0|=ENC+ADC10SC;//使能ad,触发采样
_EINT();
while(1); 
}
#pragma vector=ADC10_VECTOR 
__interrupt void ADC10_ISR(void)
{
ADC10CTL0&=~ENC;
P1OUT=0XFF;
}
求解啊 为什么我这么设置不可以进入中断啊  怎样设置才能进行单通道多次转换啊 ,还有DTC到底怎么用啊

最新回复

看430你们有什么笔记吗?我最近遇到好多问题啊   详情 回复 发表于 2014-7-29 11:18

点评

楼主 关于dtc1=0x20应该是转换32次 另外你的中断怎么写到主函数里面还是个循环? ADC10AE0|=0X04;//开启通道2 (使能) 最后 楼主在中断里面把转换强制关了 当然只能进一次中断 ADC10CTL0&=~ENC; 就是这句 再  详情 回复 发表于 2012-8-3 11:19
 
点赞 关注

回复
举报

7

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
我刚帮调试了下:
你的ADC10SA赋值错误,你给他赋的是0,应该是ADC10SA = (int)(data1);
不过 你的这个调试的时候 程序 只能进入一次中断,我也不知道 是怎么回事


至于DTC 你只要把ADC10DTC1给个值
ADC10SA给个地址 ,再使能ADC10CT位使他连续可用就OK了


还有个问题是你没有使用ADCAE0使能通道P1.2,而且你可以 不用设置P1SEL

点评

谢谢 我想我知道原因了 你说的那个只能进一次中断,我想是因为这个程序的中断函数里面的那个NEC被关闭了 后面又没开启 所以没法启动ADC10 吧 这人老是粗心大意的:titter:  详情 回复 发表于 2012-8-4 12:48
 
 

回复

19

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

回复 楼主 wmbp520 的帖子

楼主 关于dtc1=0x20应该是转换32次
另外你的中断怎么写到主函数里面还是个循环?
ADC10AE0|=0X04;//开启通道2 (使能)
最后 楼主在中断里面把转换强制关了 当然只能进一次中断 ADC10CTL0&=~ENC; 就是这句
再按照楼上的把赋首地址的改为ADC10SA = (int)(data1);
应该就可以了 嘎嘎

点评

:titter: 谢谢啦  详情 回复 发表于 2012-8-4 12:49
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

4
 

回复 沙发 ls2029842 的帖子

谢谢 我想我知道原因了 你说的那个只能进一次中断,我想是因为这个程序的中断函数里面的那个NEC被关闭了 后面又没开启 所以没法启动ADC10 吧  这人老是粗心大意的
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

5
 

回复 板凳 zhanghua1209 的帖子

谢谢啦
 
 
 

回复

846

帖子

0

TA的资源

纯净的硅(中级)

6
 
学习了
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

7
 
看430你们有什么笔记吗?我最近遇到好多问题啊
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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