-
Notifications
You must be signed in to change notification settings - Fork 12
Description
I was not sure where to ask you questions, as I don't have your contact details: This project is just a gem! I stumbled across this series of projects after more or less giving up on trying to send data from 7 I2S microphones (7 mics * 3 bytes * 44.1 ksamples/s * 8 bits/byte=7.4 Mbit/s) to the computer via USB-CDC FS, and now I am encouraged to continue.
Unfortunately I am not great at writing code and I am a bit unsure of how to start with the files in your firmware folder. I tried adding to an empty project, but it could not find the hal-files (not sure how to include them) and in a second try I started with a CUBEMX-generated project and overwrote the files in the core-folders. I have always used the route of letting CUBEMX generate the starting code.
In my own project I am sucessfully receiving the 7 I2S buffers with DMA ringbuffers which I transfer to two new data buffers, one for each I2S half complete when the interrupts are called. When all DMA to data transfers are done I send them to the USB buffer for transfer to the computer. I tried to use some primitive python code on the computer side to convert the 24-bit unsigned data to signed. There is no control of the data, so I miss pieces and am unable to get it to work.
I am not sure if I understand your code completely:
- Do you have some automatic way of transfering your SPI DMA buffers to USB? Can this be used for my 7 channels also? Can you lead me to some documentation/examples that tells me how?
- How will the VISA drivers assist on the computer side compared to just connecting to serial and waiting for data to arrive?