日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

1.54英寸240x240 IPS TFT LCD顯示模塊:高分辨率與低功耗的完美結(jié)合

chencui ? 2026-05-14 09:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.54英寸240x240 IPS TFT LCD顯示模塊:高分辨率與低功耗的完美結(jié)合

在電子設(shè)計(jì)領(lǐng)域,顯示模塊的性能對于產(chǎn)品的整體表現(xiàn)至關(guān)重要。今天要給大家介紹一款極具特色的1.54英寸240x240 IPS TFT LCD顯示模塊,它以高分辨率、低功耗等優(yōu)勢,在眾多顯示應(yīng)用場景中脫穎而出。

文件下載:DFR0649.pdf

一、模塊特性

1. 高分辨率與小尺寸

該模塊采用1.54英寸的IPS顯示屏,具備240×240的分辨率,能夠提供清晰、細(xì)膩的顯示效果。小尺寸的設(shè)計(jì)使其在空間有限的應(yīng)用場景中也能完美適配,如電子禮品盒、電子天氣裝飾品等。

2. 低功耗設(shè)計(jì)

模塊可在3.3V - 5V的電壓下工作,最大功耗僅為24mA,全屏功耗約為17mA(3.3V和5V時(shí)典型值)。這種低功耗特性使得它在對功耗要求較高的設(shè)備中表現(xiàn)出色,能夠有效延長設(shè)備的續(xù)航時(shí)間。

3. 寬視角與易接線

IPS顯示屏提供80/80/80/80的視角,無論從哪個(gè)角度觀看,都能獲得清晰、準(zhǔn)確的顯示效果。同時(shí),模塊采用SPI和GDI接口,與帶有GDI端口的主控制器配合使用,大大降低了接線的復(fù)雜度。

二、規(guī)格參數(shù)

參數(shù) 詳情
工作電壓 3.3V - 5V
IPS視角 80/80/80/80
顏色深度 16位(RGB565)
像素 240 × 240
連接端口 SPI
驅(qū)動芯片 ST7789
亮度 250(Typ)cd/m2
SKU DFR0649
工作溫度 -30℃ - +70℃
顯示區(qū)域 27.72×27.72mm
安裝孔直徑 2mm
尺寸 44.00x39.00mm

三、引腳說明

編號 標(biāo)簽 說明
1 VCC 電源正極
2 GND 電源負(fù)極
3 SCLK 時(shí)鐘信號
4 MOSI 數(shù)據(jù)(主發(fā)送;從接收)
5 MISO 數(shù)據(jù)(主接收;從發(fā)送)
6 CS 屏幕芯片選擇
7 RES 復(fù)位
8 DC 數(shù)據(jù)/命令
9 BL 背光燈(已設(shè)置默認(rèn)值,可不連接;連接時(shí),高電平開啟最大亮度,低電平關(guān)閉)
10 SDCS SD卡芯片選擇

四、使用教程

1. 硬件要求

  • DFRduino UNO R3(或類似)x 1
  • 1.54" 240x240 LCD模塊 x 1
  • M - M/F - M/F - F跳線線
  • 電線

2. 軟件要求

  • Arduino IDE
  • 下載并安裝DFRobot_GDL庫

3. 注意事項(xiàng)

  • GDI接口只能與帶有GDI的主控制器配合使用。
  • 建議使用Arduino 1.8.10及以上版本。
  • 如果SD卡接觸不良,可能會導(dǎo)致初始化失敗,此時(shí)可嘗試重新插拔。

五、示例代碼

1. 基本繪圖示例

此示例展示了如何在模塊上繪制點(diǎn)、圓、線和矩形等圖形。通過設(shè)置不同的顏色和參數(shù),可以實(shí)現(xiàn)各種圖形的繪制效果。

#include "DFRobot_GDL.h" 

// 根據(jù)不同主板設(shè)置引腳
#if defined ARDUINO_SAM_ZERO 
#define TFT_DC 7 
#define TFT_CS 5 
#define TFT_RST 6 
#elif defined(ESP32) || defined(ESP8266) 
#define TFT_DC D3 
#define TFT_CS D4 
#define TFT_RST D5 
#else 
#define TFT_DC 2 
#define TFT_CS 3 
#define TFT_RST 4 
#endif 

DFRobot_ST7789_240x240_HW_SPI screen(TFT_DC, TFT_CS, TFT_RST); 

void setup() { 
  Serial.begin(115200); 
  screen.begin(); 
} 

