LPC55S69 Embedded Graphics : Decoding Animated GIFs

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LPC55S69 Embedded Graphics : Decoding Animated GIFs

Eli_H
NXP Pro Support
NXP Pro Support
1 0 2,554

I wanted to take a quick break from some of the PowerQuad articles to show off a neat library that works well with the LPC55S69.      One of the design features of the Mini-Monkey experiment was a 240x240 Pixel IPS display.     I feel that the LPC55S69 is a good fit for small, low active power embedded graphics applications.  It has quite a bit of internal SRAM to store a framebuffer and has lots of processing power to composite a scene on a small display.  In some of my previous articles,  we use this display to show static images as well as displaying time series data from a built in MEMs microphone.   I ran across a twitter user “The Performance Whisper” who had recently released a lightweight and efficient  animated GIF decoder.     I *really* wanted to give this library a try and decided to port it to the Mini-Monkey.

 

Here it is in action:

 

 

 

You can find the original library here:

 

https://github.com/bitbank2/AnimatedGIF

 

 You can read more about the origins and design of the GIF library here:

 

A 'Low Memory' GIF decoder 

 

While the library is targeting the Arduino platform, the core decoder is written in C and can be easily ported.    My port can be found here:

 

https://bitbucket.org/ehughes_/minimonkey-sw/src/master/

 

For this demonstration, I embedded the GIF files in internal flash.   It would be straightforward to add some SPI flash to store larger animations.   The LPC55S69 also has SDIO interfaces so you could also use an SD card or eMMC read files from a file system.  I will have more to say on embedded graphics on the LPC55S69 in the future.   In the meantime, check out these additional LPC55S69 resources.

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/01/22/lpc55-mcu-series-there-...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/02/05/lpc5500-series-theres-a...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/02/20/lpc5500-series-theres-a...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/03/13/mini-monkey-part-1-how-...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/03/29/mini-monkey-part-2-usin...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/04/19/lpc55s69-mini-monkey-bu...

 

https://community.nxp.com/videos/9003

 

https://community.nxp.com/videos/8998

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/06/15/lpc55s69-powerquad-part...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/07/05/lpc55s69-powerquad-part...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/07/21/lpc55s69-powerquad-part...

 

https://community.nxp.com/community/general-purpose-mcus/lpc/blog/2020/07/28/x-ray-the-monkey-mini-m...

Tags (3)