Skip to main content
SPaul.3
Associate
January 20, 2021
Question

STM32H730AB - Assembling Data from Single Bit Inputs

  • January 20, 2021
  • 7 replies
  • 1361 views

I would like to use the STM32H730AB as the central controller for a wireless sensing device. For this device, the MCU will drive an external 8-bit ADC at 40 MSPS. This ADC generates an output signal across 8 output pins, 1 for each bit of the digital signal. For wireless communication, I plan out sending each data point to an external wireless module via the SDMMC2 module. For each point of data, I would like to write the time of conversion (based on the ADC clock signal from MCO2) and the "reassembled" conversion data from the ADC. So my overall question at this point is twofold:

  1. What would be the best method to input 8 1-bit channels and subsequently assemble the 8 individual bits into a single 8-bit word?
  2. Is it possible to write a file internally for each data point? This file would only need to contain the time of conversion and the 8-bit conversion data. This file would be sent to the SDMMC2 for transmission via the external wireless module.
This topic has been closed for replies.

7 replies

Tesla DeLorean
Guru
January 20, 2021

40 MHz ? ADC or DAC ?

Strikes me as a mixing task far better done with a small CPLD/FPGA

Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
Tesla DeLorean
Guru
January 20, 2021

Perhaps there are some off-the-shelf FIFO Memory and SERDES devices.

Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
TDK
January 20, 2021

40 MSPS at 8bit is above the capabilities of the STM32H7.

You can use DMA to transfer GPIO states to memory, but this will top at somewhere near 10 MSPS, and even then you'll be running into bus contention issues if you're doing anything else nontrivial within the program, such as talking to an SD card.

"If you feel a post has answered your question, please click ""Accept as Solution""."
SPaul.3
SPaul.3Author
Associate
January 20, 2021

I figured that I would need a very high MIPS count, but I didn't have a great idea of how high it needed to be. I'm thinking something like the more specialized components that @Community member​ mentioned above will be better suited to my application. My overall PCB footprint needs to remain small, and mpus and mcus seem to get much larger and more complex with higher processing rates.