Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Comments on When do I need to put anti-aliasing filter in front of SAR ADC?

Post

When do I need to put anti-aliasing filter in front of SAR ADC?

+7
−0

Signal characteristics are:

  • 0 to 3.3V span
  • 0 to 100Hz range( there will be noise superposed on top with unknown characteristics)
  • Output resistance Rout=4700 ohm

I want to sample that with a SAR ADC built in the MCU. ADC has following characteristics:

  • internal sample and hold capacitance --> Csh = 7pF
  • sampling switch resistance --> Rsh = 6kOhm
  • sampling time range --> programmable from t_s = 0.1us to t_s = 16us

My idea was to sample the input signal at a much higher rate than needed and implement an RC filter in the firmware so I can modify it easily.

Is there a benefit and what would the benefit of putting an RC filter in front of the ADC be? Or I can implement it purely in FW without drawbacks?

History
Why does this post require attention from curators or moderators?
You might want to add some details to your flag.
Why should this post be closed?

1 comment thread

DMA might help (2 comments)
DMA might help
Lundin‭ wrote over 2 years ago

Picking a MCU which can DMA the ADC reads might be a good idea. Modern ADC can easily sample > 1 MHz, the bottleneck is that without DMA, the CPU has to be fast enough to respond to that sample rate. Building such with old school interrupts is cumbersome, especially when the CPU has a lot of other things to do.

2kind‭ wrote over 2 years ago

Erm I missed your comment. I understand what you are trying to say, but in this particular application it won’t be an issue. Implementing “IIR alike” filter in the ISR won’t take more than 3-5 cycles. Interrupting main thread every couple of hundreds of cycles for 3-5 is not critical.

In other use cases, decimation might be more appropriate