Shows how to use a display, the onboard SD Card and the onboard SPI Flash. Requires a display module with direct Arduino pinning

Dependencies:   DmTftLibrary SDFileSystem mbed

Committer:
displaymodule
Date:
Thu Jan 22 05:54:22 2015 +0000
Revision:
6:0f69891b105e
Parent:
0:3ecd25651727
Add DM_TFT43_108, DM_TFT50_111 based on new lib drv: DmTftRa8875

Who changed what in which revision?

UserRevisionLine numberNew contents of line
displaymodule 0:3ecd25651727 1 /**********************************************************************************************
displaymodule 0:3ecd25651727 2 Copyright (c) 2014 DisplayModule. All rights reserved.
displaymodule 0:3ecd25651727 3
displaymodule 0:3ecd25651727 4 Redistribution and use of this source code, part of this source code or any compiled binary
displaymodule 0:3ecd25651727 5 based on this source code is permitted as long as the above copyright notice and following
displaymodule 0:3ecd25651727 6 disclaimer is retained.
displaymodule 0:3ecd25651727 7
displaymodule 0:3ecd25651727 8 DISCLAIMER:
displaymodule 0:3ecd25651727 9 THIS SOFTWARE IS SUPPLIED "AS IS" WITHOUT ANY WARRANTIES AND SUPPORT. DISPLAYMODULE ASSUMES
displaymodule 0:3ecd25651727 10 NO RESPONSIBILITY OR LIABILITY FOR THE USE OF THE SOFTWARE.
displaymodule 0:3ecd25651727 11 ********************************************************************************************/
displaymodule 0:3ecd25651727 12
displaymodule 0:3ecd25651727 13 #ifndef DM_DRAW_BMP_BASE_h
displaymodule 0:3ecd25651727 14 #define DM_DRAW_BMP_BASE_h
displaymodule 0:3ecd25651727 15
displaymodule 0:3ecd25651727 16 #include "dm_platform.h"
displaymodule 0:3ecd25651727 17 #include "DmTftBase.h"
displaymodule 0:3ecd25651727 18
displaymodule 0:3ecd25651727 19
displaymodule 0:3ecd25651727 20 typedef bool (*readFunc)(uint32_t userData, uint8_t* data, int offset, int numBytes);
displaymodule 0:3ecd25651727 21
displaymodule 0:3ecd25651727 22 class DmDrawBmpBase {
displaymodule 0:3ecd25651727 23 public:
displaymodule 0:3ecd25651727 24 bool drawBitmap(DmTftBase& tft, uint16_t x, uint16_t y, readFunc func, uint32_t userData=0);
displaymodule 0:3ecd25651727 25 protected:
displaymodule 0:3ecd25651727 26 bool draw565Bitmap(DmTftBase& tft, uint16_t x, uint16_t y);
displaymodule 0:3ecd25651727 27 bool draw888Bitmap(DmTftBase& tft, uint16_t x, uint16_t y);
displaymodule 0:3ecd25651727 28 //virtual void setPosition(uint32_t newPosition) = 0;
displaymodule 0:3ecd25651727 29 uint16_t read16();
displaymodule 0:3ecd25651727 30
displaymodule 0:3ecd25651727 31 void printBmpHeaderInfo();
displaymodule 0:3ecd25651727 32 bool readBmpHeader();
displaymodule 0:3ecd25651727 33 bool IsValid888Bitmap();
displaymodule 0:3ecd25651727 34 bool IsValid565Bitmap();
displaymodule 0:3ecd25651727 35 bool Is565ColorMask();
displaymodule 0:3ecd25651727 36 uint16_t Convert888to565(uint8_t red, uint8_t green, uint8_t blue);
displaymodule 0:3ecd25651727 37
displaymodule 0:3ecd25651727 38 uint32_t read32();
displaymodule 0:3ecd25651727 39 int32_t readInt32();
displaymodule 0:3ecd25651727 40
displaymodule 0:3ecd25651727 41 uint32_t _fileSize;
displaymodule 0:3ecd25651727 42 uint32_t _bitmapOffset;
displaymodule 0:3ecd25651727 43
displaymodule 0:3ecd25651727 44 uint32_t _headerSize;
displaymodule 0:3ecd25651727 45 int32_t _width, _height;
displaymodule 0:3ecd25651727 46 uint16_t _bitsPerPixel;
displaymodule 0:3ecd25651727 47 uint32_t _compression;
displaymodule 0:3ecd25651727 48 uint32_t _redMask;
displaymodule 0:3ecd25651727 49 uint32_t _greenMask;
displaymodule 0:3ecd25651727 50 uint32_t _blueMask;
displaymodule 0:3ecd25651727 51
displaymodule 0:3ecd25651727 52 readFunc _readFunc;
displaymodule 0:3ecd25651727 53 uint32_t _userData;
displaymodule 0:3ecd25651727 54 uint32_t _readPos;
displaymodule 0:3ecd25651727 55 };
displaymodule 0:3ecd25651727 56 #endif
displaymodule 0:3ecd25651727 57