SAR ADC工作原理

SAR ADC有着电路结构简单的优势,其中的模拟模块只有采样开关和比较器,其余均为数字模块。这不仅使设计变得简单,更是与数字CMOS工艺有着非常好的兼容性。其工作原理也是十分简单,即采用二进制搜索算法对输入信号进行转换。

1.SAR ADC电路结构

​ 图1是一个差分输入的SAR ADC基本结构,其中VIN、VIP为模拟输入。电路主要由采样保持电路、比较器(CMP)、DA转换网络(DAC)、和逐次逼近逻辑(SAR Logic)四个部分构成。其中,采样保持电路由采样开关和采样电容构成(通常采样电容由DAC电容阵列实现),用于将输入模拟信号采样到采样电容上,用于后续的转换;比较器用来比较输入信号与参考信号的大小,输出“0”或“1”一方面用于控制电容阵列的切换,同时存入寄存器等待得到N位数字码后同时输出;DA转换网络是一组二进制权重的电容阵列,由比较器输出控制切换电容上/下极板上的电压,使参考信号以二进制的方式逐次逼近输入信号,此时输出的二进制码即为当前模拟输入对应的数字输出;SAR Logic能够锁存比较器的输出并最终输出N位二进制码。SAR ADC的结构简单,硬件成本低,研究人员也会将其与其他结构相结合以得到更优的性能,例如Pipelined-SAR ADC、单通道采用SAR ADC的时域交织ADC等。

在这里插入图片描述
图1 SAR ADC基本结构

2.SAR ADC工作原理

​ SAR ADC以“二分法”为核

### SAR ADC工作原理详解 #### 1. 结构组成 SAR ADC 的核心组件包括比较器 \( C \)、数模转换器 (DAC)、寄存器、时钟脉冲源以及控制逻辑五个主要部分[^3]。 #### 2. 转换过程描述 当输入电压施加于 SAR ADC 上时,该设备通过一系列操作逐步逼近最终的数字化输出值。具体来说: - **初始化阶段**:首先将 DAC 输出设置为满量程的一半,并将其送入比较器的一个输入端;另一输入端连接待测信号。 - **逐次逼近算法执行**:如果比较结果显示输入信号高于当前 DAC 设置,则表明实际值位于上半个区间内,此时应调整 DAC 向更高方向移动;反之则降低。此过程中每次迭代都会更新一次内部寄存器中的二进制码字,直到完成全部位数的判定为止[^1]。 ```python def sar_adc_conversion(input_voltage, full_scale_voltage): bits = [] remaining_voltage = input_voltage for i in range(12): # Assuming a 12-bit resolution as mentioned in the reference to C8051F410 mid_point = full_scale_voltage / 2**(i+1) if remaining_voltage >= mid_point: bits.append('1') remaining_voltage -= mid_point else: bits.append('0') return ''.join(bits), int(''.join(bits), base=2) # Example usage with hypothetical values binary_output, decimal_value = sar_adc_conversion(2.7, 5.0) print(f"Binary Output: {binary_output}, Decimal Value: {decimal_value}") ``` 上述 Python 函数展示了如何实现一个简单的逐次逼近型 A/D 转换流程,其中假设了一个具有 12 位分辨率的理想化模型来进行说明。 #### 3. 特点总结 由于其相对简单的设计和高效能表现,使得这类架构广泛应用于各种微控制器中,比如提到过的 ADC0809 和 C8051F410 都采用了此类技术方案。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值