簡介
Me TFT 液晶屏模組主要由一個 LCD 顯示屏組成,並通過串口(Serial)與主控板通訊,從而顯示大小不同、顏色不同的字體和圖形。本模組由 MCU 及暫存記憶晶片集成,暫存記憶晶片內儲存了漢字、字母及圖形,可以通過串行端口輕鬆使用。本模組的介面是藍/灰色色標,說明是雙數位介面,需要連接到主控板上藍色或灰色標識的介面。技術規格
- 作業電壓:5V
- 支援觸控:不支援
- 螢幕尺寸:2.2"
- 螢幕解析度:320(寬) x 240(高)
- 控制模式:串口連接(Serial Port)
- 預設鮑率(Baud Rate):9600
- 模組大小:78mm (L) x 48mm (W) x 18mm (H)
特點
- 暫存記憶體容量:2M
- 只佔2個 IO 口(串口腳)
- 支援自動抽取式24點陣、32點陣、48點陣、64點陣漢字
- 支持點、線、圓、方框、填充方框等繪圖
- 支援 JPG 格式真彩圖形的顯示
- 模組的白色區域是與金屬梁接觸的參考區域
- 支援 4 個不同方向展示
- 使用 RJ25 介面連線方便
- 配有接頭支援絕大多數 Arduino 系列主控板
引腳定義
Me TFT 液晶屏模組端口有四個引腳,其功能如下:
序號 | 引腳 | 功能 |
1 | TX | 連接埠數據發送口 |
2 | RX | 連接埠數據接收口 |
3 | VCC | 接電源 |
4 | GND | 接地 |
連接模式
以RJ25連接
以杜邦線連接
當使用杜邦線連接到 Arduino Uno 主控板時,模組 TX、RX 引腳需要分別連接到 RX、TX 口上,如下圖所示:原理解析
Me TFT 液晶屏模組含電壓轉換器、STM32 晶片和串列 Flash 2M 記憶體。相比其他顯示器,它只需要兩個串口進行通信,操作簡單,容易連接。可以通過專用的串口助手設置傳輸串列傳輸速率,並將想要顯示的圖片處理好後存入 Flash 中,在自己的專案中實現開機圖片顯示,圖片的切換等功能。除此之外,還可以支援背景圖與漢字疊加,圖形操作介面顯示。應用場景包含:萬年曆,電壓電流錶等。
編程指南
如果使用 Arduino 程式設計,需要使用資源庫 Makeblock-Library-master 來控制TFT液晶屏。
Me TFT 液晶屏模組指令列表:
指令 | 說明 |
選擇連接埠 | |
用c顏色清屏 | |
設置背景色c,顯示漢字等時無點陣時填的顏色 | |
設定自選顏色,其中c是顏色序號(0 ~ 63), n是64K色的數值(0 ~ 65535)。 | |
在(x,y)的地方畫一個顏色c的點 | |
從(x1,y1)用顏色c畫一條直線到(x2,y2) | |
用顏色c畫一個方框,左上角(x1,y1)到右下角(x2,y2) | |
用顏色c畫一個實心方框,左上角(x1,y1)到右下角(x2,y2) | |
在(x,y)處畫第n幅圖 | |
在(x,y)處用顏色c畫一個半徑r的圓 (x,y)為圓心 | |
在(x,y)處用顏色c顯示一行12點陣字 | |
在(x,y)處用顏色c顯示一行16點陣字 | |
在(x,y)處用顏色c顯示一行24點陣字 | |
在(x,y)處用顏色c顯示一行32點陣字 | |
在(x,y)處用顏色c顯示一行48點陣字 | |
在(x,y)處用顏色c顯示一行64點陣字 | |
設置螢幕顯示的方向;n為0~3,分別對應屏的4個方向, 可以使用此調整橫豎屏顯示; DR0; 橫屏顯示 DR1; 豎屏顯示 DR2; 橫屏倒立 DR3; 豎屏倒立 |
- 指令內的逗號後不可加入空格,否則不能正常顯示。
- 語句中用的 x 和 y 是指螢幕的座標,其x的值由0 ~ 319,而y的值則由0 ~ 239。
(0, 0) 是橫向左上角的位置。 - 語句中用的c是色彩索引號,顏色是由RGB構成的,系統支援的64K色其實是65536中顏色,使用16位元二進位(2位元組)組成,16位元,分成:R紅色5位;G綠色6位;B藍色5位元,就是俗稱RGB565模式;常規的電腦顏色描述是由3位元組組成,每位元組一色,比如紅色描述為:0xFF0000;綠色描述為0x00FF00;而藍色描述為0x0000FF,就是俗稱RGB888模式。
- Me TFT 液晶屏模組內置有18種(0 ~ 17)可供使用:
程式範例
#include "MeOrion.h" /* 本範例以Me Orion作主控板 */
#include <SoftwareSerial.h>
MeSerial TFTScreen(PORT_4); /* 本範例中以連接埠4連接Me TFT 液晶屏模組 */
void setup() {
TFTScreen.begin(9600); /* 設定Me TFT 液晶屏模組的Buad Rate至9600 */
}
void loop() {
TFTScreen.print("CLS(0);"); /*先用黑色清屏*/
TFTScreen.print("DR0;"); /* 設置橫屏顯示 */
TFTScreen.println("DS64(64,104,'Hello world!',4);"); /* 注意每頁最後一行須用println指令 */
delay(1000);
/* 可以多頁顯示,但須記得每頁清屏 */
}
其他
RGB888 轉換成 RGB565
int rgb888_to_rgb565(int r8, int g8, int b8) {
int r5 = (r8 * 249 + 1014) >> 11;
int g6 = (g8 * 253 + 505) >> 10;
int b5 = (b8 * 249 + 1014) >> 11;
return r5 * 2048 + g6 * 32 + b5; /* 回傳 0 ~ 65535 之間的數,可直接用於〝SCC(c,n);〞的指令內 */
}
這個一個大約多少錢
回覆刪除我買的時候是港幣100至200元,實際情況要與各地代理查詢了。
回覆刪除