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

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

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

如何在不使用I2C通信的情況下將NodeMCU與16x2 LCD連接

科技觀察員 ? 來源:circuitdigest ? 作者:里沙布·耆那教 ? 2022-11-14 17:24 ? 次閱讀

在本教程中,我們將了解如何在不使用 I2C 通信的情況下將 NodeMCU 與 16x2 LCD連接。在這里,我們將使用移位寄存器 SN74HC595 連接 16x2 LCD。即使不使用任何移位寄存器,我們也可以對(duì)其進(jìn)行接口。我們將在本教程中看到這兩種接口。兩種接口之間的主要區(qū)別在于NodeMCU中使用的引腳數(shù)量。

所需材料:

節(jié)點(diǎn)單片機(jī) ESP12E

SN74HC595 移位寄存器 IC

16x2液晶模塊

電位器

公-母線

面包板

移位寄存器:

在數(shù)字系統(tǒng)中,移位寄存器是觸發(fā)器的組合,觸發(fā)器串聯(lián)并共享相同的時(shí)鐘。在這個(gè)級(jí)聯(lián)封裝中,一個(gè)觸發(fā)器的數(shù)據(jù)輸出充當(dāng)下一個(gè)觸發(fā)器的數(shù)據(jù)輸入,這導(dǎo)致電路將存儲(chǔ)在其中的位數(shù)組移動(dòng)一個(gè)位置。

我們將要使用的IC是SN74HC595N。它是一款簡(jiǎn)單的8位串行并行輸出移位寄存器IC。簡(jiǎn)而言之,該IC允許通過在并行和串行格式之間轉(zhuǎn)換數(shù)據(jù)來向微控制器添加額外的輸入或輸出。我們的微控制器使用該IC的3個(gè)引腳串行發(fā)送數(shù)據(jù)。實(shí)際上,從輸入引腳獲取 8 位信息后,8 位輸出將出現(xiàn)在 8 個(gè)引腳上。

IC SN74HC595N 的引腳圖和引腳功能如下:

poYBAGNyCWSAOG-sAAAky6ujAME421.png

poYBAGNyCWaAHInQAACFwltjO-s828.png

您可以在此處找到74HC595N與Arduino和Raspberry Pi的接口。

使用 ESP12 接口 LCD,無需使用移位寄存器:

如果您已將16x2 LCD與Arduino板一起使用,那么它將非常容易。您只需在NodeMCU中連接引腳,就像使用Arduino板一樣。

NodeMCU中有16個(gè)GPIO引腳,我們需要6個(gè)引腳和GND,vcc。根據(jù)下面給出的電路圖連接引腳:

pYYBAGNyCWyAPC1vAAEFwwc4OGA734.png

我們將使用4 個(gè)數(shù)據(jù)引腳和 RS、LCD 的 EN,它們連接為:

液晶屏的d7引腳==節(jié)點(diǎn)MCU的D8引腳

液晶屏的 d6 引腳 == 節(jié)點(diǎn)MCU 的 D7 引腳

液晶屏的d5引腳==節(jié)點(diǎn)MCU的D6引腳

液晶屏的d4引腳==節(jié)點(diǎn)MCU的D5引腳

液晶顯示器的 RS 引腳 == 節(jié)點(diǎn)MCU 的 D2 引腳

液晶屏的 en 引腳 == 節(jié)點(diǎn)MCU 的 D3 引腳

可以將任何 GPIO 用于這些連接。

法典:

#include

const int RS = D2, EN = D3, d4 = D5, d5 = D6, d6 = D7, d7 = D8;

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);

}

正如我們所看到的,我們已經(jīng)使用了 6 個(gè)引腳的 NodeMCU。這個(gè)小板可用的引腳已經(jīng)更少了,我們只剩下很少的引腳來連接其他傳感器。

因此,為了克服這個(gè)問題,我們將使用移位寄存器IC,這將最大限度地減少no。節(jié)點(diǎn)MCU上使用的引腳。

使用 ESP12 接口 LCD,使用移位寄存器 SN74HC595N:

移位寄存器IC中提供8個(gè)輸出引腳和3個(gè)輸入引腳。我們將使用 6 個(gè)輸出引腳與 LCD 連接,使用 3 個(gè)輸入引腳連接到 NodeMCU。

