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

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

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

如何在您的項(xiàng)目中添加LCD顯示器

李剛 ? 來(lái)源:hy381 ? 作者:hy381 ? 2023-02-23 09:40 ? 次閱讀

這篇文章來(lái)源于DevicePlus.com英語(yǔ)網(wǎng)站的翻譯稿。

通過(guò)使用Arduino擴(kuò)展板,您可以利用各種有用功能和可直接插入擴(kuò)展板的工具來(lái)快速升級(jí)自己的項(xiàng)目。為了向您展示這項(xiàng)操作的簡(jiǎn)易性,我們將介紹如何把可編程LCD顯示器添加到您的Arduino項(xiàng)目中,使您可以用它來(lái)顯示文本,并通過(guò)一系列的按鈕來(lái)為您提供輸入功能。

Arduino擴(kuò)展板和LCD顯示器的工作原理

我們之前已經(jīng)討論過(guò)Arduino擴(kuò)展板,但是以防您不太熟悉,我們?cè)谶@里進(jìn)行一些簡(jiǎn)單介紹。擴(kuò)展板是Arduino項(xiàng)目的附加組件,可以直接插入您的開(kāi)發(fā)板以增加新的功能。有些是可堆疊的,所以您可以將多個(gè)模塊添加到單個(gè)項(xiàng)目中。它們通常帶有自己的軟件庫(kù),您可以將這些軟件庫(kù)導(dǎo)入到您的草圖中,以便像使用所連接的其他組件那樣輕松對(duì)其進(jìn)行控制。

在本指南中,我們將使用LCD顯示器擴(kuò)展板。這種擴(kuò)展板有多種變體,我們將要使用的是 1602鍵盤(pán)擴(kuò)展板,它可以在每行中顯示最多16個(gè)字符并顯示2行(所以為1602),一次最多可以顯示32個(gè)字符。它還帶有六個(gè)按鈕:四個(gè)方向按鈕(向左、向右、向上和向下),一個(gè)選擇按鈕和一個(gè)重置按鈕。
該擴(kuò)展板有28個(gè)引腳,與Arduino Uno上的引腳對(duì)應(yīng)。擴(kuò)展板通常設(shè)計(jì)為可直接插入相應(yīng)的開(kāi)發(fā)板上,因此如果您的擴(kuò)展板和開(kāi)發(fā)板上的引腳不匹配,可能需要換一個(gè)擴(kuò)展板?;谝陨锨闆r,如果您已經(jīng)有了一個(gè)Arduino Uno和正確的擴(kuò)展板,就可以直接將擴(kuò)展板插入開(kāi)發(fā)板了(我們將在下面的接線部分詳細(xì)討論這一過(guò)程)。

但是,LCD顯示器不需要用到板上的所有引腳。這時(shí)候那些直通式引腳就可以派上用場(chǎng)了。您可以將電線連接到LCD顯示器擴(kuò)展板的開(kāi)路觸點(diǎn)上,這將會(huì)連接到Arduino。這很方便,因?yàn)槿绱艘粊?lái)您就可以不用因?yàn)槭褂脭U(kuò)展板而丟失任何開(kāi)路引腳了。

最后一部分工作是導(dǎo)入LiquidCrystal庫(kù)。這個(gè)庫(kù)提供了簡(jiǎn)單的命令來(lái)執(zhí)行顯示文本、滾動(dòng)文本、控制光標(biāo)位置等操作。只要您的LCD顯示器擴(kuò)展板與此庫(kù)兼容(大多數(shù)流行的擴(kuò)展板都兼容),那么您就可以導(dǎo)入此庫(kù),然后使用非常簡(jiǎn)單的命令來(lái)對(duì)顯示器進(jìn)行控制了。

所需部件

由于擴(kuò)展板直接插入Arduino開(kāi)發(fā)板,所以該項(xiàng)目不需要使用大量零部件。這也是Arduino的出色之處:它們可以極大地簡(jiǎn)化您的項(xiàng)目。但是,在開(kāi)始之前,您還是需要準(zhǔn)備好以下部件:

Arduino Uno

pYYBAGPy0keAIANsAAA5UDjpMbU093.png

LCD顯示器擴(kuò)展板 pYYBAGPy0kuALMG7AACbdQjaXFE323.jpg
Arduino IDE

pYYBAGPy0k2AN7DzAAAw7VCpJJQ071.png

您還需要一個(gè)USB數(shù)據(jù)線!

我們將在下面的接線部分討論如何插入擴(kuò)展板,但在此之前,我們首先了解一下軟件部分。

代碼

Arduino IDE中自帶有一些草圖,位于 File > Examples > Liquid Crystal的示例說(shuō)明中。出于本項(xiàng)目的目的,我們將使用HelloWorld草圖。您可以在IDE中加載該草圖,以下為該草圖的完整代碼:

*/

// include the library code:
#include

// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

