代码审查测试:测试工程师视角下的质量守卫战

核心内容摘要

HG-ha/MTools在图像处理中的应用:智能抠图实战案例
科研数据卡壳?用WebPlotDigitizer解锁图片中的隐藏数据

5个秘诀掌握专业游戏录像编辑:开源工具League Director全解析

ADC模数转换器技术详解

什么是ADCADCAnalog-to-Digital Converter即模拟-数字转换器是一种将连续变化的模拟信号转换为离散数字信号的电子设备或模块。

特性输入连续模拟信号通常是电压信号输出离散数字信号二进制代码作用作为物理世界与数字系统如微处理器、微控制器之间的桥梁典型应用场景传感器信号采集温度、光照、压力等音频信号处理工业测量与控制医疗电子设备

什么是ADC的基准电压基准电压是ADC进行转换的参考标准决定了ADC的测量范围和精度。

关键概念ADC_VREFH参考电压高电平如i.MX6ULL中的ADC_VREFH引脚ADC_VREFL参考电压低电平通常接地测量范围输入模拟电压必须在VREFL和VREFH之间i.MX6ULL ADC参考电压配置[REFSEL] b12-b11电压参考源选择 00 使用VREFH/VREFL引脚的外部参考电压通常VREFH接

3VVREFL接GND0V输入电压超过基准电压范围会导致结果饱和全0或全

ADC的工作原理基本转换过程以逐次逼近型ADC为例模拟信号 → 采样保持 → 量化 → 编码 → 数字输出(

采样Sampling以固定时间间隔采集模拟信号的瞬时值奈奎斯特采样定理采样频率必须大于信号最高频率的2倍(

保持Hold保持采样值稳定便于ADC进行转换i.MX6ULL配置选项[ADLSMP] b4长采样时间配置 [ADSTS] b9-b8采样时间选择(

量化Quantization将连续幅度离散化将采样值映射到最接近的离散电平量化误差 ±1/2 LSB(

编码Encoding将量化后的电平转换为二进制代码i.MX6ULL支持多种分辨率[MODE] b3-b2转换模式选择分辨率 00 8位单端 01 10位单端 10 12位单端常用 11 10位差分

什么是ADC的分辨率定义分辨率表示ADC能够区分的最小输入电压变化通常用位数表示。

常见分辨率位数量化级数理论精度应用场景8位

2

39%简单控制10位

1

098%一般测量12位

4

024%精密测量i.MX6ULL支持14位

1

0061%高精度测量16位

6

0015%专业仪器24位

1

7M

000006%高精度传感器i.MX6ULL ADC分辨率配置// 配置为12位分辨率 ADCx_CFG | (0x2

; // MODE[3:2]

电压计算公式12位分辨率

3V基准基本公式212×4096×

3Vactual​212n​×Vref​4096n​×

3V推导过程分辨率12位 → 2¹² 4096个量化级每个LSB代表的电压

4

34096≈

0008057≈

806LSB4096Vref​​

4

3V​≈

0008057V≈

806mV实际电压计算××

34096Vactual​n×LSBn×

4

3V​计算示例量化结果n实际电压计算电压值00/4096 ×

3V0V20482048/4096 ×

3V

65V40954095/4096 ×

3V≈

2992V代码实现// 将ADC原始值转换为电压值12位分辨率

3V基准 float adc_to_voltage(uint16_t adc_value) { // 确保值在有效范围内 if (adc_value

adc_value 4095; // 计算电压值 float voltage (float)adc_value *

3f /

4

0f; return voltage; } // 示例ADC读取值为2048时 uint16_t raw_value 2048; // ADC原始数据 float voltage adc_to_voltage(raw_value); // voltage ≈

65Vi.MX6ULL ADC数据读取// 读取ADC转换结果12位数据在低12位 uint16_t read_adc_value(void) { // 等待转换完成 while (!(ADC1_HS 0x

) { // 等待COCO0标志置位 } // 读取转换结果 uint16_t result ADC1_R0 0x0FFF; // 取低12位 return result; }

总结要点ADC是模拟与数字世界的桥梁实现连续信号到离散信号的转换基准电压决定测量范围和精度必须稳定准确工作原理包括采样、保持、量化、编码四个关键步骤分辨率表示精度位数越高量化误差越小电压计算遵循线性关系V_actual (n / 2^N) × V_ref实际应用

注意事项输入阻抗匹配确保信号源阻抗与ADC输入阻抗匹配噪声抑制在ADC输入前添加RC滤波电路采样速率选择根据信号频率选择合适采样率校准使用定期进行ADC校准以提高精度参考电压稳定性使用稳定、低噪声的参考电压源

海角社区ID:21116724-海角社区应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123