我想过滤我的ADC。我需要我的ADC具有40 Hz的采样频率,但我不知道如何设置ADC采样频率。
听起来你想每25毫秒读一次ADC。由于25毫秒比读取ADC所需的时间长得多,因此您无需担心以任何特殊方式配置ADC:只需每25毫秒调用一次analogRead
。您可以使用以下代码执行此操作:
uint8_t lastReadingTime;
void loop()
{
if ((uint8_t)(millis() - lastReadingTime) >= 25)
{
lastReadingTime = millis();
uint16_t result = analogRead(A0);
// now do something with the result
}
}