I'm working on 320x240 pixels TFT which has the SSD1963 controller. I have interfaced this with the microcontroller. Basically I have written a code to store the image in the external flash memory interfaced with the microcontroller & this stored image will be displayed on the TFT. I have provided a switch to read the image(.bmp format) from the flash memory & display the image on TFT.

When I press the switch, I read the image from the external flash memory & display on TFT. The image is displaying with proper colours.
Now when I try read the image again & again by pressing the switch, the image colour changes (i.e., Image displays in Green,Blue,Red)each time I press the switch. please suggest for this issue.