LCD(Liquid Crystal Display) JP: 두 판 사이의 차이

아두위키 : Arduwiki
편집 요약 없음
태그: 수동 되돌리기
잔글편집 요약 없음
 
(같은 사용자의 중간 판 5개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{#seo:|title=아두위키 : LCD 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, LCD, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 LCD를 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:1602LCDimg1.jpg|class=coders100]][[파일:1602LCDimg2.jpg|class=coders100]]
{{#seo:|title=アドゥイノウィキ : LCDガイド|title_mode=append|keywords=アドゥイノ, 情報科学, メイカーレッスン, 実技評価, LCD, アドゥイノ作品, キャップストーンプロジェクト, アドゥイノ例コード|description=アドゥイノでLCDを制御する方法(基本情報、回路、例コード)を紹介します。情報科学やメイカーレッスンで活用可能です。}}[[파일:1602LCDimg1.jpg|class=coders100]][[파일:1602LCDimg2.jpg|class=coders100]]


아두이노 LCD 모듈은 문자나 숫자를 디스플레이하기 위해 사용하는 모듈로, 주로 16x2 또는 20x4 크기의 LCD 디스플레이가 많이 사용됩니다. 본 문서는 I2C 통신이 가능한 LCD를 다룹니다. 일반적인 병렬 인터페이스 대신 I2C 인터페이스를 사용하면 핀 수를 줄이고 배선을 간소화할 수 있습니다. 아두이노 보드와 쉽게 연결하여 다양한 프로젝트에서 정보를 시각적으로 표현할 수 있습니다.
アドゥイノのLCDモジュールは、文字や数字を表示するために使用されるモジュールで、主に16x2または20x4サイズのLCDディスプレイが多く使用されています。このドキュメントでは、I2C通信が可能なLCDを扱います。一般的な並列インターフェースではなくI2Cインターフェースを使用すると、ピン数を減らし配線を簡素化できます。アドゥイノボードと簡単に接続して、様々なプロジェクトで情報を視覚的に表現できます。




== '''주요 사양''' ==
== '''主な仕様''' ==


* '''디스플레이 크기''' : 16x2, 20x4가 많이 사용됩니다.
* '''ディスプレイサイズ''' : 16x2、20x4が一般的です。
* '''전원 공급 범위''' : 5V (아두이노 보드에서 직접 공급)
* '''電源供給範囲''' : 5V(アドゥイノボードから直接供給)
* '''인터페이스''' : I2C (SDA, SCL)
* '''インターフェース''' : I2C(SDA、SCL)
* '''문자 세트''' : ASCII 문자 세트 지원
* '''文字セット''' : ASCII文字セット対応
* '''I2C 주소''' : 기본 0x27 또는 0x3F (모듈에 따라 다름)
* '''I2Cアドレス''' : 基本的に0x27または0x3F(モジュールによって異なります)




== '''기능''' ==
== '''機能''' ==


* '''문자 디스플레이''' : 알파벳, 숫자, 특수 문자를 표시할 수 있습니다. 도형이나 그래픽의 경우 매우 제한적이며 그래픽 LCD나 OLED가 더 적합합니다.
* '''文字表示''' : アルファベット、数字、特殊文字を表示できます。図形やグラフィックの場合は非常に制限があり、グラフィックLCDやOLEDがより適しています。
* '''백라이트 제어''' : 백라이트를 켜고 끌 수 있으며, 조도를 조절할 수 있습니다.
* '''バックライト制御''' : バックライトをオン/オフし、明るさを調整できます。
* '''커서 제어''' : setCursor()를 활용해 커서 위치를 이동하거나 숨길 수 있습니다.
* '''カーソル制御''' : setCursor()を利用してカーソルの位置を移動したり隠したりできます。
* '''스크롤 기능''' : 텍스트를 좌우로 스크롤할 수 있습니다.
* '''スクロール機能''' : テキストを左右にスクロールできます。
* 뒷 면에 가변저항이 있어 글자 밝기 조절이 가능합니다.
* 背面に可変抵抗があり、文字の明るさを調整可能です。


[[파일:LCD1602 가변저항.png|class=coders50]]
[[파일:LCD1602 가변저항.png|class=coders50]]




== '''활용 예제''' ==
== '''活用例''' ==


=== '''라이브러리''' ===
=== '''ライブラリ''' ===
*Wire (기본 라이브러리이므로 설치할 필요 없습니다.)
* Wire(基本ライブラリのため、インストール不要)
*LiquidCrystal I2C : [https://arduwiki.com/wiki/아두이노_라이브러리 라이브러리 설치방법] 링크를 통해 설치 방법을 확인하세요.
* LiquidCrystal I2C:[https://arduwiki.com/wiki/아두이노_라이브러리 ライブラリのインストール方法]リンクでインストール方法を確認してください。




=== '''연결''' ===
=== '''接続''' ===
사이즈(16x2, 20x4)와 관계없이 동일합니다.
サイズ(16x2、20x4)に関係なく同じです。
{| class="wikitable"
{| class="wikitable"
!I2C LCD 모듈 핀
!I2C LCDモジュールピン
!아두이노 우노 핀
!アドゥイノUNOピン
|-
|-
|VCC
|VCC
52번째 줄: 52번째 줄:




=== '''1. 모듈 주소 확인하기''' ===
=== '''1. モジュールアドレスの確認''' ===


==== 1-1. 코드 ====
==== 1-1. コード ====
<syntaxhighlight lang="c++" line="1">
<syntaxhighlight lang="c++" line="1">
#include <Wire.h>
#include <Wire.h>
100번째 줄: 100번째 줄:
</syntaxhighlight>
</syntaxhighlight>


===== 1-2. 실행 결과 =====
===== 1-2. 実行結果 =====
[[파일:LCD1602 주소 확인.png|class=coders100]]
[[파일:LCD1602 주소 확인.png|class=coders100]]




==== 2. LCD에 텍스트 출력하기 ====
==== 2. LCDにテキストを表示 ====


==== 2-2. 코드 ====
==== 2-2. コード ====
<syntaxhighlight lang="c++" line="1">
<syntaxhighlight lang="c++" line="1">
#include <Wire.h>
#include <Wire.h>
113번째 줄: 113번째 줄:


void setup()
void setup()
{
{
  //사용 전에 lcd를 초기화 해줍니다.
    //使用前にlcdを初期化します。
  lcd.init();
    lcd.init();
 
  //lcd의 백라이트를 작동합니다.
  lcd.backlight();
 
  //lcd의 위치를 (0,0)으로 지정합니다.(좌상단 기준)
  lcd.setCursor(0, 0);
 
  //출력할 문구를 작성합니다.
  lcd.print("Gongzipsa");
 
  //lcd의 위치를 (0,1)로 지정합니다.
  lcd.setCursor(0, 1);


  //val 값을 출력합니다.
    //lcdのバックライトを作動させます。
  int val = 1004;
    lcd.backlight();
  lcd.print(val);
   
    //lcdの位置を(0,0)に指定します。(左上基準)
    lcd.setCursor(0, 0);
   
    //出力する文句を作成します。
    lcd.print("Gongzipsa");
   
    //lcdの位置を(0,1)に指定します。
    lcd.setCursor(0, 1);
   
    //val値を出力します。
    int val = 1004;
    lcd.print(val);
}
}


138번째 줄: 138번째 줄:




==== 2-2. 실행 결과[[파일:LCD1602 예제.jpg|class=coders100]] ====
==== 2-2. 実行結果[[파일:LCD1602 예제.jpg|class=coders100]] ====
 
== '''참고 문서''' ==
[https://docs.arduino.cc/learn/electronics/lcd-displays/ 아두이노 LCD Doc]
 


== '''구매 링크''' ==
== '''参考文書''' ==
[https://gongzipsa.com/shop/search.php?q=lcd 공집사몰]
[https://docs.arduino.cc/learn/electronics/lcd-displays/ アドゥイノ LCD Doc]

2025년 3월 19일 (수) 20:37 기준 최신판

アドゥイノのLCDモジュールは、文字や数字を表示するために使用されるモジュールで、主に16x2または20x4サイズのLCDディスプレイが多く使用されています。このドキュメントでは、I2C通信が可能なLCDを扱います。一般的な並列インターフェースではなくI2Cインターフェースを使用すると、ピン数を減らし配線を簡素化できます。アドゥイノボードと簡単に接続して、様々なプロジェクトで情報を視覚的に表現できます。


主な仕様

  • ディスプレイサイズ : 16x2、20x4が一般的です。
  • 電源供給範囲 : 5V(アドゥイノボードから直接供給)
  • インターフェース : I2C(SDA、SCL)
  • 文字セット : ASCII文字セット対応
  • I2Cアドレス : 基本的に0x27または0x3F(モジュールによって異なります)


機能

  • 文字表示 : アルファベット、数字、特殊文字を表示できます。図形やグラフィックの場合は非常に制限があり、グラフィックLCDやOLEDがより適しています。
  • バックライト制御 : バックライトをオン/オフし、明るさを調整できます。
  • カーソル制御 : setCursor()を利用してカーソルの位置を移動したり隠したりできます。
  • スクロール機能 : テキストを左右にスクロールできます。
  • 背面に可変抵抗があり、文字の明るさを調整可能です。


活用例

ライブラリ


接続

サイズ(16x2、20x4)に関係なく同じです。

I2C LCDモジュールピン アドゥイノUNOピン
VCC 5V
GND GND
SDA A4
SCL A5


1. モジュールアドレスの確認

1-1. コード

#include <Wire.h>
 
void setup()
{
  Wire.begin();
  Serial.begin(9600);
  Serial.println("\nI2C Scanner");
}
 
void loop()
{
  byte error, address;
  int nDevices;
  Serial.println("Scanning...");
  nDevices = 0;
  for(address = 1; address < 127; address++ ) 
  {
    Wire.beginTransmission(address);
    error = Wire.endTransmission();
    if (error == 0)
    {
      Serial.print("I2C device found at address 0x");
      if (address<16) 
        Serial.print("0");
      Serial.print(address,HEX);
      Serial.println("  !");
      nDevices++;
    }
    else if (error==4) 
    {
      Serial.print("Unknow error at address 0x");
      if (address<16) 
        Serial.print("0");
      Serial.println(address,HEX);
    }    
  }
  if (nDevices == 0)
    Serial.println("No I2C devices found\n");
  else
    Serial.println("done\n");
  delay(5000);          
}
1-2. 実行結果


2. LCDにテキストを表示

2-2. コード

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
    //使用前にlcdを初期化します。
    lcd.init();

    //lcdのバックライトを作動させます。
    lcd.backlight();
    
    //lcdの位置を(0,0)に指定します。(左上基準)
    lcd.setCursor(0, 0);
    
    //出力する文句を作成します。
    lcd.print("Gongzipsa");
    
    //lcdの位置を(0,1)に指定します。
    lcd.setCursor(0, 1);
    
    //val値を出力します。
    int val = 1004;
    lcd.print(val);
}

void loop(){}


2-2. 実行結果

参考文書

アドゥイノ LCD Doc