尊敬的 E2E 支持:
您可以帮助说明从中断触发、获取 ADC 读取的最短可能时间是多少?
µs、目标是通过中断捕捉短(几百 μ V)电压变化。
此致、
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
尊敬的 E2E 支持:
您可以帮助说明从中断触发、获取 ADC 读取的最短可能时间是多少?
µs、目标是通过中断捕捉短(几百 μ V)电压变化。
此致、
您好!
好的、我认为这有两个部分。 第一个参数是 ADC 测量和转换所需的时间、第二个参数是中断以及存储或处理数据所需的时间。
对于 ADC、从技术角度而言、绝对最短的采样保持时间约为1us、对话最大值至少为2.6us。 采样和保持时间实际上取决于输入信号的阻抗、您需要为内部电容器和电阻器提供充电时间。 数据表屏幕截图中有一个示例、但通常情况下、为了实现准确测量、该时间将长于1us。
我们将 ADC12宣传为200ksps、因此我们将其四舍五入到每个样本的最小5us、如果您在重复模式下运行它、它将继续采样并转换回。

至于中断、假设我们在每次转换后每5us 得到1个、并且我们正在以16MHz 的最高速度运行器件、这样在中断之间可以得到80个 CPU 时钟周期。 这是足够的,但不是很多。 我不记得确切的数字、但可能需要10-15个时钟周期才能跳转到中断并在最后返回。 可能剩下60个时钟周期才能实际工作。
实际上、这可能只有足够的时间将数据存储在缓冲区中并进行非常小的阈值比较、这可能适合您的用例。 另一种方法是设置 DMA、使其自动移动和存储数据、然后在以后对数据进行分块处理。
希望这对您有所帮助。
JD