0
\$\begingroup\$

My question is quite simply as the title states: Is there any microcontroller for 4K resolution image capture, or even 1080P for that matter?

I've spent time doing research trying to research a microcontroller capable of this. The closest I've come to finding anything is STM's certain range of L, F, H series microcontrollers that have integrated their coined 'DCMI' interface, but upon reading their application notes, their resolutions are confined to maximum 960x544 based on DMA capability (shown below.)

STM32 Application Note for DCMI capabilities

The problem is that every bit of information about image sensors are tailored towards selling MPUs, FPGA, SOMs and SOCs for video capture, with particularly high FPS capabilities. I am not after any video capture, I purely want to capture one frame at a time - processing speed is not a concern for me. I preferably don't want to use an MPU, FPGA, SOC or SOM for both complexity and power considerations.

The only other similar technology I've come across is the new ArduCam Mega, which is seemingly very close with what I would like to build, but they seem to have implemented their own proprietary chip which doesn't help my case.

I WANT TO KNOW IF MICROCONTROLLERS ARE CAPABLE OF THIS AND NOT A SPECIFIC MICROCONTROLLER

\$\endgroup\$
3
  • 2
    \$\begingroup\$ So you're after 4k image capture, not video. What does your 4k image sensor have as its output? If you aren't worried about throughput/processing time per each image, the hardest part is getting the data of the image out of the image capture device. You can transfer any file size over any interface, into any processor which can do any processing you like, as long as you have enough time. \$\endgroup\$
    – Puffafish
    Commented Jun 6, 2023 at 11:01
  • \$\begingroup\$ Hmm.. how many microcontrollers can even store a single 4k uncompressed frame? \$\endgroup\$
    – pjc50
    Commented Jun 6, 2023 at 11:53
  • 2
    \$\begingroup\$ Why do you need the MCU to store the whole frame? Time isn't important, so store it in RAM or flash or an SPI connected EEPROM and process it line by line. \$\endgroup\$
    – Puffafish
    Commented Jun 6, 2023 at 12:36

1 Answer 1

1
\$\begingroup\$

I think you should be looking at microcontrollers with external memory peripheral support. A 4k frame stored as 32 bit pixels is ~265Mb (3840 x 2160 x 32).

Something like a MX25LM51245 512M bit OCTOSPI RAM with an STM32H7x would do it. You can find eval boards with that configuration. You need external RAM for even a modest size LCD panel, especially with double buffering. Most MCUs don't have very much RAM at all.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.