- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MSP430 AD采样用法
msp430 AD初始化流程
msp430?AD初始化流程:单片机
?
ADC编程的流程如下:
1初始化,
void Adc12int()
{
ADC12CTL0 = ~ADC12ENC;?//使AD模块处于初始状态ADC12CTL0 = ADC12MSC+ADC12SHT0_15+ADC12SHT1_15;//使用外部部3.3V参考电压,使用采样保持器。
}
//
#define ADC12ENC??????????? (0x0002u)?
#define ADC12MSC??????????? (0x0080u)
#define ADC12SHT0_15??????? (15*0x100u)#define ADC12SHT1_15??????? (15*0x1000u)//
一、寄存器ADC12CTL0:
SHT1? SHT0?? ?MSC? 2.5V REFON? ADC120N ADC12TOVIE? ADC12TVIE?? ENC?? ADC12SC
15-12? 11-8????7??? 6???? 5?????4???? 3??? 2??????? 1??????? 0
ADC120SC?:ADC12内部时钟源(启动)
?ENC 位为转换允许,1允许AD转换,0时为不允许转换,即复位状态;由于ADC12CTL0和ADC12CTL1的一些位和ADCMCTILX的所有位必须在ENC位复位时才能修改。因而初始过程为:
ENC复位——设置转换启动方式——打开参考电压——选择采样保持器时间
SHT1? SHT0 采样保持定时器1和0,定义转换结果中转换时序与采样时钟ADC12CLK的关系。程序设置都为1,
MSC 多次采样、转换位。
??有效条件:CONSE!=0,MSC=1表示仅首次转换同SHI信号的上升沿触发采定时器,采样转换在前一转换完成立即进行。程序中设置为1
MSC的作用是:在顺序转换或重复转换中,若MSC置1则只需最初有一个触发信号,随后都会在前一次转换完成后,自动进入下一次转换。否则的话,每次转换完成都还需另个的触发信号。-----------DATASHEET.
2.5V 内部参考电压选择位:0——1.5V,1——2.5V
REFON? 参考电压控制位 0内部参考电压关闭? 1则为打开
ADC12ON? 内核控制位? 0关闭 1打开
ADC12TOVIE? 转换时间溢出中断允许 0没发生转换时间溢出? 1则表示发生
ADC12TVIE???溢出中断允许位?? 0没有发生溢出? 1表示发生溢出
以上5个位都设置0。
整个初始化意为选择使用外部参考源
2? 打开ADC12模块
void Adc12Open(uchar doit){?if(doit==0)?{??ADC12CTL0 |= ADC12ON;??ADC12CTL0 |= ADC12ENC; ?//允许转换?}?else if(doit==100)?{??ADC12CTL0 = ~ADC12ON; ?//不允许转换??ADC12CTL0 = ~ADC12ENC;?}}
#define ADC12ON???????????? (0x0010u)?#define ADC12ENC??????????? (0x0002u)?
寄存器ADC12CTL0中的ADC12ON复位时关闭ADC12的内核,置位时打开ADC12的内核。
寄存器同初始化,其实也可以看是初始化的一个步骤。即将ADC12CTL0中的ADC12ON和ENC置位,打开内核,允许ADC转换。
3?? AdcDo函数
设置AD转换所使用的的模式和转换首地址。
AdcDo(0,2);
void AdcDo(uint adr,uchar mod){?ADC12CTL1 = (adr12)+ADC12SHP+(mod1);??//SHP意思为由采样定时器控制采样}
#define ADC12SHP??????????? (0x0200u)???
二、操作寄存器ADC12CTL1?
CSSTARTADD?? SHS???? SHP? ISSH?? ADC12DIV?? ADC12SSEL?? CONSEQ?? ADC12BUSY
? 15-12????? 11-10??? 9??? 8???? 7-5?????4-3????? 2-1?????? 0
CSSTARTADD?? 转换存储器地址位,这4位表示二进制0-15分别对应ADC12MEM0-15.可以定义单次转换地址或序列转换的首地址。(程序中设置为0)
扩展采样模式(SHP=0):即SHI信号直接决定采样时间,参看DATASHEET和时序图;
脉冲采样模式时,SHI只负责输入一个上升沿信号来触发采样,而采样时间由
文档评论(0)