USB + Serial RGB Backlight Character LCD Backpack:便捷的字符顯示解決方案
在電子項目中,為項目或計算機(jī)添加字符顯示功能是常見需求。而 Adafruit 推出的 USB 或 TTL 串行背包(USB + Serial RGB Backlight Character LCD Backpack)為這一需求提供了極為便捷的解決方案。
文件下載:782.pdf
一、產(chǎn)品概述
這款定制的 PCB 板可以安裝在任何“標(biāo)準(zhǔn)”字符 LCD(16x2 或 20x4 尺寸)的背面,能實現(xiàn)打印文本、自動滾動、設(shè)置背光、調(diào)整對比度、制作自定義字符、開啟和關(guān)閉光標(biāo)等功能。它甚至能處理 RGB 背光 LCD,對背光進(jìn)行全 8 位 PWM 控制,可將背景顏色隨意更改,如紅色、綠色、藍(lán)色等,也可關(guān)閉背光以獲得中性背景。
背包內(nèi)部采用了支持 USB 的 AT90USB162 芯片,它能通過迷你 B 型 USB 端口和 TTL 串行輸入線接收命令。USB 接口在 Windows、Mac 和 Linux 系統(tǒng)中會顯示為 COM/串行端口,背包會自動選擇正在使用的輸入數(shù)據(jù)。對于 USB 連接,可在任何波特率下工作;對于 TTL 連接,默認(rèn)波特率為 9600,也可通過命令將波特率設(shè)置為 2400、4800、9600、19200、28800 或 57600 波特,且波特率會在開機(jī)時顯示在 LCD 上。任何自定義設(shè)置,如波特率、背光顏色、亮度、啟動畫面等,都會永久存儲在 EEPROM 中。其命令接口與流行的“Matrix Orbital”規(guī)格兼容,還增加了一些用于 RGB 背光和設(shè)置 LCD 尺寸的額外命令。若不想使用命令,直接向 LCD 發(fā)送 ASCII 字符,文本就會神奇地顯示出來。
二、數(shù)據(jù)傳輸接口
(一)USB 接口
USB 接口是最便捷的方式。只需用迷你 B 型電纜將背包連接到計算機(jī),即可實現(xiàn)供電和數(shù)據(jù)傳輸。在 Windows、Mac 和 Linux 計算機(jī)上,背包會顯示為“USB 串行端口”。Windows 需要 INF 文件,而 Mac 和 Linux 無需驅(qū)動。Windows 會創(chuàng)建 COM 端口,Mac/Linux 會在 /dev/cu.usbserialXX 或類似路徑下創(chuàng)建設(shè)備,插入設(shè)備后運行 dmesg 命令可查看設(shè)備名稱。使用 USB 時,可使用任何終端程序以任意波特率連接到端口并發(fā)送文本和命令數(shù)據(jù),波特率對 USB 連接無影響,選擇 9600 或其他方便的波特率即可。
(二)TTL 串行接口
可通過紅/黑/白線進(jìn)行連接。將黑線接地,紅線接 +5V 提供電源,白線為 5V TTL 串行輸入。默認(rèn)情況下,背包配置為 9600 波特、8 位、無校驗、1 個停止位,也可根據(jù)需要配置波特率。通電時,背包會在顯示屏上閃爍 100 毫秒波特率,若有疑問,可在觀察顯示屏的同時連接。也可通過 USB 連接(USB 不使用波特率)并在那里重置波特率。對于 USB 連接的硬接線,有標(biāo)準(zhǔn)的“5x1”引腳排列的 USB 分線;對于 TTL 連接的硬接線,PCB 邊緣有 RX 和 TX 引腳的分線。
三、組裝步驟
(一)焊接 LCD 顯示屏
首先,將字符 LCD 顯示屏焊接到背包上。需注意,僅支持字符類型的顯示屏,尺寸最大為 20x4。所有 Adafruit 字符顯示屏都適用,但不能保證其他顯示屏能正常工作。若購買的套件中有額外的藍(lán)色 10K 電位器,該部件并非此套件必需,可用于其他項目。背包配有一段排針,可用于安裝顯示屏,使用無焊面包板能更方便地將排針安裝整齊。
(二)準(zhǔn)備排針
將排針折斷,使其與 LCD 的引腳數(shù)量匹配。將排針長端朝下放入面包板,然后將 LCD 放在上面。若使用有兩行引腳的 LCD,要確保使用與示例圖像匹配的那一行。
(三)焊接排針和背包
用烙鐵焊接所有排針,然后將背包與 LCD 的角落對齊,使背包上的孔與 LCD 位置一致,最后完全焊接背包。
四、文本發(fā)送與測試
(一)發(fā)送文本
要顯示文本,只需發(fā)送 ASCII 字符。需注意一些特殊字符:換行符(0x0A 或 'n')會用空格填充當(dāng)前行的剩余部分并移動到下一行;回車符(0x0D 或 'r')不會被處理;退格符(0x08)會將字符后退一個空格并用空格替換最后一個字符以擦除它。唯一特殊的字符是 0xFE,它是“命令開始”字符。
(二)USB 測試
測試 LCD 和背包的最簡單方法是將其連接到計算機(jī),使用終端程序發(fā)送數(shù)據(jù)。用任何迷你 B 型 USB 電纜連接到背包,Windows 需要指向 INF 驅(qū)動文件(可在下載部分找到),Mac 和 Linux 無需驅(qū)動。插入背包后,會創(chuàng)建一個串行端口,Windows 中稱為 COM 端口,可在設(shè)備管理器的“端口”中查看;Mac/Linux 可運行 dmesg 命令查看端口名稱,也可在終端窗口中輸入 ls /dev/cu.* 查看連接和斷開電纜時出現(xiàn)或消失的項目。知道端口名稱后,可使用喜歡的終端程序進(jìn)行連接,例如使用 Arduino 內(nèi)置的基本終端。若使用功能更強(qiáng)大的監(jiān)視器,如 CoolTerm(Mac)或 RealTerm(Windows),可觀察每個字符的輸入情況。選擇與背包對應(yīng)的 COM 串行端口,打開串行端口監(jiān)視器,在文本框中輸入“Hello World!”,點擊發(fā)送后,文本將傳輸?shù)奖嘲@示出來。若要測試更多命令,可查看 GitHub 存儲庫中的 Python 腳本。
(三)TTL 串行測試
可以使用 Arduino 微控制器發(fā)送文本和命令,當(dāng)然也可使用任何能配置為 9600 波特串行輸出的微控制器。將 JST 電纜連接到背包,紅線接 +5V,黑線接地,白線接數(shù)字引腳 #2(可根據(jù)需要更改)??蓮?GitHub 存儲庫下載示例代碼。在代碼中,可設(shè)置顯示尺寸、RGB 背光并創(chuàng)建自定義字符。設(shè)置顯示尺寸、對比度、亮度、關(guān)閉光標(biāo)、創(chuàng)建自定義字符、清屏、歸位等操作都有相應(yīng)的命令,每個命令后建議添加延遲,以確保數(shù)據(jù)發(fā)送和 LCD 更新。在循環(huán)中,可調(diào)整背光顏色,讓背景顏色不斷變化。
五、命令參考
(一)基本命令
- 顯示開啟:0xFE 0x42,打開顯示屏背光,參數(shù)表示開啟的分鐘數(shù),但該超時功能未處理,此參數(shù)會被忽略。
- 顯示關(guān)閉:0xFE 0x46,關(guān)閉顯示屏背光。
- 設(shè)置亮度:0xFE 0x99,設(shè)置背光的整體亮度(顏色分量單獨設(shè)置,亮度設(shè)置在顏色設(shè)置后生效),設(shè)置會保存到 EEPROM。
- 設(shè)置并保存亮度:0xFE 0x98,與上述功能相同。
- 設(shè)置對比度:0xFE 0x50,設(shè)置顯示屏對比度,一般 180 - 220 的值效果較好,設(shè)置會保存到 EEPROM。
- 設(shè)置并保存對比度:0xFE 0x91,與上述功能相同。
- 自動滾動開啟:0xFE 0x51,當(dāng)文本接收且顯示屏無空間時,文本會自動滾動,使第二行變?yōu)榈谝恍?,新文本始終顯示在顯示屏底部。
- 自動滾動關(guān)閉:0xFE 0x52,當(dāng)文本接收且顯示屏無空間時,文本會換行到顯示屏頂部開始顯示。
- 清屏:0xFE 0x58,清除顯示屏上的所有文本。
- 更改啟動畫面:0xFE 0x40,發(fā)送此命令后,最多可寫入 32 個字符(16x2 顯示屏)或 80 個字符(20x4 顯示屏),這些字符將在啟動時作為啟動畫面顯示。若不需要啟動畫面,可寫入多個空格。
- 移動和更改光標(biāo):
- 設(shè)置光標(biāo)位置:0xFE 0x47,設(shè)置文本輸入光標(biāo)的位置,列和行編號從 1 開始,左上角第一個位置為 (1, 1)。
- 歸位:0xFE 0x48,將光標(biāo)置于位置 (1, 1)。
- 光標(biāo)后退:0xFE 0x4C,將光標(biāo)后退一個空格,若在位置 (1, 1),會“環(huán)繞”到最后一個位置。
- 光標(biāo)前進(jìn):0xFE 0x4D,將光標(biāo)前進(jìn)一個空格,若在最后一個位置,會“環(huán)繞”到 (1, 1) 位置。
- 下劃線光標(biāo)開啟:0xFE 0x4A,開啟下劃線光標(biāo)。
- 下劃線光標(biāo)關(guān)閉:0xFE 0x4B,關(guān)閉下劃線光標(biāo)。
- 塊狀光標(biāo)開啟:0xFE 0x53,開啟閃爍的塊狀光標(biāo)。
- 塊狀光標(biāo)關(guān)閉:0xFE 0x54,關(guān)閉閃爍的塊狀光標(biāo)。
(二)RGB 背光和 LCD 尺寸
- 設(shè)置 RGB 背光顏色:0xFE 0xD0,將背光設(shè)置為紅、綠、藍(lán)分量顏色,值范圍為 0 到 255(一個字節(jié)),設(shè)置會保存到 EEPROM。例如,將背光設(shè)置為紅色的命令是 0xFE 0xD0 0xFF 0x0 0x0,藍(lán)色是 0xFE 0xD0 0x0 0x0 0xFF,白色是 0xFE 0xD0 0xFF 0xFF 0xFF。
- 設(shè)置 LCD 尺寸:0xFE 0xD1,可配置背包所連接顯示屏的尺寸,設(shè)置會保存到 EEPROM,只需設(shè)置一次,可能需要重啟電源以使更改從 EEPROM 重新加載并生效。
(三)自定義字符
- 創(chuàng)建自定義字符:0xFE 0x4E,在指定位置創(chuàng)建自定義字符,位置范圍為 0 到 7(共 8 個位置),需發(fā)送 8 個字節(jié)以指示字符的外觀。
- 將自定義字符保存到 EEPROM 庫:0xFE 0xC1,將自定義字符保存到 EEPROM 庫以供后續(xù)使用,每個庫有 4 個庫,每個庫有 8 個位置。
- 從 EEPROM 庫加載自定義字符:0xFE 0xC0,將保存到 EEPROM 庫的所有 8 個字符加載到 LCD 的內(nèi)存中。
(四)通用輸出
通用輸出有 4 個未被背包使用的引腳,可將這些引腳設(shè)置為高電平或低電平。GPO1 標(biāo)記為 PB0,GPO2 標(biāo)記為 PC2,GPO3 標(biāo)記為 PC4,GPO4 標(biāo)記為 PC7。
- GPO 關(guān)閉:0xFE 0x56,將通用引腳設(shè)置為低電平(0V)。
- GPO 開啟:0xFE 0x57,將通用引腳設(shè)置為高電平(5V)。
- GPO 初始狀態(tài):0xFE 0xC3,設(shè)置 GPO 引腳的“初始”狀態(tài)。
(五)不支持的功能
- 設(shè)置自動換行開啟(0xFE 0x43)和設(shè)置自動換行關(guān)閉(0xFE 0x44)不支持,自動換行功能始終開啟。
- 初始化/放置中大型數(shù)字、水平條和垂直條不支持。
六、下載資源
(一)文件
- 測試軟件(https://adafru.it/aXM)和 AT90 固件(https://adafru.it/aXM)可在 GitHub 上獲取。背包使用 Teensy v1.0 框架,雖無修改固件的教程或支持,但可自行定制背包固件。還可通過觸摸復(fù)位引腳接地啟動 AT90USB162 芯片的引導(dǎo)加載程序,它是一個支持 av109 的 USB 引導(dǎo)加載程序,avrdude 支持它,但目前 Arduino IDE 不支持(暫無預(yù)計支持時間)。
- EagleCAD PCB 文件可在 GitHub(https://adafru.it/rVC)上獲取。
- LCD Smartie(https://adafru.it/aXN)是一個流行的字符 LCD 驅(qū)動程序。
- Adafruit Fritzing 庫中的 Fritzing 對象(https://adafru.it/aP3)。
(二)驅(qū)動
提供 Windows XP/7/Vista 的 INF 驅(qū)動,解壓后在“新硬件向?qū)А敝袑?dǎo)航到該文件夾。點擊鏈接(https://adafru.it/d4R)可下載 usb_serial_backpack - driver.zip。還有 Windows 8 簽名驅(qū)動(處于測試階段,可嘗試使用),點擊鏈接(https://adafru.it/Ccb)可下載 USB - Serial RGB LCD Backpack 簽名驅(qū)動。
總之,Adafruit 的 USB + Serial RGB Backlight Character LCD Backpack 為電子工程師在項目中添加字符顯示功能提供了強(qiáng)大而便捷的解決方案,豐富的功能和詳細(xì)的命令參考能滿足不同的需求。大家在使用過程中遇到問題或有新的創(chuàng)意,不妨留言分享,讓我們一起探索更多可能性。
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
2241瀏覽量
67779 -
字符顯示
+關(guān)注
關(guān)注
0文章
6瀏覽量
5130
發(fā)布評論請先 登錄
探索MB203LCD:16x2字符液晶顯示模塊的卓越性能
Adafruit USB + Serial LCD Backpack Add - On:輕松為項目添加字符顯示
GWT - C1627A - RGB LCD模塊技術(shù)解析與使用指南
字符型LCD使用指南:從入門到實踐
深入剖析TW8816B3:多功能LCD顯示解決方案
探索EPSON S1D13743 WQVGA LCD控制器:高性能顯示解決方案
探索MAX1889:TFT LCD的理想電源解決方案
TPS65150:LCD顯示的高效電源解決方案
TPS65149:高度集成的LCD偏置解決方案
TPS65198:LCD TV和顯示器的集成電平轉(zhuǎn)換器解決方案
TPS65642:筆記本、平板和顯示器的LCD偏置解決方案
【正點原子STM32N647開發(fā)板試用】+ RGB顯示
DDR200T LCD顯示模塊
USB顯示器方案
USB + Serial RGB Backlight Character LCD Backpack:便捷的字符顯示解決方案
評論