-
ADC_SR :[4:0]主要是 开始转换 [4:3] 和转换完成 [2:1] 和模拟看门狗 [0] 的标志位;
-
ADC_CR1和ADC_CR2:
主要是 1.ADC模式的控制(包括双ADC和单ADC的单次,循环,扫描,间断模式)2.中断使能位,还有 3. 触发ADC事件的选择,及4. 数据对齐、ADC数据DMA输出的使能,和 5. 校准的控制.具体的控制位参考手册即可。
-
ADC_SMPR1和ADC_SMPR2:(Channel x Sample Register)
每3个位控制一个一个通道的采样周期;
-
ADC_JOFRx (x=1…4): ADC注入通道数据偏移寄存器x
-
ADC_HTR和ADC_LTR: ADC看门狗的高低阈值设置,均是12位。
-
ADC_SQR1 和ADC_SQR2和ADC_SQR2:(SeQuence Register)
除ADC_SQR1[23:20]决定规则通道序列的长度(即开启的通道个数)外,接下来的每5位 都是指第几个转换序列是那个通道;
-
ADC_JSQR: [21:20]决定注入通道序列的长度(即注入通道的个数,最多4个);
-
ADC_JDRx (x=1…4): 四个注入通道的数据存放寄存器;16位,12位数据是左对齐还是右对齐,由ADC_CR->ALIGN*([11]数据对齐位)*决定;
-
ADC_DR :规则通道的数据存放寄存器;高16位用于双ADC模式下的ADC2,低16位存放ADC1的转换数据,对齐方式如上。
-
有关ADC的采样时间:
需要根据晶振的频率和所需采样时间的大小,设置时钟的预分频系数:
- 12.5个周期是芯片的额外消耗。
- 其中14MHz需要由(Stm32ZET6中)是APB2,72MHz,故需要至少6分频 (即下图的ADC分频器)。