void setup() {
// set up the LCD’s number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print(“hello, world!”);
}

void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis() / 1000);
}

現(xiàn)在,我們來(lái)了解一下該代碼所執(zhí)行的工作。

#include

這行代碼用于導(dǎo)入LiquidCrystal庫(kù)。如果想要使用此庫(kù)中的命令,則必須將這一行寫(xiě)在代碼頂部。

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

接下來(lái)的這兩行用于以4位模式初始化代表控制LCD顯示器所需的六個(gè)引腳的變量:rs、enable、d4、d5、d6和d。Arduino文檔中有更多以8位模式控制LCD顯示器的引腳的有關(guān)信息,但是本示例中不需要這部分內(nèi)容。

第二行用于將這些引腳(通過(guò)您剛剛創(chuàng)建的變量)分配給一個(gè)名為L(zhǎng)iquidCrystal的新型變量,在本例中,將該變量命名為lcd。這使您可以將LCD顯示器作為一個(gè)整體進(jìn)行尋址,而不必控制每一個(gè)單獨(dú)的引腳。如此一來(lái),您就可以通過(guò)簡(jiǎn)單的命令行來(lái)使用LiquidCrystal庫(kù)中的其他命令了。

void setup() {
// set up the LCD’s number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print(“hello, world!”);
}

在setup()部分,只有兩個(gè)命令:第一個(gè),lcd.begin()(在我們剛剛創(chuàng)建的變量之上調(diào)用 begin()命令),用于初始化LCD顯示器。第二個(gè)用于打印語(yǔ)句“hello, world!”。

此print() 命令與您過(guò)去使用的命令不同。Serial.print()命令用于將數(shù)據(jù)打印到串行端口,而該打印命令用于將文本打印到LCD顯示器??梢栽谀蒙鲜龇椒▌?chuàng)建的任意LCD對(duì)象上對(duì)其進(jìn)行調(diào)用。

void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis() / 1000);
}

在本節(jié)中使用了另外兩行代碼來(lái)更改光標(biāo)位置并打印出設(shè)備重置之后經(jīng)過(guò)的毫秒數(shù)。您可能會(huì)再一次感受到每項(xiàng)任務(wù)的操作有多么簡(jiǎn)單,只需要使用庫(kù)中的一行代碼就可以完成操作。setCursor()函數(shù)用于將光標(biāo)放在您指定的位置。由于行和列都從零開(kāi)始計(jì)數(shù),坐標(biāo)(0,1)指的是第二行的第一列。顯示器再次使用print()顯示自設(shè)備重置之后經(jīng)歷的毫秒數(shù)。

接線

如果您只使用了擴(kuò)展板,那么在本項(xiàng)目中就沒(méi)有其他特別的接線工作了。只需將LCD擴(kuò)展板底部的引腳與Arduino Uno板上的引腳對(duì)齊即可。建議從Arduino板最遠(yuǎn)端的A0和RX0引腳開(kāi)始對(duì)齊。
引腳組中存在自然間距(例如引腳7和8之間,以及A0 和vin之間)可以幫助您正確排列引腳。對(duì)齊后,以合適的力度按下擴(kuò)展板,直到所有引腳都嚴(yán)密地連接到開(kāi)發(fā)板上。

