ESP32 parallel bus readout

jean.passepartout
Posts: 4
Joined: Fri Dec 22, 2017 9:55 pm

ESP32 parallel bus readout

Postby jean.passepartout » Fri Dec 22, 2017 10:05 pm

Hi everybody!

I'm trying to tie the ESP32 to a very specific peripheral. This peripheral outputs a 4 bit data word clocked at 25 MHz on the two clock edges.
I'm trying to crack a way to retrieve such high data stream on the ESP, preferentially using DMA. Any ideas on how to do this without additional hardware? For the records, the 25 MHz clock may be derived from the ESP32 internal clock.

Cheers!
Jean

ESP_Sprite
Posts: 8921
Joined: Thu Nov 26, 2015 4:08 am

Re: ESP32 parallel bus readout

Postby ESP_Sprite » Sat Dec 23, 2017 5:27 am

Hmm, the ESP32 can generate the clock? In that case, I'd use the SPI master peripheral, it has a 4-bit parallel mode. The 'on both clock edges' may be an issue however... if it's acceptable to run the thing at a lower speed (20MHz), you could run the SPI peripheral at 40MHz and use an external flipflop to divide that by two.

If speed is an issue, you could maybe use an I2S peripheral in 8-bit mode combined with the APLL to generate 50MHz and divide that by two... or maybe the I2S could actually be set up to output half the clockrate somewhere, I don't know. Disadvantage is that you'd be wasting half of your memory that way because you're capturing a 4-bit signal on an 8-bit bus.

Can I ask what specific device you're trying to interface with?

Who is online

Users browsing this forum: No registered users and 56 guests