void loop() { 
  testDrawPixel(); 
  testLine(); 
  testFastLines(COLOR_RGB565_PURPLE, COLOR_RGB565_YELLOW); 
  testRects(COLOR_RGB565_BLACK, COLOR_RGB565_WHITE); 
  testRoundRects(); 
  testCircles(24, COLOR_RGB565_BLUE); 
  testTriangles(COLOR_RGB565_YELLOW); 
  testPrint(); 
} 

// 測試?yán)L制像素點(diǎn)
void testDrawPixel() { 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  int x = 0; 
  int y = screen.height(); 
  for(int i = 0; i <= screen.width()/2; i += 10) { 
    for (x = screen.width() - i; x >= i; x -= 10) { 
      screen.drawPixel(x, y, COLOR_RGB565_ORANGE); 
      delay(10); 
    } 
    for (y = screen.height() - i; y >= i; y -= 10) { 
      screen.drawPixel(x, y, COLOR_RGB565_ORANGE); 
      delay(10); 
    } 
    for (x = i; x <= screen.width() - i + 1; x += 10) { 
      screen.drawPixel(x, y, COLOR_RGB565_ORANGE); 
      delay(10); 
    } 
    for (y = i; y <= screen.height() - i + 1; y += 10) { 
      screen.drawPixel(x, y, COLOR_RGB565_ORANGE); 
      delay(10); 
    } 
  } 
} 

// 測試?yán)L制直線
void testLine() { 
  uint16_t color = 0x00FF; 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  for (int16_t x = 0; x < screen.width(); x += 6) { 
    screen.drawLine(screen.width()/2, screen.height()/2, x, 0, color); 
  } 
  for (int16_t y = 0; y < screen.height(); y += 6) { 
    screen.drawLine(screen.width()/2, screen.height()/2, screen.width(), y, color += 0x0700); 
  } 
  for (int16_t x = screen.width(); x >= 0; x -= 6) { 
    screen.drawLine(screen.width()/2, screen.height()/2, x, screen.height(), color += 0x0700); 
  } 
  for (int16_t y = screen.height(); y >= 0; y -= 6) { 
    screen.drawLine(screen.width()/2, screen.height()/2, 0, y, color += 0x0700); 
  } 
} 

// 測試快速繪制直線(僅水平和垂直線)
void testFastLines(uint16_t color1, uint16_t color2) { 
  for (int16_t y = 0; y < screen.height(); y += 4) { 
    screen.drawFastHLine(0, y, screen.width(), color2); 
    delay(10); 
  } 
  for (int16_t x = 0; x < screen.width(); x += 3) { 
    screen.drawFastVLine(x, 0, screen.height(), color1); 
    delay(10); 
  } 
} 

// 測試?yán)L制矩形
void testRects(uint16_t color1, uint16_t color2) { 
  int16_t x = screen.width() - 12; 
  for (; x > 100; x -= screen.width()/40) { 
    screen.fillScreen(COLOR_RGB565_BLACK); 
    screen.drawRect(screen.width()/2 - x/2, screen.height()/2 - x/2, x, x, color2 += 0x0F00); 
    delay(100); 
  } 
  screen.fillRect(screen.width()/2 - x/2, screen.height()/2 - x/2, x, x, color2); 
  delay(100); 
  for (; x > 6; x -= screen.width()/40) { 
    screen.drawRect(screen.width()/2 - x/2, screen.height()/2 - x/2, x, x, color1); 
    delay(100); 
  } 
} 

// 測試?yán)L制圓角矩形
void testRoundRects() { 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  int color = 0xF00F; 
  int i; 
  int x = 0; 
  int y = 0; 
  int w = screen.width() - 3; 
  int h = screen.height() - 3; 
  for (i = 0; i <= 16; i += 2) { 
    screen.drawRoundRect(x, y, w, h, 20, color); 
    x += 5; 
    y += 5; 
    w -= 10; 
    h -= 10; 
    color += 0x0100; 
    delay(50); 
  } 
  for (i = 0; i <= 16; i += 2) { 
    screen.fillRoundRect(x, y, w, h, 10, color); 
    x += 5; 
    y += 5; 
    w -= 10; 
    h -= 10; 
    color += 0x0500; 
    delay(50); 
  } 
} 

// 測試?yán)L制圓形
void testCircles(uint8_t radius, uint16_t color) { 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  for (int16_t x = radius; x <= screen.width() - radius; x += radius * 2) { 
    for (int16_t y = radius; y <= screen.height() - radius; y += radius * 2) { 
      screen.drawCircle(x, y, radius, color); 
      if (x == y || x == -y || x == y + 2 * radius) { 
        color += 800; 
        screen.fillCircle(x, y, radius, color); 
      } 
      delay(100); 
    } 
  } 
} 

