stm32h7 fastest gpio read using DMA
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-04-12 2:40 AM - edited ‎2024-04-12 2:41 AM
I would like read the gpio lines at fastest speed.
As example it is possible to read first 4 ports by reading:
uint16_t ports0123=GPIOC->IDR&0x000F; (it is very fast, takes 28 tics)
It is possible to read ports GPIO_PIN_0-15 by connecting GPIOC->IDR to a DMA?
and a fast DMA?
Solved! Go to Solution.
- Labels:
-
DMA
-
STM32H7 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-04-12 3:54 AM
You can do it, but you may be unpleasantly surprised by how slow it is.
While that article talks about toggling (i.e. write), most of what's written there applies to reads, too.
You may try to experiment with the BDMA which in the same clock domain as GPIO, but don't have too high expectations.
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-04-12 3:42 AM
Hello
It is possible to read ports GPIO_PIN_0-15 by connecting GPIOC->IDR to a DMA?
Nothing prevents you to do it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-04-12 3:54 AM
You can do it, but you may be unpleasantly surprised by how slow it is.
While that article talks about toggling (i.e. write), most of what's written there applies to reads, too.
You may try to experiment with the BDMA which in the same clock domain as GPIO, but don't have too high expectations.
JW
