- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all
I create a table in flash just '0' and '1' and use DMA transferring to GPIO. I expect to generate 5MHz clock output from GPIO, but the maximum clock output always is 3MHz. I use a clock as a DMA hardware request (rising edge). Although increasing triggering clock to 24MHz, the clock output from GPIO is the same 3MHz clock output. How to increase output clock to 5MHz or higher?? Is there a speed limitation??
Device: CY8CKIT-050 PSoC 5LP
BUS CLOCK: 48MHz
Thanks
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Read the architecture TRM, and the respective AppNotes about DMA. There is a setup time for each DMA transfer.In your case, its most likely 6 clock cycles, which would end up in the 3MHz you observer.
But what do you want to achieve? Wouldn't it be easier to connect a clock to the output directly? Or do you want, in the end, write complete bit patterns to a PGIO port?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
DMA approach of course potentially will create a lot of jitter.
Also, maybe not relevant, but take a look at info in this ap note about
faster toggling of GPIO (non DMA) -
http://www.cypress.com/?rID=57571 AN72382
Regards, Dana.