// 測試?yán)L制三角形
void testTriangles(uint16_t color) { 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  for (int16_t i = 0; i <= screen.width(); i += 24) { 
    screen.drawTriangle(i, 0, 0, screen.height() - i, screen.width() - i, screen.height(), color); 
  } 
  for (int16_t i = 0; i < screen.width(); i += 24) { 
    screen.drawTriangle(screen.width(), i * 4/3, 0, screen.height() - i * 4/3, i, 0, color); 
  } 
  for (int16_t i = 0; i < screen.width(); i += 24) { 
    screen.drawTriangle(screen.width(), i * 4/3, i, 0, screen.width() - i, screen.height(), color); 
  } 
  color = COLOR_RGB565_RED; 
  for (int16_t i = 0; i <= screen.width(); i += 24) { 
    screen.fillTriangle(i, 0, 0, screen.height() - i, screen.width() - i, screen.height(), color); 
  } 
  for (int16_t i = 0; i < screen.width(); i += 24) { 
    screen.fillTriangle(screen.width(), i * 4/3, 0, screen.height() - i * 4/3, i, 0, color += 100); 
  } 
  for (int16_t i = 0; i < screen.width(); i += 24) { 
    screen.fillTriangle(screen.width(), i * 4/3, i, 0, screen.width() - i, screen.height(), color += 100); 
  } 
} 

// 測試打印文本
void testPrint() { 
  int16_t color = 0x00FF; 
  screen.setTextWrap(false); 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  screen.setCursor(0, 50); 
  screen.setTextColor(color += 0x3000); 
  screen.setTextSize(0); 
  screen.println("Hello World!"); 
  screen.setTextColor(color += 0x3000); 
  screen.setTextSize(1); 
  screen.println("Hello World!"); 
  screen.setTextColor(color += 0x3000); 
  screen.setTextSize(2); 
  screen.println("Hello World!"); 
  screen.setTextColor(color += 0x3000); 
  screen.setTextSize(3); 
  screen.println("Hello World!"); 
  screen.setTextColor(color += 0x3000); 
  screen.setTextSize(4); 
  screen.println("Hello!"); 
  screen.setTextSize(5); 
  screen.print("Hello!"); 
  delay(2000); 
  screen.setCursor(0, 0); 
  screen.fillScreen(COLOR_RGB565_BLACK); 
  screen.setTextSize(2); 
  screen.setTextColor(color += 0x3000); 
  screen.print("a = "); 
  screen.setTextColor(color += 0x3000); 
  int a = 1234; 
  screen.println(a, 1); 
  screen.setTextColor(color += 0x3000); 
  screen.print(8675309, HEX); 
  screen.println("this is HEX!"); 
  screen.println(""); 
  screen.setTextColor(color += 0x0F00); 
  screen.println("running for: "); 
  screen.setTextColor(color += 0x0F00); 
  screen.print(millis()); 
  screen.setTextColor(color += 0x0F00); 
  screen.println("/1000 seconds."); 
  char *text = "Hi DFRobot!"; 
  screen.setTextColor(color += 0x0F00); 
  screen.setTextWrap(true); 
  screen.setTextSize(3); 
  screen.println(text); 
  delay(2000); 
}

2. 圖標(biāo)顯示示例

此示例展示了如何在屏幕上顯示一些常用圖標(biāo)。首先需要使用GIMP2將圖標(biāo)轉(zhuǎn)換為代碼,然后通過代碼在屏幕上顯示這些圖標(biāo)。


#include "DFRobot_GDL.h" 
#include "Icon.h" 

// 根據(jù)不同主板設(shè)置引腳
#if defined ARDUINO_SAM_ZERO 
#define TFT_DC 7 
#define TFT_CS 5 
#define TFT_RST 6 
#elif defined(ESP32) || defined(ESP8266) 
#define TFT_DC D3 
#define TFT_CS D4 
#define TFT_RST D5 
#else 
#define TFT_DC 2 
#define TFT_CS 3 
#define TFT_RST 4 
#endif 

DFRobot_ST7789_240x240_HW_SPI screen(TFT_DC, TFT_CS, TFT_RST); 

void setup() { 
  Serial.begin(115200); 
  screen.begin(); 
} 

