- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'd like to make DMA transfer 2 data from SAR ADC to Memory as switching AmuxHW, but the output of DAC was mixed signal of 2 data (reference to attached picture:Blue= SIG1, Yellow=SIG2, Green=output of DAC).
Digital delay circuit was referenced to CE95299 (http://www.cypress.com/documentation/code-examples/ce95299-delta-sigma-adc-using-16-multiplexed-sing...).
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is not enough: Can you please post your complete project so that we all can have a look at all of your settings. To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
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
You ought to use the eos signal to switch your MUX to the next channel. Look in ADC datasheet for "eos" to get an explanation.
You could save some resources (edge detector logic) when using the "pulse" option of the control register.
You do a GetResult() but you do not know which channel was converted nor do you wait for a conversion ready.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your kindness, Bob.
I intended to distinguish 2 data by setting 2 TD chains of one DMA. How can I intake multiple data as fast as possible by a ADC? I thought continuous HW trigger with using ADC and AMuxHw is best, but I couldn't understand how to distinguish multiple data in CPU.
Daisuke Kusakari
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
ADC SAR Seq is a bit slow....
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
ADC SAR Seq is a bit slow.... No, it is the very same. Data is stored internally into an array. Your main problem will be: What are you going to do with the data, sending over any communication interface will take too much time, even when you use SPI. Retrieving the data directly (no DMA) would just work, but what are you going to do with it.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'll do PID control, so it's necessary to calculate from these data in CPU. I have to decrease time it takes 1 For loop to increase sampling speed, and it found out data intake time of ADC was dominant.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What kind of application makes it necessary to control a PID in µs range? I thought even for flight control ms range would be quite sufficient.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
MEMS actuator. Is there any idea to intake multiple (5~6) data less than 30 us, please?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You need to estimate the amount of instructions you can execute within 30µs and how many instructions you need to process the incoming data with your algorithms (Madgwick?). I can assure you it is looking a bit tight 😉
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I could make 6 data intake earlier about 5 us using 2 ADC SAR Seq (CLOCK 18Hz) with DMA. Thank you very much.