为什么我用msp430f149的内置ad采样只能有11位的精度 5

AD代码如下P6SEL|=0x01;//EnableA/DchannelA0ADC12CTL0=ADC12ON+SHT0_12+MSH;//TurnonADC12,set... AD代码如下
P6SEL |= 0x01; // Enable A/D channel A0
ADC12CTL0 = ADC12ON + SHT0_12+MSH; // Turn on ADC12, set sampling time
ADC12CTL1 = SHP+CONSEQ_2; // Use sampling timer, set mode

ADC12IE = 0x01; // Enable ADC12IFG.0
ADC12CTL0 |= ENC; // Enable conversions
ADC12CTL0 |= ADC12SC; // Start conversion
_EINT();
只能采样到2047 12位精度不是能到4095吗
已解决,虽然还不知道具体原因。代码没问题但是应该是受其他模块的影响到了。
展开
 我来答
liangsai
2013-09-02 · TA获得超过835个赞
知道小有建树答主
回答量:1508
采纳率:0%
帮助的人:639万
展开全部
是的呀4095你的电压不足吗?
看看下面的程序
void AD_INIT(void)
{
ADC12CTL0 = ADC12ON+SHT0_12+MSC; // 打开ADC,设置采样时间
ADC12CTL1 = CSTARTADD_3+SHP+CONSEQ_2; // 选择存储器地址,使用采样定时器
ADC12MCTL3 = INCH_1; // 选择采样通道a1
P6SEL |= BIT1; //使能ADC通道
// ADC12IE = 0x01; // Enable ADC12IFG.0

}
double POWER1;
ADC12CTL0 |= ENC; //
ADC12CTL0 |= ADC12SC; // 开始转换
while ((ADC12IFG & BIT3)==0) ;
POWER1 =ADC12MEM3;
ADC12CTL0 &= ~ENC; // 关闭
这是查询法你可以改成中断的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
赛麦吉
2023-06-03 广告
这是一张SineImage制作的分辨率测试卡配合软件可以自动计算几个关键图像质量因素包括锐度、横向色差、阶调反应、色彩反应及噪点。摄像头分辨率测试卡一种是ISO12233:2000分辨率测试卡,一种是ISO12233:2014 eSFR分辨... 点击进入详情页
本回答由赛麦吉提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式