文章目录
- 1 ADC介绍
- 2 ADC框图
- 2.1 外部输入通道
- 2.2 输入电压范围
- 2.3 触发源
- 2.4 时钟源
- 2.5 偏移矫正功能
- 2.5.1 校准
1 ADC介绍
RT1052 有 2 个 ADC,每个 ADC 有 12 位、10 位、8 位可选,每个 ADC 有 16 个外部通道。
- ADC具有最高 1MS/s 采样率
- 支持单次或连续转换模式
- 可配置采样时间和转换速度
- 支持硬件求平均
- 支持自动比较转换结果为小于、大于或等于某一设定的值,或者在设定的范围内、范围外。
2 ADC框图
2.1 外部输入通道
外部模拟的电压信号通过 ADCx_INn(n 取 0 到 15) 进入 ADC 模块
- RT1052 的每个 ADC 多达 16 外部输入个通道,这 16 个外部输入通道对应着不同的引脚
- 以下是ADC1对应的引脚
2.2 输入电压范围
ADC 的输入电压范围为:0~3.3V。
- 如果我们想让输入的电压范围变宽,可以测试负电压或者更高的正电压,我们可以在外部加一个电压调理电路,把需要转换的电压抬升或者降压到 0~3.3V。
2.3 触发源
RT1052 支持软件触发和硬件触发
- 当 ADCx_CFG 寄存器的 ADTRG 位(转换触发选择位)为 1时,ADC 为软件触发方式
- 此时向 ADCx_HC0 寄存器 ADCH 位(外部输入通道选择位)写入需要转换的外部输入通道则开启一次转换。
ADC 还支持外部事件触发转换,通过 XBAR(外设间交叉开关)几乎可选择任何其他外设的相
关事件作为 ADC 的外部触发事件。
- 此时向 ADCx_HC0 寄存器 ADCH 位(外部输入通道选择位)写入需要转换的外部输入通道则开启一次转换。
2.4 时钟源
时钟有四个,分别为 ADACK、IPG Clock、IPG Clock 除 2、ALTCKL。
- IPG clock . 默认时钟源。
- IPG clock 二分频, 如果 IPG 的时钟过高,使用 ADIV 寄存器最大可得到 16 分频的 IPG 时钟。
- ADACK, 该时钟是 ADC 模块中的时钟源生成的,所以当单片机处于停止模式时该时钟仍然在运行。使用该时钟在停止模式下 ADC 可以进行转换。
寄存器 ADICLK[1:0]位决定 ADC 数字部分的时钟源。
2.5 偏移矫正功能
ADCx_OFS 用于在转换结果基础上增加或者减少固定的值。ADCx_OFS 寄存器 SIGN 位用于设置增加或者减少,OFS 位用于设置增加或者减少的值。
2.5.1 校准
在系统复位后启动 ADC 转换之前要进行校准。ADCx_CAL 寄存器 CAL_CODE 保存有硬件校准值,每次校准之后该值自动更新。