0

我试图通过串口将模拟信号从arduino发送到计算机。为了获得输入模拟信号的最大样本,我将波特率设置为最大限制。代码如给定

void setup()
{
  Serial.begin(115200);
}
 void loop()

{
  int a=analogRead(A0);
   Serial.println(a);
   delay(1);
}

该程序适用于我的频率非常低的信号。但在较高频率的信号中,仍然会出现混叠问题。我尝试减少延迟。我得到了更多样本当我这样做时,但我得到了一些数字值不能使用,也就是说,一些错误的数字值是353?12等等。是否必须给ADC提供 1 毫秒的最小延迟?或者有什么办法可以增加我的样本故事

4

1 回答 1

0

您在 arduino 中遇到了默认预分频器设置的问题。默认设置每毫秒只能获得少于 10 个样本。

如果您想使用一些基础设置,您当然可以从您的 ADC 获得更快的读取速度:www.microsmart.co.za/technical/2014/03/01/advanced-arduino-adc/ 对学科。他们通过一些调整使其以每毫秒 50 个样本的速度运行。

另一种选择是获得一个运行速度更快的 ADC 芯片。在 sparkfun 中搜索“mcp3002”。由于它使用 spi 输入,因此无需调整您的 arduino。

于 2014-10-15T19:04:03.880 回答