ADC
1、ADC介绍
ADC 是任何现代微控制器中非常重要的外设。 它用于读取传感器的模拟输出、检测电压电平等。 例如,我们可以使用 ADC 读取 LM35 温度传感器。 传感器的电压输出与温度成正比,因此我们可以使用电压信息来反算温度。 下图是STM8s的ADC外设框图:
在使用 ADC 之前必须注意一些事项。 这些显着提高了性能:
- 输入阻抗应小于 10kΩ。
- 最好将 ADC 时钟保持在 4MHz 以内或低于 4MHz。
- 必须禁用施密特触发器。
- 如果可能,首选基于运算放大器的输入缓冲器和滤波器电路。
- 如果 ADC 有参考源引脚,它们应该连接到精密参考源,如 LM336。 否则建议使用好的LDO稳压芯片。不应配置或禁用未使用的 ADC 引脚。 这将降低功耗。
- ADC 读数应以固定的固定间隔采样并取平均值,以消除读数的微小波动,而不是单次采样。
- 应该使用右对齐数据对齐,因为它最方便使用。
- 通向 ADC 通道的 PCB/线迹必须很短,以减少干扰效应。
2、ADC配置
1)ADC控制开关
通过置位ADC_CR1寄存器的 ADON位来开启ADC。当首次置位ADON位时,ADC从低功耗模式唤醒。为了启动转换必须第二次使用写指令来置位寄存器的位。在转换结束时ADC会保持在上电状态,用户只需要置位ADON位一次来启动下一次的转换。
如果长时