The basic components required to build a graphics sub-system are:
Display panels come in various sizes and resolutions, and the factors that influence the choice of a display panel include:
Frame buffer refers to the place in memory (usually RAM type) that stores the pixel data for the displayed frame and subsequent frames. The size of the frame buffer is determined by the screen size and the color depth. You can calculate the frame buffer size using the formula:
Frame buffer size (bytes) = Number of pixels × Color depth (bits) ÷ 8
Example: For a QVGA display at 16 bpp color depth, the frame buffer memory required is 320 × 240 × 16 ÷ 8 = 153,600 bytes
* The minimum memory required for a 24 bpp is more because of our 32-bit word length.
The PIC32CZ CA family offers up to 1,024 KB of SRAM which can be used as the frame buffer to drive upto WVGA display without the need of any external memory or a dedicated controller.
The display glass must be constantly refreshed by feeding the horizontal and vertical pixel data repeatedly from the frame buffer. This can be achieved in two ways:
The PIC32MZ DA family offers up to 128 MB of DDR2 DRAM that can be used as the frame buffer to drive upto WVGA display along with an integrated display controller and a graphics processor.
Any graphics application requires a software display driver which provides for:
The Microchip Graphics Suite (MGS) offers the choice of two best-in-class GUI design tools and graphics libraries, completely free of charge.
Touch is becoming an important feature in most graphics applications that require a Human Machine Interface (HMI). There are essentially two types of touch: