2.4寸SPI液晶屏模块程序


2.4寸SPI液晶屏模块程序,ILI9341最少占用9个IO,独家资料
资源截图
代码片段和文件信息
/**********************************************************************************************
 Copyright (c) 2014 DisplayModule. All rights reserved.

 Redistribution and use of this source code part of this source code or any compiled binary
 based on this source code is permitted as long as the above copyright notice and following
 disclaimer is retained.

 DISCLAIMER:
 THIS SOFTWARE IS SUPPLIED “AS IS“ WITHOUT ANY WARRANTIES AND SUPPORT. DISPLAYMODULE ASSUMES
 NO RESPONSIBILITY OR LIABILITY FOR THE USE OF THE SOFTWARE.
 ********************************************************************************************/

#include “DmDrawBmpbase.h“

void DmDrawBmpbase::printBmpHeaderInfo() {
  Serial.print(F(“Image size:         “)); 
  Serial.println(_fileSize DEC);
  Serial.print(F(“Image offset:       “)); 
  Serial.println(_bitmapOffset DEC);
  Serial.print(F(“Image size:         “)); 
  Serial.print(_width DEC);
  Serial.print(F(“ “));
  Serial.println(_height DEC);
  Serial.print(F(“BitsPerPixel:       “)); 
  Serial.println(_bitsPerPixel DEC);
  Serial.print(F(“Compression:        “)); 
  Serial.println(_compression DEC);
  Serial.print(F(“Is 24-bit bmp:      “));
  Serial.println(IsValid888Bitmap());  
  Serial.print(F(“Is 16-bit 565 bmp:  “));
  Serial.println(IsValid565Bitmap());  
  Serial.print(F(“Has 565 color mask: “));
  Serial.println(Is565ColorMask());  
}

boolean DmDrawBmpbase::readBmpHeader() {
  if (read16() !=0x4D42){ // read magic byte
    return false;
  }

  _fileSize = read32();
  read32(); // Value depends on application which created the image 
  _bitmapOffset = read32();

  // read DIB header
  _headerSize = read32();
  _width = readInt32();
  _height = readInt32();

  if (read16() != 1) { // number of color planes must be 1
    return false;
  }
  
  _bitsPerPixel = read16();
  _compression = read32();
  
  if (_bitmapOffset == 66 || _bitmapOffset == 70) { // V3 or v2 format
    setPosition(54);
    _redMask = read32();
    _greenMask = read32();
    _blueMask = read32();
  }
  else {
    _redMask = 0x00;
    _greenMask = 0x00;
    _blueMask = 0x00;
  }
  
  if (!IsValid888Bitmap() && !IsValid565Bitmap())
  {
    return false;
  }
  
  return true;
}

// In this context a valid bitmap
// - Stored bottom to top
// - 24-bit file
// - No compression
boolean DmDrawBmpbase::IsValid888Bitmap() {
  if (_height > 0 && _bitsPerPixel == 24 && _compression == 0)
  {
    return true;
  }
  return false;
}

// In this context a valid bitmap
// - Stored top to bottom
// - 16-bit file
// - Compression 3 (BI_BITFIELDS)
// - Have a 565 Colormask
boolean DmDrawBmpbase::IsValid565Bitmap() {
  if (_height < 0 && _bitsPerPixel == 16 && _compression == 3 && Is565ColorMask())
  {
    return true;
  }
  return false;
}

boolean DmDrawBmpbase::Is565ColorMask() {
  if (_redMask == 0xF800 && _greenMask == 0x7E0 && _blueMask == 0x1F)
  {
    return true;
  }
  return false;
}

int32_t DmDrawBmpbase::readInt32() {
  int32_t d;
  uint16_t b;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     435695  2015-04-02 06:54  Arduino参考DatasheetsDM-TFT28-105 Datasheet.pdf

     文件    3572618  2015-04-02 06:59  Arduino参考DatasheetsIlitek_ILI9341_datasheet.pdf

     文件    1119035  2015-04-02 07:00  Arduino参考DatasheetsWinbond_W25Q32BV.pdf

     文件     907078  2015-04-02 06:57  Arduino参考DatasheetsXptek_XPT2046_datasheet.pdf

     文件       3454  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpbase.cpp

     文件       1506  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpbase.h

     文件       3589  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromProgmem.cpp

     文件       1462  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromProgmem.h

     文件       4725  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromSdCard.cpp

     文件       1290  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromSdCard.h

     文件       4343  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromSpiFlash.cpp

     文件       1421  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmDrawBmpDmDrawBmpFromSpiFlash.h

     文件       8076  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftbase.cpp

     文件       3207  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftbase.h

     文件       5476  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftHX8353C.cpp

     文件       1484  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftHX8353C.h

     文件       5183  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9163c.cpp

     文件       1635  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9163c.h

     文件       6356  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9163_mcu.cpp

     文件       1466  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9163_mcu.h

     文件       6173  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9325.cpp

     文件       1447  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9325.h

     文件       5687  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9341.cpp

     文件       1563  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9341.h

     文件       6240  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9341v.cpp

     文件       1452  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftIli9341v.h

     文件      14295  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftRa8875.cpp

     文件       2678  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftRa8875.h

     文件       7363  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftRm68090.cpp

     文件       1447  2015-09-11 08:03  Arduino参考displaymodule-dmtftlibrary-d010ff51ac0dDmTftLibraryDmTftRm68090.h

............此处省略545个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)