历史上的今天
今天是:2024年10月15日(星期二)
2019年10月15日 | MSP430 中ADC12用法
2019-10-15 来源:eefocus
1.1. 介绍

Figure 4 AD模块图
在处AD时,我们关注的对象有如下几个,参考源、通道、存储地址、时钟、触发方式、精度,速度(200k)。
在上图中我们都可以找到,msp430f149的参考正电源有VRFE+ VeREF+ ,Vcc,同时有对应的负电源。采样通道有16个,存储地址则有对应16个通道,时钟则是有内部时钟及3种时钟源的分频,触发方式有4种。
因此,对于这些特点我们可以实现4种模式,单通道单次采样,单通道多次采样,多通道单次采样,多通道多次采样。
1.2. 相关寄存器
ADC12CTL0:前面8位是对采样保持时间的设置。后8位分别对应8种设置
ADC12CTL1:前4位进行通道选择,后12位中有其它设置
ADC12MEMX:存储地址
ADC12MCTLX:通道,是否结速,在ENC=0时才可写
1.3. 样例代码
单通道单次采样:
P6SEL |= 0x01; // 使能A/D 通道A0
ADC12CTL0 = ADC12ON+SHT0_2; // 打开 ADC12, 设置采样时钟
ADC12CTL1 = SHP; // 使用采样时钟
//ADC12MCTL0 = SREF_2; // Vr+ = VeREF+ (外部)
ADC12CTL0 |= ENC+ADC12SC; // 使能转换
While(1)
{
ADC12CTL0 |= ADC12SC; // 开始转换
while ((ADC12IFG & ADC12BUSY)==0);
value=ADC12MEM0;
}
单通道多次采样:
P6SEL |= 0x01; // 使能A/D 通道A0
ADC12CTL0 = ADC12ON+SHT0_2; // 打开 ADC12, 设置采样时钟
ADC12CTL1 = SHP+CONSEQ_2; // 使用采样时钟
//ADC12MCTL0 = SREF_2; // Vr+ = VeREF+ (外部)
ADC12CTL0 |= ENC+ADC12SC+MSC; // 使能转换
While(1)
{
while ((ADC12IFG & ADC12BUSY)==0);
value=ADC12MEM0;
}
多通道单次采样
P6SEL |= 0xff; // 使能A/D 通道A0
ADC12CTL0 = ADC12ON+SHT0_2; // 打开 ADC12, 设置采样时钟
ADC12CTL1 = SHP+CONSEQ_1; // 使用采样时钟
//ADC12MCTL0 = SREF_2; // Vr+ = VeREF+ (外部)
ADC12MCTL4|=INCH_5;
ADC12MCTL6|=EOS+INCH_4;
ADC12CTL0 |= ENC+ADC12SC+MSC; // 使能转换
While(1)
{
ADC12CTL0 |= ADC12SC; // 开始转换
while ((ADC12IFG & ADC12BUSY)==0);
value=ADC12MEM0;
// value=ADC12MEM1;
}
多通道多次转换
P6SEL |= 0xff; // 使能A/D 通道A0
ADC12CTL0 = ADC12ON+SHT0_2; // 打开 ADC12, 设置采样时钟
ADC12CTL1 = SHP+CONSEQ_3; // 使用采样时钟
//ADC12MCTL0 = SREF_2; // Vr+ = VeREF+ (外部)
ADC12MCTL4|=INCH_5;
ADC12MCTL6|=EOS+INCH_4;
ADC12CTL0 |= ENC+ADC12SC+MSC; // 使能转换
ADC12CTL0 |= ADC12SC; // 开始转换
while(1)
{
while ((ADC12IFG & ADC12BUSY)==0);
value=ADC12MEM0;
Delay_nop(1000);
}
史海拾趣
|
驱动使用DDK写的,不是DS+DDK,以前用DS+DDK的时候是应用把一个Event的HANDLE传进去,然后驱动里面用传进来的HANDLE生成一个KEVENT,应用那里启动一个线程,线程里面等待那个Event就行了,这样当发生中断时驱动的DPC就把KEVENT设置,应用的那个线程就 ...… 查看全部问答> |
|
初学DSP,用了一片TMS320VC5409和10M无源晶振,板子做起来以后不能用,测量时钟信号发现X1管脚的信号是一个比较畸形的正弦波,X2管脚的波形是一个规则的正弦波;但是时钟输出CLKOUT的波形则是在高低电平两个位置剧烈震荡。由于对晶振和时钟信号不熟 ...… 查看全部问答> |
|
430单片机12位AD一路采集温度一路采集电压程序该如何配置和处理 我用的是MSP430F149单片机想用12位的AD来采两个外部传感器的电压但是。其中用到P6.0和P6.1,我还未链接外部传感器P6.0和P6.1就已经有电压;而且两个显示的都不一样分别为1.86 1.97,用万用表去测量时P6.0和P6.1分别是3.35& ...… 查看全部问答> |
|
2012TI杯山东省大学生电子设计竞赛 基本仪器和主要元器件清单 1、基本仪器清单 数字电桥 直流稳压电源 量角器 米尺 四位半数字万用表 0~200℃温度 ...… 查看全部问答> |
|
元芳:大人,听说玉渊潭的樱花开的正好,不知大人要不要带我等同去观玩一番?狄:元芳,还是先把前日问题说完。樱花明年还会带开,先练就一身本领,明年樱花更艳……元芳:大人……狄:照数据手册推荐,高于500Hz使用III型反馈网络,即反馈电阻高端 ...… 查看全部问答> |




