Upcoming maintenance
Dear Customers and Partners.
This website will be undergoing scheduled maintenance on June 14, 2023. Please be aware there may be disruption to the developer portal website and associated services during the scheduled maintenance period.
This upgrade is essential to ensure the continued performance, reliability, and security of Developer World.
We apologize for any inconvenience.
CXD5602 GPIO speed
-
How fast can I grab data from an externally clocked source using the GPIO directly into memory? From 1-4 pins if that matters, absolute max rate would be 44MHz.
-
I ran a basic test to estimate GPIO speed by only toggling Pin D01 (UART2_TX) on and off using our GPIO API and got a frequency of 905.8kHz
You can probably get it to be higher than that with some optimizations, but 40MHz would definitely not be possible.I'm attaching the code I wrote for the test and the picture I took from the wave shown on an analyzer.
Code:
#include <arch/board/board.h> #include <arch/chip/pin.h> int main(int argc, FAR char *argv[]) { while(1){ board_gpio_write(PIN_UART2_TXD, 0); board_gpio_write(PIN_UART2_TXD, 1); } return 0; }
-
@CamilaSouza thanks -- makes sense. Is there any other way to get high speed parallel IO into spresense? I guess I could hack the imaging interface to have the board read data as if it were raw camera data.