LCD與IC的連接如下:

液晶屏D7引腳==IC引腳1

液晶屏D6引腳==IC引腳2

液晶屏D5引腳==IC引腳3

液晶屏D4引腳==IC引腳4

液晶屏的RS引腳==IC的引腳7

液晶屏引腳 == IC 引腳 15

節(jié)點(diǎn)MCU與IC的連接:

節(jié)點(diǎn)MCU的D6引腳==IC的引腳14,IC的數(shù)據(jù)引腳

節(jié)點(diǎn)MCU的D7引腳==IC的引腳12,IC的鎖存引腳

節(jié)點(diǎn)MCU的D8引腳==IC的引腳11,IC的時(shí)鐘引腳

將 IC 的引腳 16 和 PIN 10 連接到 Vcc。

將 IC 的引腳 8 和引腳 13 連接到接地。

根據(jù)下圖仔細(xì)制作電路:

pYYBAGNyCXGAShnEAAEnsOUJtjY201.png

現(xiàn)在我們的硬件已準(zhǔn)備好進(jìn)行編程。

1. Arduino IDE的Goto Sketch菜單。

2. 單擊“包括庫(kù)”。

3.現(xiàn)在,單擊添加.zip庫(kù)。選擇您從給定鏈接下載的zip文件并完成。

現(xiàn)在上傳下面給出的代碼,您將看到打印LCD的消息。

法典:

#include // include the library

LiquidCrystal595 lcd(D6,D7,D8); // data_pin, latch_pin, clock_pin

void setup() {

lcd.begin(16,2); // 16 characters, 2 rows

lcd.clear();

lcd.setCursor(0,0);

lcd.print("lcd with nodemcu");

}

void loop() {

lcd.setCursor(0,1);

lcd.print("Success");

}

代碼很簡(jiǎn)單,因?yàn)槲覀冎恍枰贚iquidCrystal595 lcd()中給出數(shù)據(jù)引腳、鎖存引腳和時(shí)鐘引腳作為參數(shù);其余代碼與我們之前所做的相同。

