MSP430F4152中文资料ADCWord格式文档下载.docx
- 文档编号:17079217
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:15
- 大小:27.28KB
MSP430F4152中文资料ADCWord格式文档下载.docx
《MSP430F4152中文资料ADCWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《MSP430F4152中文资料ADCWord格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
可以作为时钟源的有SMCLK,MCLK,ACLK和一个内部振荡器ADC10OSC。
ADC10OSC是由内部产生的,频率的变化范围可达5MHz,但是随个别设备,供电电压和温度不同而变化。
详细的信息可以参考ADC10OSC的数据表。
用户必须保证在信号转化期间ADC10CLK不能中断。
如果在转化时时钟停止,那么操作就会中止而且产生的结果也是无效的。
27.2.2ADC10输入和多路复用器
在该模块中,利用“模拟输入多路复用器”可以选择ADC10的8路外部和4路内部模拟信号中的一路作为模拟输入信号。
该输入多路复用器采用“先断后合”(BBM)方式,来减小输入端之间产生的干扰输入。
这种干扰往往是在转换通道时产生的,可以参看图27-2。
不仅如此,该输入多路复用器还作为T开关将通道之间的耦合降至最低。
当某一通道未被选定时,它与A/D是隔离的,而且中间的节点要连接模拟地(AVss),以此来将内部的分布电容接地,从而达到消除干扰的目的。
ADC10模块运用了指令重分配方式。
当输入通道在内部切换时,该动作会引起输入信号的电压瞬间变化。
这种分配方式会使这个瞬变的电压会在转化之前被消除并稳定下来,保证不会转化错误的信号。
模拟端口选择
ADC10模块的外部输入Ax,VeREF+和VeREF-与是数字CMOS门的通用I/O端口复合使用的。
当模拟信号加在了数字CMOS门时,寄生电流会直接从Vcc流到GND。
而且,当模拟电压的大小与数字通道的门限电压接近时,就会产生这种寄生电流。
只有禁止数字通道才能消除寄生电流进而降低系统的电流损耗。
针对于此,控制位ADC10AEx位可以用来将数字通道的输入输出缓冲器禁用。
;
P7.5onMSP430x41x2deviceconfiguredforanaloginput
BIS.B#01h,&
ADC10AE0;
P7.5ADC10functionandenable
27.2.3电压基准发生器
ADC10模块包含内部电压基准,有两个可供选择的电压等级。
REFON位置一则内部电压基准使能。
当REF2_5V位置一时内部电压基准为2.5V,当REF2_5V位清零时内部电压基准为1.5V。
内被参考电压可以用在内部,当REFOUT位清零时可以通过VREF+管脚用在外部。
这两个电压基准可以用作内部和外部电压源,对应的端口是VREF+。
外部基准电压可以分别通过A3和A4管脚由VR+和VR-提供。
当使用外部基准电压或者使用Vcc当做基准电压,内部基准应该关掉以省电。
外部正基准电压VeREF+可以通过SREF0和SREF1位置一来缓冲。
就是用一个大的内部电阻来消耗使用外部基准电压的缓冲电流。
当REFBURST位置一时,增加的电流被限制在采样和转换周期上。
ADC10基准电压源是不需要外部存储电容的。
内部基准电压的低功耗特性
ADC10模块内部基准电压发生器采用低功耗设计。
该基准电压发生器包括一个带状能隙(band-gap)电压源和一个独立的缓冲器。
两者的电流消耗分别在设备的数据表中可以找到。
当REFON=1时,两者都工作。
当REFON=0时,两者都停止工作。
设定控制位REFON置一的总时间不超过30us。
当REFON=1,如果此时没有信号转化,那么缓冲器将自动关闭。
一旦需要时就会自动开启。
缓冲器关闭时不消耗电流。
在这种情况下,带状能隙电压源始终保持开启状态。
当REFON=1,控制位REFBURST控制内部基准电压缓冲器的运行。
当REFBURST=0时,缓冲器将一直开启,同时将允许基准电压持续的向外输出。
当REFBURST=1时,在ADC10没有进行转化时,缓冲器自动关闭,一旦转化开始它有自动开启。
内部的缓冲器还可以针对不同的功率消耗来设定转化速度。
例如,当最大的转化速度小于50ksps时,将ADC10SR设为1时可以降低接近50%的电流消耗。
27.2.4自动掉电
ADC10模块是为低功耗应用而设计的。
当ADC10没有进行转化活动时,ADC10内核是自动关闭的,一旦需要工作时会自动回复。
同样,ADC10OSC也是自动调节的。
当内核和振荡器关闭时没有电流消耗。
27.2.5取样和转化定时
采样输入信号SHI的上升沿触发对模数转化的初始化。
SHI的来源是由控制位SHSx决定的,对于MSP430F41x2:
包括如下的信号源:
—控制位ADC12SC
—Timer_A0输出单元1
—Timer_A1输出单元0
—Timer_A1输出单元1
SHI信号的极性可以被lSSH位置反。
采样周期tsample通过设定SHTx位来选择为4/8/16/64倍的ADC10CLK周期。
在同步ADC10CLK之后采样定时器设置SANCON=1来选择采样周期。
当SAMPCON为1时,开始取样。
总的采样时间为t_sample+t_sync。
当SAMPCON由高相低发生跳变时,开始模数转化,转化需要11个ADC10CLK周期(如图27-4所示)。
取样定时器注意事项
当控制位SAMPCON=0时,所有的Ax输入端口为高阻抗。
当SAMPCON=1时,所选用的Ax输入端口在采样期间可以等效为一个RC低通滤波器,如图27-5所示。
从源端观测,存在一个内部复用器输入阻抗Rl(最大值为2千欧姆)和一个相应的电容Cl(最大值为27pF)。
为保证能够精确的进行10位转化,则必须使电容Cl上的电压Vc小于所测电压Vs的最低位(LSB)的1/2倍。
27.2.6转换模式
ADC10有四种运行模式可供选择,由控制位CONSEQx决定,其对应关系参考下表:
ADCCONSEQx
模式
操作
00
单通道信号转换
一个信号通道只转换一次
01
序列通道模式
一序列信号通道只转换一次
10
重复单通道模式
一个信号通道反复转换
11
重复序列通道模式
一个序列信号通道反复转换
单通道信号转化模式
一个通道只能采样和转化一次,通过INCHx位选择通道。
ADC的转化结果存储至ADC10MEM如图27-5所示,为单通道转化模式的流程图。
当ADC10SC启动了一次转化后,它会连续的启动下面的转化。
当其它的触发源发生时,ENC位在转化时必须跳变。
一个序列的通道转化和采样各一次。
序列开始的通道通过INCHx位选择,一直到通道A0。
每一个ADC转化的结果存储到了ADC10MEM寄存器中。
当通道A0转换完后序列停止。
图27-6显示了序列通道模式的流程。
当ADC10SC启动了一个序列后,它会启动相继的序列。
当其它的触发源发生时,ENC位在序列期间必须跳变。
一个通道可以连续的采样和转化,通过INCHx位选择通道。
每一个ADC转化结果存储在ADC10MEM寄存器中。
图27-7显示了重复单通道模式的流程。
一个序列的通道持续的采样和转化。
当通道A0转换完后,下一个触发信号重新启动序列。
图27-8显示了重复序列通道模式的流程
MSC位的使用
为了能是转化过程自动,快速和持续的进行,我们需要启用多重采样和转化功能。
当MSC=1,CONSEQx>
0时,SHI信号的第一个上升沿就会启动第一次转化。
紧接着,一旦前一次转化结束,后面的转化就开始了,且为持续进行。
之后的SHI上升沿会被忽略,直到在单一序列模式下该序列结束,或是在重复单通道模式/重复序列模式下ENC位发生跳变为止。
当使用控制位MSC时,控制位ENC的功能是不变的。
停止转化
停止ADC10的转化取决于运行的方式。
以下是推荐的停止转化(序列转化)的的方法:
◆在单通道采样模式下,通过复位ENC来立即结束转化,但其结果是不准确的。
想得到正确的结果,要在清除ENC之前切断ADC10BUSY位,直到复位。
◆在重复单通道模式下,在当前转化结束时通过复位ENC来结束转化。
◆在序列或重复序列模式下,在序列结束时通过复位ENC来结束转化。
◆任何模式下都可以通过设置CONSEQx为0或者复位ENC来停止转化。
但其结果是不可靠的。
27.2.7ADC10数据传输控制器(DTC)
ADC10模块包括一个DTC可以自动的将转换结果从ADC10MEM寄存器传输到片内存储器的任意位置。
通过将ADC10DTC1寄存器设置为一个非零值来将DTC使能。
当DTC使能时,每一次ADC转换完成并将结果装入ADC10MEM后,一个数据传输被触发。
并不需要软件介入管理ADC10,直到预先确定数量的转换数据都传输完毕。
每一个DTC传输需要一个CPUMCLK。
为了避免任何的总线冲突,在DTC传输过程中,CPU应该是停顿的。
当ADC10忙时,DTC传输不能启动。
软件必要保证当DTC配置时,没有转换或序列是工作的。
ADC10activitytest
BIC.W#ENC,&
ADC10CTL0;
busy_testBIT.W#BUSY,&
ADC10CTL1;
JNZbusy_test;
MOV.W#xxx,&
ADC10SA;
Safe
MOV.B#xx,&
ADC10DTC1;
continuesetup
27.2.8启用内部温度传感器
要使用芯片内部的温度传感器,用户需要选择模拟输入通道INCHx=1010。
所以相应的配置包括基准电压,转化存储等等都已经设置好,用户可以像一个外部输入通道一样。
温度传感器的典型应用如图27-13所示。
当我们使用它时,取样的周期必须大于30us。
温度传感器的补偿误差较大,在大多数应用中需要矫正。
这点可以参考设备数据表,查看相应的参数。
选择温度传感器后就会自动打开芯片内部的基准电压发生器,产生供电电压源。
但是,这时不允许VREF+向外供电,也不会影响转化的基准选择。
温度传感器转化时的基准电压的选择和其他通道一样。
27.2.9ADC10接地和干扰注意事项
对于高分辨率的ADC,应采用适当的印制电路板布局和接地技术来抑制接地回路,寄生效应,和干扰。
地回路是A/D的回流经过与模拟或数字的回路相同的通道时产生的。
如果不注意,这个回路会产生一个小的但是有害的补偿电压,它会增大或减小基准电压或者是输入模拟信号。
如图27-14的连线可以避免上面情况发生。
除了接地以外,由于数字转化和改变电源供应所造成的供电电源上的纹波和干扰尖峰也会导致转化结果的错误。
一种推荐使用的连接为,将模拟地和数字地的连接分离为单点连接,这样可以消除干扰,提高精度。
27.2.10ADC10中断
一个中断和一个中断向量与ADC10有关,如图27-16所示。
若DTC不用(ADC10DTC1=0),当ADC10MEM存储寄存器装入转化结果时,ADC10IFG位置为1。
若DTC使用(ADC10DTC1=1),当快传输完成且内部传输计数器“n=0”时,ADC10IFG位置为1。
若控制位ADC10IE和GIE置位时,则ADC10IFG表示中断请求产生。
ADC10IFG位在中断请求被响应后会自动清除或者通过软件清除。
27.3ADC10的寄存器
寄存器
缩写
寄存器类型
地址
初始状态
ADC10Inputenableregister0
ADC10AE0
Read/write
04Ah
ResetwithPOR
ADC10Inputenableregister1
ADC10AE1
Read/write
04Bh
ADC10controlregister0
ADC10CTL0
01B0h
ADC10controlregister1
ADC10CTL1
01B2h
DC10memory
ADC10MEM
Read
01B4h
Unchanged
ADC10datatransfercontrolregister0
ADC10DTC0
048h
ADC10datatransfercontrolregister1
ADC10DTC1
049h
ADC10datatransferstartaddress
ADC10SA
01BCh
0200hwithPOR
ADC10CTL0,ADC10ControlRegister0
15
14
13
12
9
8
SREFx
ADC10SHTx
ADC10SR
REFOUT
REFBURST
rw−(0)
7
6
5
4
3
2
1
MSC
REF2_5V
REFON
ADC10ON
ADC10IE
ADC10IFG
ENC
ADC10SC
当ENC=0时可以修改。
SREFxBits选择基准电压
15-13000VR+=VCCandVR−=VSS
001VR+=VREF+andVR−=VSS
010VR+=VeREF+andVR−=VSS
011VR+=BufferedVeREF+andVR−=VSS
100VR+=VCCandVR−=VREF−/VeREF−
101VR+=VREF+andVR−=VREF−/VeREF−
110VR+=VeREF+andVR−=VREF−/VeREF−
111VR+=BufferedVeREF+andVR−=VREF−/VeREF−
ADC10SHTxBitsADC10采样保持时间
12-11004xADC10CLKs
018xADC10CLKs
1016xADC10CLKs
1164xADC10CLKs
ADC10SRBitADC10采样率,本位选择最大采样率的基准缓冲器的驱动能
10力。
ADC10SR位置一将降低基准缓冲器的电流消耗。
0基准缓冲器达到~200ksps
1基准缓冲器达到~50ksps
REFOUTBit基准电压输出
90基准电压输出关
1基准电压输出开
REFBURSTBit基准电压脉冲
80基准缓冲是连续的
1基准缓冲只在采样转换过程中开启
MSCBitADC10多重采样转化控制位。
只对序列和重复序列模式有效
70需要SHI信号的上升沿启动采样定时器,进行采样转化。
1第一个SHI信号的上升沿启动取样定时器,下面的采样转化过程会自动的紧接着前一次的结束开始转化
REF2_5VBit基准电压发生器,REFON位必须同时置位
601.5V
12.5V
REFONBitADC10基准电压发生器的开启位
50基准电压关闭
1基准电压开启
ADC10ONBitADC10开启位
40ADC10关闭
1ADC10开启
ADC10IEBitADC10中断使能
30中断禁止
1中断允许
ADC10IFGBitADC10中断标志位。
当ADC10MEM装入一个转化结果,本位
2置位。
ADC10IFG位在中断请求被响应后会自动清除或者通
过软件清除。
当使用DTC,一个块传输完成时本标志位置位。
0没有中断产生
1中断产生
ENCBit转化使能
10ADC10禁止
1ADC10允许
ADC10SCBitADC10转化开始控制位。
软件控制采样—转化开始。
ADC10SC
0和ENC可以由指令控制同时置位。
ADC10SC自动复位。
0采样—转化关闭
1采样—转化开始
ADC10CTL1,ADC10ControlRegister1
INCHx
SHSx
ADC10DF
ISSH
ADC10DIVx
ADC10SSELx
CONSEQx
r−(0)
INCHxBits输入通道选择。
本位用来选择单通道转化或者序列转化的最
15-12高通道。
0000A0
0001A1
0010A2
0011A3
0100A4
0101A5
0110A6
0111A7
1000VeREF+
1001VREF−/VeREF−
1010温度传感器
1011(VCC–VSS)/2
1100(VCC–VSS)/2,A12onMSP430x22xxdevices
1101(VCC–VSS)/2,A13onMSP430x22xxdevices
1110(VCC–VSS)/2,A14onMSP430x22xxdevices
1111(VCC–VSS)/2,A15onMSP430x22xxdevices
SHSxBits采样保持源选择
11-1000ADC10SCbit
01Timer_A0.OUT1
10Timer_A1.OUT0
11Timer_A1.OUT1
ADC10DFBitADC10数据格式
90二进制
1二进制补码
ISSHBit取反信号的采样保持
80采样输入信号没有取反
1采样输入信号取反
ADC10DIVxBitsADC10的时钟分频
7-5000/1
001/2
010/3
011/4
100/5
101/6
110/7
111/8
ADC10SSELxBitsADC10时钟源选择
4-300ADC10OSC
01ACLK
10MCLK
11SMCLK
CONSEQxBits转化模式选择
2-100单通道转化模式
01序列通道模式
10重复单通道模式
11重复序列模式
ADC10BUSYBitADC10忙标志位。
该位表示正在取样或转化。
00没有操作
1正在运行序列,取样或是转化动作
ADC10AE0,Analog(Input)EnableControlRegister0
ADC10AE0x
ADC10AE0xBitsADC10模拟使能。
这些位使能相应管脚的模拟输入。
BIT0对应
7-0A0,BIT1对应A1等等。
0模拟输入禁止
1模拟输入允许
ADC10AE1,Analog(Input)EnableControlRegister1
ADC10AE1x
Reserved
ADC10AE1xBitsADC10模拟使能。
BIT4对应
7-4A12,BIT15对应A13,BIT16对应A14,BIT17对应A15。
ADC10MEM,Conversion-MemoryRegister,BinaryFormat
ConversionResults
r0
r
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MSP430F4152 中文 资料 ADC
![提示](https://static.bdocx.com/images/bang_tan.gif)