DMA_FILTER

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
feme_285141
Level 4
Level 4

Hello, I'm using two DMA channels to transfer data from the filter and ADC this to RAM. Have problems in that the filter is not sent me the signal to activate the second DMA

0 Likes
1 Solution
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

You did not increment the DMA address for the sram which is not a peripheral.

   

You isr_done will trigger 48000 times a second which will be too much, did you place it wrong?

   

Declare DMA_done as "volatile"

   

You restart the AD conversion, but you do not restart the DMAs

   

 

   

Bob

View solution in original post

0 Likes
5 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

You may not increase destination or source address for peripherals. Peripheral DMA will read from a register which has a fixed address.

   

adc_muestra is declared as uint8, but should be int16.

   

There is a mismatch between ADC samples/s (48000) and filter sps 1000k samples/s, should be the same.

   

 

   

bob

0 Likes
feme_285141
Level 4
Level 4

I did the upgrade but no result

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

... and your actual workspace bundle... ?

   

 

   

Bob

0 Likes
lock attach
Attachments are accessible only for community members.
feme_285141
Level 4
Level 4

Here is the file

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

You did not increment the DMA address for the sram which is not a peripheral.

   

You isr_done will trigger 48000 times a second which will be too much, did you place it wrong?

   

Declare DMA_done as "volatile"

   

You restart the AD conversion, but you do not restart the DMAs

   

 

   

Bob

0 Likes