ESP32 마이크로파이썬 LCD 20x4
이 튜토리얼은 MicroPython을 사용하여 ESP32 보드와 함께 20x4 LCD I2C 디스플레이를 사용하는 방법을 안내합니다. 배우게 될 내용은:
- ESP32에 20x4 LCD I2C 연결하는 방법
- 20x4 LCD I2C에서 텍스트, 정수, 부동 소수점 숫자 및 사용자 지정 문자를 표시하기 위한 MicroPython 코드 작성 방법
![ESP32 마이크로파이썬와 lcd i2c 20x4](https://newbiely.kr/images/cover/esp32-lcd-20x4-with-micropython.jpg)
준비물
1 | × | ESP32 ESP-WROOM-32 개발 모듈 | 쿠팡 | 아마존 | |
1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
1 | × | LCD 20x4 | 쿠팡 | 아마존 | |
1 | × | 점퍼케이블 | 쿠팡 | 아마존 | |
1 | × | (추천) ESP32용 스크루 터미널 확장 보드 | 쿠팡 | 아마존 | |
1 | × | (추천) ESP32용 전원 분배기 | 쿠팡 | 아마존 |
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.
LCD I2C 20x4 소개
핀아웃
LCD 20x4 I2C는 I2C 인터페이스를 사용하여 연결되며 4개의 핀이 있습니다.
- GND 핀: 이 핀을 GND (0 볼트)에 연결하세요.
- VCC 핀: LCD에 전원을 공급하기 위해 이 핀을 VCC (5 볼트)에 연결하세요.
- SDA 핀: I2C 데이터 신호로 사용됩니다.
- SCL 핀: I2C 클럭 신호로 사용됩니다.
![lcd 20x4 i2c 핀아웃](https://newbiely.kr/images/tutorial/lcd-20x4-i2c-pinout.jpg)
LCD 좌표
LCD I2C 20x4에는 20개의 열과 4개의 행이 포함됩니다. 열과 행은 모두 0부터 시작합니다.
![ESP32 마이크로파이썬 lcd i2c 좌표](https://newbiely.kr/images/tutorial/lcd-20x4-coordinate.jpg)
선연결
- ESP32와 lcd 20x4를 breadboard을 사용하여 연결하는 방법 (USB 케이블로 전원 공급)
![ESP32 마이크로파이썬 lcd 20x4 i2c 배선 다이어그램](https://newbiely.kr/images/tutorial/esp32-micropython-lcd-20x4-i2c-wiring-diagram.jpg)
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
- ESP32와 lcd 20x4를 브레드보드를 사용하여 연결하는 방법 (Vin 핀을 통해 전원 공급)
![ESP32 마이크로파이썬 lcd 20x4 i2c 배선도](https://newbiely.kr/images/tutorial/esp32-micropython-lcd-20x4-wiring-diagram.jpg)
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
- USB 케이블을 통해 전원 공급받는 나사 단자 블록 브레이크아웃 보드를 사용하여 ESP32와 lcd 20x4를 연결하는 방법
![ESP32와 lcd 20x4 연결 방법](https://newbiely.kr/images/tutorial/how-to-connect-esp32-and-lcd-20x4.jpg)
- Vin 핀을 통해 전원 공급되는 screw terminal block breakout board를 사용하여 ESP32와 lcd 20x4를 연결하는 방법
![ESP32와 lcd 20x4 연결 방법](https://newbiely.kr/images/tutorial/how-to-wire-esp32-and-lcd-20x4.jpg)
LCD I2C | ESP32 |
---|---|
VCC | Vin 5V |
GND | GND |
SDA | GPIO21 (SDA) |
SCL | GPIO22 (SCL) |
ESP32 마이크로파이썬 코드
아래의 MicroPython 코드는 LCD 20x4 디스플레이에 문자열, 정수 및 실수 숫자를 표시합니다.
/*
* 이 ESP32 마이크로파이썬 코드는 newbiely.kr 에서 개발되었습니다
* 이 ESP32 마이크로파이썬 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다.
* 상세한 지침 및 연결도에 대해서는 다음을 방문하세요:
* https://newbiely.kr/tutorials/esp32-micropython/esp32-micropython-lcd-20x4
*/
from machine import I2C, Pin
from DIYables_MicroPython_LCD_I2C import LCD_I2C
import utime
# The I2C address of your LCD (Update if different)
I2C_ADDR = 0x27 # Use the address found using the I2C scanner
# Define the number of rows and columns on your LCD
LCD_COLS = 20
LCD_ROWS = 4
# Initialize I2C
i2c = I2C(1, scl=Pin(22), sda=Pin(21), freq=400000)
# Initialize LCD
lcd = LCD_I2C(i2c, I2C_ADDR, LCD_ROWS, LCD_COLS)
# Setup function
lcd.backlight_on()
lcd.clear()
# Main loop function
while True:
lcd.clear()
lcd.set_cursor(0, 0); # Move cursor at the first row, first column
lcd.print("LCD 20x4"); # Display text at the first row
lcd.set_cursor(0, 1); # Move cursor at the second row, first column
lcd.print("I2C Address: 0x27"); # Display text at the second row
lcd.set_cursor(0, 2); # Move cursor at the third row, first column
lcd.print("DIYables"); # Display text at the third row
lcd.set_cursor(0, 3); # Move cursor at the fourth row, first column
lcd.print("www.diyables.io"); # Display text at the fourth row
utime.sleep(2)
lcd.clear()
lcd.set_cursor(0, 0) # Move to the beginning of the first row
lcd.print("Int: ")
lcd.print(str(197)) # Print integer
lcd.set_cursor(0, 1) # Move to the beginning of the second row
lcd.print("Float: ")
lcd.print(str(26.39)) # Print float
utime.sleep(2)
자세한 사용 방법
Thonny IDE를 사용하여 ESP32에서 MicroPython 코드를 설정하고 실행하는 방법에 대한 지침은 다음과 같습니다:
- 컴퓨터에 Thonny IDE가 설치되어 있는지 확인하세요.
- ESP32 보드에 MicroPython 펌웨어가 로드되어 있는지 확인하세요.
- MicroPython을 사용하는 ESP32가 처음이라면, 단계별 지침이 제공된 ESP32 마이크로파이썬 - 시작하기 가이드를 확인하세요.
- 제공된 다이어그램에 따라 LCD 20x4 디스플레이를 ESP32에 연결하세요.
- USB 케이블을 사용하여 ESP32 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 Thonny IDE를 실행하세요.
- Thonny IDE에서 Tools Options로 이동하세요.
- Interpreter 탭에서 드롭다운 메뉴로부터 MicroPython (ESP32)를 선택하세요.
- 올바른 포트가 선택되어 있는지 확인하세요. Thonny IDE는 보통 자동으로 감지하지만, 경우에 따라 수동으로 선택해야 할 수도 있습니다 (예: Windows의 COM12 또는 Linux의 /dev/ttyACM0).
- Thonny IDE에서 Tools Manage packages로 이동하세요.
- “DIYables-MicroPython-LCD-I2C”를 검색한 후, DIYables가 만든 LCD I2C 라이브러리를 찾으세요.
- DIYables-MicroPython-LCD-I2C를 선택한 후, LCD I2C 라이브러리를 설치하기 위해 Install 버튼을 클릭하세요.
![ESP32 마이크로파이썬 lcd i2c 라이브러리](https://newbiely.kr/images/tutorial/esp32-micropython-lcd-i2c-library.jpg)
- 위에 제공된 코드를 복사하여 Thonny IDE의 에디터에 붙여넣으세요.
- ESP32 보드에 스크립트를 저장하려면:
- ◦ 저장 버튼을 클릭하거나 Ctrl+S 키를 사용하세요.
- ◦ 저장 대화 상자에서 두 개의 섹션(이 컴퓨터, MicroPython 장치)이 표시됩니다. MicroPython 장치를 선택하세요.
- ◦ 파일 이름을 main.py으로 저장하세요.
- 녹색 Run 버튼을 클릭하거나 F5 키를 눌러 스크립트를 실행하세요. 스크립트가 실행됩니다.
- LCD 20x4 디스플레이에서 결과를 확인하세요.
![ESP32 마이크로파이썬 20x4 lcd](https://newbiely.kr/images/tutorial/esp32-micropython-20x4-lcd.jpg)
ESP32 - 20x4 LCD - 사용자 정의 문자
LCD 16x2와 유사하며, ESP32 마이크로파이썬 - LCD I2C 튜토리얼의 사용자 정의 문자 섹션을 참조한 후, 이를 LCD 20x4 디스플레이에 맞게 조정할 수 있습니다.