void loop() { 
  int w = screen.width(); 
  int h = screen.height(); 
  int a = millis()/1000; 
  uint16_t color = 0x00FF; 
  screen.fillScreen(COLOR_RGB565_WHITE); 
  while (1) { 
    for (int i = 0; i < 12; i++) { 
      screen.fillRect(16, 16, w - 16 * 2, 35, COLOR_RGB565_WHITE); 
      screen.setTextWrap(false); 
      screen.setTextColor(0x30FF); 
      screen.setTextSize(3); 
      screen.setCursor(30, 30); 
      screen.println("Time:"); 
      screen.setTextColor(0x00FF); 
      screen.setTextSize(3); 
      screen.setCursor(120, 30); 
      a = millis()/1000; 
      screen.println(a, 1); 
      screen.fillRoundRect(w/2 - 48 - 12, h/2 - 16 - 8, 32 * 3 + 12 * 2, 32 + 8 * 2, 20, 0x0000); 
      for (int x = 0; x < 16; x++) { 
        screen.drawFastVLine(x, 0, h, color); 
      } 
      screen.drawFastHLine(16, 0, w - 16 * 2, color); 
      for (int y = 0; y < 16; y++) { 
        screen.drawFastHLine(16, y, w - 16 * 2, color); 
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 低功耗
    +關(guān)注

    關(guān)注

    12

    文章

    4099

    瀏覽量

    106896
  • 顯示模塊
    +關(guān)注

    關(guān)注

    1

    文章

    61

    瀏覽量

    23991
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    1.3英寸TFT LCD模塊:LH133T - IG01的技術(shù)剖析

    1.3英寸TFT LCD模塊:LH133T - IG01的技術(shù)剖析 在電子設(shè)備中,顯示屏是人與機(jī)器交互的重要窗口。今天我們來深入了解深圳市優(yōu)
    的頭像 發(fā)表于 05-09 13:50 ?84次閱讀

    探索DLP660TE 0.66 4K UHD DMD:高分辨率顯示的理想之選

    探索DLP660TE 0.66 4K UHD DMD:高分辨率顯示的理想之選 在電子顯示技術(shù)的不斷發(fā)展中,高分辨率、高亮度的顯示需求日益增長
    的頭像 發(fā)表于 04-19 09:05 ?233次閱讀

    Vieworks超高分辨率、像素移位工業(yè)相機(jī)—VN系列

    Vieworks超高分辨率、像素移位工業(yè)相機(jī)—VN系列
    的頭像 發(fā)表于 04-08 11:34 ?200次閱讀
    Vieworks超<b class='flag-5'>高分辨率</b>、像素移位工業(yè)相機(jī)—VN系列

    MAX11200/MAX11210:低功耗、高分辨率ADC的卓越之選

    MAX11200/MAX11210:低功耗高分辨率ADC的卓越之選 在電子設(shè)計(jì)領(lǐng)域,模擬數(shù)字轉(zhuǎn)換器(ADC)是連接現(xiàn)實(shí)世界模擬信號與數(shù)字系統(tǒng)的關(guān)鍵橋梁。今天,我們聚焦于Maxim
    的頭像 發(fā)表于 04-01 13:50 ?219次閱讀

    DLP9500:高分辨率空間照明調(diào)制的理想之選

    英寸對角線微鏡陣列的數(shù)字微鏡器件(DMD),它可是實(shí)現(xiàn)高分辨率、高性能空間照明調(diào)制的得力助手。 文件下載: dlp9500.pdf 一、特性亮點(diǎn) 1. 微鏡陣列參數(shù) DLP9500 擁有 1920×1080 的鋁陣列,微米級微鏡實(shí)現(xiàn)了 1080p
    的頭像 發(fā)表于 12-15 10:30 ?1451次閱讀

    DLPA100電源管理和電機(jī)驅(qū)動器:高分辨率顯示系統(tǒng)的理想之選

    DLPA100電源管理和電機(jī)驅(qū)動器:高分辨率顯示系統(tǒng)的理想之選 在電子工程領(lǐng)域,高分辨率顯示系統(tǒng)對電源管理和電機(jī)驅(qū)動的要求日益嚴(yán)苛。德州儀器(TI)的DLPA100電源管理和電機(jī)驅(qū)動器
    的頭像 發(fā)表于 12-15 09:35 ?704次閱讀

    DLPC3434顯示控制器:小尺寸低功耗高分辨率顯示的理想之選

    DLPC3434顯示控制器:小尺寸低功耗高分辨率顯示的理想之選 在當(dāng)今的顯示技術(shù)領(lǐng)域,對于小尺寸、低功耗
    的頭像 發(fā)表于 12-11 15:50 ?1268次閱讀

    DLP480RE數(shù)字微鏡器件:高分辨率顯示的理想之選

    DLP480RE數(shù)字微鏡器件:高分辨率顯示的理想之選 在顯示技術(shù)不斷發(fā)展的今天,高分辨率、高亮度的顯示需求日益增長。德州儀器(TI)的DLP
    的頭像 發(fā)表于 12-11 14:25 ?770次閱讀

    深入解析DLP9000XUV DMD:高分辨率UV調(diào)制的理想之選

    深入解析DLP9000XUV DMD:高分辨率UV調(diào)制的理想之選 在電子工程領(lǐng)域,數(shù)字微鏡器件(DMD)一直是實(shí)現(xiàn)高性能空間光調(diào)制的關(guān)鍵技術(shù)。今天,我們將深入探討德州儀器(TI
    的頭像 發(fā)表于 12-11 14:05 ?750次閱讀

    DLPC7540高分辨率控制器:技術(shù)解析與設(shè)計(jì)指南

    DLPC7540高分辨率控制器:技術(shù)解析與設(shè)計(jì)指南 在當(dāng)今追求高分辨率顯示的時(shí)代,DLPC7540高分辨率控制器憑借其卓越的性能和豐富的功能,成為眾多
    的頭像 發(fā)表于 12-11 10:40 ?596次閱讀

    DLPC4420 DLP顯示控制器:高分辨率顯示的理想之選

    DLPC4420 DLP顯示控制器:高分辨率顯示的理想之選 在當(dāng)今的顯示技術(shù)領(lǐng)域,高分辨率、高亮度的顯示
    的頭像 發(fā)表于 12-11 10:00 ?654次閱讀

    DLPC8445、DLPC8445V和DLPC8455高分辨率控制器:技術(shù)解析與設(shè)計(jì)指南

    高分辨率支持 DLPC84x5系列控制器能夠支持最高4K UHD(60Hz時(shí))以及最高1080p(240Hz (2D) 和120Hz (3D) 時(shí))的分辨率
    的頭像 發(fā)表于 12-10 14:55 ?1034次閱讀

    探秘DLP991UUV:高分辨率數(shù)字微鏡器件的卓越應(yīng)用與設(shè)計(jì)要點(diǎn)

    就是這樣一款引人矚目的高分辨率DMD,它為工業(yè)、醫(yī)療和消費(fèi)類市場等眾多領(lǐng)域帶來了新的解決方案。作為一名資深電子工程師,近期我仔細(xì)研究了DLP991UUV的數(shù)據(jù)手冊,下面就為大家詳細(xì)介紹這款器件。 文件下載: dlp991uuv.pdf 特性剖析:高分辨率與UV控制的
    的頭像 發(fā)表于 12-10 14:30 ?724次閱讀

    DLPC8445、DLPC8445V和DLPC8455高分辨率控制器深度解析

    1. 高分辨率支持 DLPC84x5控制器在分辨率支持上表現(xiàn)出色。它能實(shí)現(xiàn)最高4K UHD(60Hz時(shí))的顯示效果,同時(shí)在
    的頭像 發(fā)表于 12-10 14:10 ?1562次閱讀

    聚徽廠家工業(yè)液晶屏的高分辨率成像技術(shù)揭秘

    在工業(yè)生產(chǎn)、智能控制、精密檢測等領(lǐng)域,對信息的精準(zhǔn)獲取與清晰展示至關(guān)重要。聚徽廠家的工業(yè)液晶屏憑借卓越的高分辨率成像技術(shù),在眾多品牌中脫穎而出,為各行業(yè)提供了清晰、細(xì)膩的視覺呈現(xiàn)。接下來,將深入探究聚徽工業(yè)液晶屏高分辨率成像技術(shù)背后的奧秘。
    的頭像 發(fā)表于 07-11 18:08 ?1124次閱讀
    梨树县| 洪雅县| 诸暨市| 英吉沙县| 宜黄县| 海原县| 图木舒克市| 古田县| 盐源县| 成安县| 磐石市| 宝应县| 尤溪县| 漾濞| 沙河市| 平谷区| 襄汾县| 广灵县| 彰化县| 来宾市| 荆门市| 四会市| 云南省| 平远县| 大同市| 保靖县| 泸州市| 朔州市| 濮阳县| 高唐县| 盐边县| 武强县| 鄂尔多斯市| 德清县| 宜昌市| 全南县| 芮城县| 清涧县| 富顺县| 玉环县| 安吉县|