-
Notifications
You must be signed in to change notification settings - Fork 413
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can create SPI wave in nano seconds resolution? #582
Comments
The hardware SPI supports a baud rate maximum of 32M. |
Yes. But when use |
The construction of output waveforms is limited to 1 microsecond timing. Ie, the fastest square waveform you can generate is 500 KHz. |
Is it possible to improve the waveforms' CLK timing to nano seconds? |
No. Waveforms are controlled by DMA. To try to make it run sub microseconds would be futile as that would create excessive bus traffic interfering with normal activity. Why do you not use the hardware SPI peripheral which is intended for such purposes? |
@guymcswain I use RPI to do this because it need no other devices and I saw that the clocks can achieve 100MHz or higher for RPI peripheral. So I want to test the max ablity of the speed. |
RPi is made up of many peripherals. The 100MHz rate you mention is only achievable in certain Gpio pins via the Clock peripheral. When I mentioned the SPI peripheral I am referring to the APIs: |
@guymcswain Thanks for your patience. I need to monitor the signal continuously without time gap between two data acquest. I tried |
Yes, |
@guymcswain If I want to streaming the input data without any gaps, can I use |
I use ADS8688A with the 500kSPS. It need 64 clock time per sample. However, the pigpio library use 1us as the min clock time. The max speed I can achieved is (1000 / 64) kSPS, which is much smaller than 500.
So how can modify the SPI clock to 10ns or 100ns ?
The text was updated successfully, but these errors were encountered: