- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello there, i am working on a project where a filter is needed. This filter is implemented in PSOC.
I am feeding the filter with a DMA, and using the output to set a PWM module, using the CPU.
I get a output almost similar to the input, except it is a bit small (also at DC). The filter is a RIAA filter.
What can i have done wrong?
Project is attached.
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
At very first sight: You are probably not able to handle 44100 interrupts per second.
CyDmaTdSetConfiguration(tdChanA, 3u, tdChanA, CY_DMA_DISABLE_TD);
I am not very fit with PSoC5 DMA, but doesn't the above mean to cease the DMA after the current TD finishes? I feel like best would be to repeat with tdChanA forever.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You might be right about the DMA, i had a hard fight getting it to work, i will look into it.
Is the DMA faster than the interrupt? In that case i will try to use DMA for both filter input and output.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
DMA is faster but more complicated getting it to work. 😉
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content