在LCD擴(kuò)展板上,您將看到在有許多引腳上焊接點(diǎn)(與擴(kuò)展板之間連接的地方)的旁邊都有空的觸點(diǎn)。如果您想添加額外的電線或組件,可以選擇在這些觸點(diǎn)上進(jìn)行連接。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 顯示器
    +關(guān)注

    關(guān)注

    21

    文章

    5009

    瀏覽量

    140318
  • lcd
    lcd
    +關(guān)注

    關(guān)注

    34

    文章

    4438

    瀏覽量

    168183
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6477

    瀏覽量

    187673
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    用于連接ILI9341顯示器和Wemos Lolin D32 Pro載板

    ~ 3.3VI/O 接口電壓下工作,并集成電壓跟隨電路以產(chǎn)生驅(qū)動(dòng) LCD 的電壓電平。這個(gè)項(xiàng)目中使用的顯示模塊有一個(gè)內(nèi)置的觸摸界面,里面有一個(gè) SD 卡讀卡
    發(fā)表于 09-05 06:10

    何在i.MX8MP項(xiàng)目中使用2個(gè)具有觸摸功能的LVDS顯示器?

    我們將在 i.MX8MP 項(xiàng)目中使用 2 個(gè)具有觸摸功能的 LVDS 顯示器(1280-800 分辨率)。兩個(gè) LVDS 顯示器都是單通道(4 通道)。i.MX8MP 可以為我們的顯示器
    發(fā)表于 03-23 07:22

    CRT與LCD顯示器的性能分析

    CRT與LCD顯示器的性能分析:本文說(shuō)明了CRT 顯示器LCD 顯示器的結(jié)構(gòu)特點(diǎn)和工作原理, 對(duì)兩種不同的
    發(fā)表于 08-09 10:41 ?26次下載

    lcd顯示器工作原理

    lcd顯示器簡(jiǎn)介 液晶顯示器(LCD)英文全稱為L(zhǎng)iquid Crystal Display,它一種是采用了液晶控制透光度技術(shù)
    發(fā)表于 10-29 00:01 ?9373次閱讀

    LCD顯示器概述

    LCD顯示器概述         
    發(fā)表于 12-26 17:12 ?815次閱讀

    TFT LCD顯示器的驅(qū)動(dòng)原理

    TFT LCD顯示器的驅(qū)動(dòng)原理  TFT 液晶顯示器的驅(qū)動(dòng)原理 (一)     我們針對(duì)TFT LCD的整體系統(tǒng)面來(lái)做介紹, 也就是對(duì)其驅(qū)動(dòng)原
    發(fā)表于 04-23 15:15 ?6061次閱讀

    LCD顯示器電源

    電源設(shè)計(jì)的參考設(shè)計(jì):LCD 顯示器電源。
    發(fā)表于 05-11 15:18 ?20次下載

    LCD即將超越OLED顯示器?

    臺(tái)灣日亞化學(xué)(NICHIA)總經(jīng)理戴圳家表示,蘋(píng)果智慧型手機(jī)采用OLED顯示器,的確對(duì)LED市場(chǎng)造成一定的影響與挑戰(zhàn)。不過(guò),LCD背光與LCD面板已是相當(dāng)成熟的技術(shù),雖然在智慧型手機(jī)全熒幕的表現(xiàn)上
    發(fā)表于 07-04 04:27 ?808次閱讀

    crt顯示器lcd顯示器的區(qū)別

      crt顯示器lcd顯示器目前已經(jīng)在市場(chǎng)中得到了廣泛的運(yùn)用,那么它們之間有什么區(qū)別呢?我們一起來(lái)看看。
    發(fā)表于 12-07 15:15 ?1.9w次閱讀

    用于信息娛樂(lè)或群集顯示器的汽車(chē)LCD/顯示器偏壓解決方案

    和VGL)。 在許多情況下,您可以使用LCD偏壓電源,如TPS65150-Q1(一種適用于信息娛樂(lè)或群集顯示器的汽車(chē)LCD/顯示器偏壓解決方案,可大大簡(jiǎn)化
    的頭像 發(fā)表于 04-25 16:51 ?6276次閱讀

    基于鉆井深度顯示器和帶有Arduino支持的7段顯示器設(shè)計(jì)

    在這個(gè)Arduino項(xiàng)目中,通過(guò)陀螺傳感的鉆井深度顯示器和帶有Arduino支持的7段顯示器,來(lái)讀取所需位置的深度。
    的頭像 發(fā)表于 05-20 17:14 ?2682次閱讀
    基于鉆井深度<b class='flag-5'>顯示器</b>和帶有Arduino支持的7段<b class='flag-5'>顯示器</b>設(shè)計(jì)

    何在嵌入式應(yīng)用程序中使用電子紙顯示器

    了解電子紙顯示器的工作原理以及如何將低功耗電子紙顯示器集成到的嵌入式項(xiàng)目中
    的頭像 發(fā)表于 05-10 16:05 ?1942次閱讀
    如<b class='flag-5'>何在</b>嵌入式應(yīng)用程序中使用電子紙<b class='flag-5'>顯示器</b>

    何在項(xiàng)目中添加數(shù)碼管

    這篇文章來(lái)源于DevicePlus.com英語(yǔ)網(wǎng)站的翻譯稿。在之前的項(xiàng)目中,我們已經(jīng)展示了如何使用Arduino來(lái)控制LED矩陣。但是,如果項(xiàng)目只需要顯示數(shù)字,那么最好使用七段數(shù)碼
    的頭像 發(fā)表于 03-23 15:13 ?1007次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>您</b>的<b class='flag-5'>項(xiàng)目中</b><b class='flag-5'>添加</b>數(shù)碼管

    何在Raspberry Pi項(xiàng)目中添加Siri控制

    目的:本教程旨在教如何使用SiriControl開(kāi)源Python框架在RaspberryPi項(xiàng)目中添加Siri功能和控制功能。
    的頭像 發(fā)表于 02-27 10:27 ?805次閱讀
    如<b class='flag-5'>何在</b>Raspberry Pi<b class='flag-5'>項(xiàng)目中</b><b class='flag-5'>添加</b>Siri控制

    何在Arduino中使用20x4 I2C字符LCD顯示器

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用20x4 I2C字符LCD顯示器.zip》資料免費(fèi)下載
    發(fā)表于 06-28 15:57 ?0次下載
    如<b class='flag-5'>何在</b>Arduino中使用20x4 I2C字符<b class='flag-5'>LCD</b><b class='flag-5'>顯示器</b>