這樣,您剛剛通過使用移位寄存器保存了 3 個(gè)引腳的 NodeMCU。

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

    關(guān)注

    34

    文章

    4426

    瀏覽量

    167480
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1487

    瀏覽量

    123740
  • NODEMCU
    +關(guān)注

    關(guān)注

    13

    文章

    289

    瀏覽量

    21403
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何16x2 LCD與Atmega16 AVR連接并顯示簡(jiǎn)單的歡迎消息

    在本教程中,我們將了解如何 16x2 LCD 與 Atmega16 AVR 微控制器連接并顯示簡(jiǎn)單的歡迎消息。
    的頭像 發(fā)表于 11-11 17:29 ?3164次閱讀
    如何<b class='flag-5'>將</b><b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>與Atmega<b class='flag-5'>16</b> AVR<b class='flag-5'>連接</b>并顯示簡(jiǎn)單的歡迎消息

    MPU6050與Raspberry Pi連接并顯示16x2 LCD值的步驟

    今天在本文中,我們將將此MPU6050與Raspberry Pi連接,并顯示16x2 LCD上的值。
    的頭像 發(fā)表于 11-17 16:42 ?3457次閱讀
    <b class='flag-5'>將</b>MPU6050與Raspberry Pi<b class='flag-5'>連接</b>并顯示<b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>值的步驟

    在帶gps的NodeMCU ESP8266和帶i2clcd中使用什么電池?

    我是硬件方面的初學(xué)者,我想在鋰離子電池 lgdbhg21865 18650 上運(yùn)行帶有 gps 模塊的 NodeMCU 和帶有 i2cLCD 16x2 作為獨(dú)立設(shè)備,我可以就該怎
    發(fā)表于 05-22 09:50

    NodeMCU 16X2 LCD代碼問題如何解決?

    SCL D3 #define SDA D4 LiquidCrystal_I2C lcd(0x27, 16, 2); void setup
    發(fā)表于 06-09 08:00

    I2C LCD 器件通過驅(qū)動(dòng)帶有 I2C 接口的 2 線式 16 字符 LCD

    I2C LCD 器件通過驅(qū)動(dòng)帶有 I2C 接口的 2 線式 16 字符 LCD
    發(fā)表于 10-10 08:22 ?13次下載
    <b class='flag-5'>I2C</b> <b class='flag-5'>LCD</b> 器件通過驅(qū)動(dòng)帶有 <b class='flag-5'>I2C</b> 接口的 <b class='flag-5'>2</b> 線式 <b class='flag-5'>16</b> 字符 <b class='flag-5'>LCD</b>

    帶Arduino Uno的I2C 16x2 LCD接口(僅4線)

    電子發(fā)燒友網(wǎng)站提供《帶Arduino Uno的I2C 16x2 LCD接口(僅4線).zip》資料免費(fèi)下載
    發(fā)表于 10-18 09:47 ?0次下載
    帶Arduino Uno的<b class='flag-5'>I2C</b> <b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>接口(僅4線)

    何在arduino中使用I2c LCD模塊

    電子發(fā)燒友網(wǎng)站提供《如何在arduino中使用I2c LCD模塊.zip》資料免費(fèi)下載
    發(fā)表于 10-26 14:29 ?1次下載
    如<b class='flag-5'>何在</b>arduino中使用<b class='flag-5'>I2c</b> <b class='flag-5'>LCD</b>模塊

    LCD I2C 16x2顯示屏的Arduino DTH22濕度溫度

    電子發(fā)燒友網(wǎng)站提供《帶LCD I2C 16x2顯示屏的Arduino DTH22濕度溫度.zip》資料免費(fèi)下載
    發(fā)表于 11-07 16:07 ?0次下載
    帶<b class='flag-5'>LCD</b> <b class='flag-5'>I2C</b> <b class='flag-5'>16x2</b>顯示屏的Arduino DTH22濕度溫度

    使用16x2 LCD鍵盤屏蔽的按鈕

    電子發(fā)燒友網(wǎng)站提供《使用16x2 LCD鍵盤屏蔽的按鈕.zip》資料免費(fèi)下載
    發(fā)表于 11-09 14:18 ?0次下載
    使用<b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>鍵盤屏蔽的按鈕

    連接一個(gè)16x2字符LCD

    電子發(fā)燒友網(wǎng)站提供《連接一個(gè)16x2字符LCD.zip》資料免費(fèi)下載
    發(fā)表于 11-17 09:31 ?0次下載
    <b class='flag-5'>連接</b>一個(gè)<b class='flag-5'>16x2</b>字符<b class='flag-5'>LCD</b>

    如何連接和使用16x2 I2C LCD的教程

    電子發(fā)燒友網(wǎng)站提供《如何連接和使用16x2 I2C LCD的教程.zip》資料免費(fèi)下載
    發(fā)表于 11-22 14:36 ?0次下載
    如何<b class='flag-5'>連接</b>和使用<b class='flag-5'>16x2</b> <b class='flag-5'>I2C</b> <b class='flag-5'>LCD</b>的教程

    在Arduino上使用16x2 LCD

    電子發(fā)燒友網(wǎng)站提供《在Arduino上使用16x2 LCD.zip》資料免費(fèi)下載
    發(fā)表于 12-12 14:32 ?0次下載
    在Arduino上使用<b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>

    如何16x2 LCD與Raspberry pi4連接

    電子發(fā)燒友網(wǎng)站提供《如何16x2 LCD與Raspberry pi4連接.zip》資料免費(fèi)下載
    發(fā)表于 06-19 11:45 ?0次下載
    如何<b class='flag-5'>將</b><b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>與Raspberry pi4<b class='flag-5'>連接</b>

    何在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中使用20<b class='flag-5'>x</b>4 <b class='flag-5'>I2C</b>字符<b class='flag-5'>LCD</b>顯示器

    如何連接16x2 LCD顯示器

    電子發(fā)燒友網(wǎng)站提供《如何連接16x2 LCD顯示器.zip》資料免費(fèi)下載
    發(fā)表于 07-12 09:21 ?0次下載
    如何<b class='flag-5'>連接</b><b class='flag-5'>16x2</b> <b class='flag-5'>LCD</b>顯示器