2021-06-01 12:59 PM
Good day, Everyone.
Here's the project:
I have an old Nintendo 3DS. It's screen resolution is 800x240, running at 60fps. Each of the RGB colors gets 4 bits so it's pretty low color resolution. I'd like to read the frame color data from the pins and dump it onto the PC to display it.
What STM solution is powerful and fast enough to tackle this sort of a task? Each frame is 800x240 pixels and each pixel is made up of 12bits of color data. that's
2,304,000 bits of data (2,304kb or 2.304 mbit) if data, going 60 times every second. If my self reminder math is right.
Some have recommended to look into UVC_Camera protocol as it makes the controller appear like a video device, which sounds so nice. the video stream would simply appear as webcam input which can be easily recorded with OBS and I don't have to worry about software.
Any advice on what I should be looking into that's powerful and fast enough for this sort of an application?
2021-06-01 01:03 PM
384KB per frame
If you can do it via the DCMI that would clearly be the most effective means of ingress
2021-06-01 01:55 PM
Oh, how did you get to 384KB total? a single frame is 800*240 pixels which is 192,000 pixels in a frame, each pixel is 12bits of data 4 for red, 4 for green and 4 for blue. which is 192,000 pixels by 12 bits making it 2,304,000 bits for each full frame. 2,304,000 bits converted to kilobytes is 288KB
I'm pretty sure something in my math is wrong, I just can't see what.
2021-06-01 02:33 PM
2 bytes per pixel would be 384 kB/frame.
It doesn't change the argument made.
Implementation will depend on how exactly the frame is sent over the lines. If you have details of it, please provide. The most capable mcu family would be STM32H7, regardless.
2021-06-01 02:38 PM
So just because it's 12 bit doesn't mean that it won't still be compacted into an 2 byte value, is that it?
From what I've been able to probe, it's a 12bit parallel port with 4 bits per color. All bits for a single frame appear at the same time. There is a Vertical Blank and Horizontal Blank signal too.