Framebuffer splitting in internal RAM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-17 11:28 PM
Im working on a STM32F407 MCU with an 320x240 px Display (16bit colors) connected to the FSMC. Id like to avoid using an external RAM.
Is it possible to have a smaller Framebuffer located in the internal RAM?
I guess it could be interesting to vary the buffer size to for example to 40 lines ( 320x40x16bit in my example) and putting the area to the internal RAM.
If its not possible might it be interesting to make a feature request?
Thank you in advance.
Solved! Go to Solution.
- Labels:
-
STM32F4 Series
-
TouchGFX
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-18 3:40 AM
Not concretely. Internal deadlines are preventing us from releasing new versions, but this is being mitigated. Soon we'll have no restrictions on releasing new versions.
Hope that's enough of an answer!
/Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-17 11:56 PM
Hi @JB91​,
Of course =) Just provide touchgfx with an address in internal memory instead of pointing to external RAM. Here's an example for how to configure touchgfx to use a single framebuffer in internal ram (most often, fitting two framebuffers in internal RAM is not feasible).
uint16_t frameBuffer[480 * 272];
static uint16_t frameBuf0 =&frameBuffer[0];
...
hal.setFrameBufferStartAddress((uint16_t*)frameBuf0, 16);
/Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-18 1:52 AM
Hi @Martin KJELDSEN​ ,
thanks for your quick answer.
Is it also possible to raster the framebuffer in order reduce the size of the framebuffer?
**example:**
- Display with ILI9341 controller, 320px * 240px and 16bit color depth needs 154kByte for a full single framebuffer
With rastering it could be possible to split the framebuffer into several parts.
- using only 40 lines for the temporary framebuffer would need 320px * 40px = 25kByte RAM
- the parts are then processed sequentially
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-18 2:14 AM
Hi @JB91​,
In newer, yet to be released verisons of touchgfx, we support 8-bit palette and also partial framebuffers which both lower the overall memory requirements.
/Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-18 2:55 AM
Hi @Martin KJELDSEN​ ,
do you know when the new version will be released?
Thanks,
Josh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2019-09-18 3:40 AM
Not concretely. Internal deadlines are preventing us from releasing new versions, but this is being mitigated. Soon we'll have no restrictions on releasing new versions.
Hope that's enough of an answer!
/Martin
