我试图从arduino发送模拟信号到计算机,通过串行port.For获取输入模拟信号的最大样本,我将波特率按给定的最大limit.The代码计算。
void setup()
{
Serial.begin(115200);
}
void loop()
{
int a=analogRead(A0);
Serial.println(a);
delay(1);
}这个程序对我的高频信号的frequency.but很好,仍然存在一个别名问题,我试着减少延迟,当我这样做的时候,我得到了更多的样本,但是我得到的一些数字值不能被使用,也就是说,一些错误的数字值是353?12,因此,曼达给ADC最小延迟1 ms ?或者有什么方法可以增加我的采样值?
发布于 2014-10-15 19:04:03
您在arduino中遇到了默认预分频器设置的问题。默认设置每毫秒只能得到少于10个样本。
如果您想使用一些底层设置,您肯定可以从您的ADC中获得更快的读取: www.microsmart.co.za/technical/2014/03/01/advanced-arduino-adc/在这个主题上写得很好。他们以每毫秒50个样本的速度进行了一些调整。
另一种选择是获得一个ADC芯片,它将运行得更快。搜索sparkfun中的"mcp3002“。不需要调整您的arduino,因为它使用spi输入。
https://stackoverflow.com/questions/26389521
复制相似问题