This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PROCESSOR-SDK-AM335X: PRU ADC example

Part Number: PROCESSOR-SDK-AM335X

Hi,

git.ti.com/.../PRU_ADC_onChip

With reference to the example mentioned above. I plan to modify this firmware to a continuous acquisition at 100 kHz for about 20 seconds. Transfer doesn't need to be real time by can be buffered in RAM before a file write.
Am I likely to face any issues due to any inherent limitation of RPMsg or can I proceed safely? Would EDMA be better suited to this kind of an application?

Looking forward to your inputs.

Thanks & Regards, 

Kenneth Joel

  • Hello Kenneth,

    If you want to use RPMsg to transfer data, do not plan on it sending a message more than about once a millisecond.

    Are you doing anything to the ADC data in the PRU? Or are you just trying to get data from the ADC to ARM user space, and the method does not matter?

    Regards,

    Nick

  • Hi Nick,

    I do want to use RPMsg to transfer data. What is the maximum message size than can be transferred?

    No processing of data happens on the PRU. I'm just trying to get data from the ADC to ARM user space reliably, 2 Channels at preferably at 100kHz for around 20 seconds. The method does not matter as long as reliability is ensured.

    Thanks & Regards

    Kenneth 

  • Hello Kenneth,

    If there is no need for the PRU to offload data processing from the ARM, I would just use EDMA. No need to complicate things by adding another core into the mix.

    In answer to your other question, RPMsg message packet size is 512 Bytes, of which 16 bytes are header information. so 496 bytes is the max RPMsg message size.

    Regards,

    Nick