MSP430之一 关于AD转换
在这里记下来自己所学的,而且写一篇记忆更深刻,还方便查阅。希望能有帮助吧~加油一起进步。
本文引用地址://m.amcfsurvey.com/article/201611/323029.html
l
转换控制寄存器 ADC12CTL0
ADC12CTL0
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8-11 |
12-15 |
ADCSC |
ENC |
ADCIVIE |
ADC0VIE |
ADCON |
REFON |
2.5V |
MSC |
SHT0 |
SHT1 |
1.
2.
3.
4.
5.
6.
7.
8.
转换控制寄存器 ADC12CTL1
0 |
1.,2 |
3,4 |
5-7 |
8 |
9 |
10-,11 |
12-15 |
BUSY |
CONSEQ |
ADCSEL |
ADCDIV |
ISSH |
SHP |
SHS |
CSSTARTADD |
1.
2.
3.
4.
5.
6.
7.
8.
最重要的两个部分说完了,呼呼喘口气、呵呵 看得累了还得用心记下来。
接下来要说的是转换储存寄存器 ADC12MEM0-MEM15;
只用低12位,后面4个读零。
其次当然是转换寄存器控制寄存器ADC12MCTLx
这个也是定义转换功能滴~~
0 1 2 3 |
4 5 6 |
7 |
INCH |
SREF |
EOS |
4个模拟通道 |
可选6种。 |
结束控制.0.完了,1没有 |
SREF 参考电压那里,就查查书吧、就是定义以哪个为基准的。
说到这里基本可以用上述3个来搭建出基本的AD模型了吧。感觉硬件编程,就像是堆积木哈,找到积木,然后一个一个一堆,技术含量就是记不住,每次都要翻书。不过没关系呀,不翻书,然何以破万卷?接着加油吧!
中断寄存器:
ADC12IFG 中断标志寄存器,ADC12IFG..x = 1 结束转换,= 0 访问ADC12MEM
ADC12IE
ADC12IV
到这里基本介绍完了,其实也是看了这么久程序的一个总结吧,当然不明白的地方我依旧还是去查了书,怕自己出现错误。下面将提供个例程:我只摘了工作需要的其中部分。
*************************************华丽的分割*************************************
Void main(void)
unsigned int adnum,ad_max,ad_min,ad_val,result[MAX_AD_NUM];
unsigned char k;
{
ADC12IE=0x01;//使用通道 使用结束后中断
for(k=0;k<50;k++); //延迟
}
{
}
评论