Skip to content

Latest commit

 

History

History
171 lines (106 loc) · 7.23 KB

21-component_i2c_lcd1602.rst

File metadata and controls

171 lines (106 loc) · 7.23 KB

Note

こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。

参加する理由は?

  • エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
  • 学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
  • 独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
  • 特別割引:最新製品の独占割引をお楽しみください。
  • 祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。

👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!

I2C LCD 1602

img/21_i2c_lcd.png

はじめに

I2C LCD1602は、I2Cプロトコルを用いて16x2(16列と2行)の液晶ディスプレイ(LCD)にテキストやキャラクターを表示するデバイスです。Arduinoプロジェクトからの情報、例えばセンサーの読み取り値、メッセージ、メニューなどを表示するために使用できます。I2Cモジュールには、LCDディスプレイ用のパラレルデータにI2Cシリアルデータを変換するPCF8574 I2Cチップが内蔵されています。

原理

I2C LCD1602は、通常のLCD1602と、その背面に取り付けられたI2Cモジュールで構成されています。このI2Cモジュールは、ArduinoのI/OポートをI2Cプロトコルを使用して拡張するチップです。I2Cプロトコルは、SDA(シリアルデータ)とSCL(シリアルクロック)の2本のワイヤーを使用するシリアル通信プロトコルです。複数のデバイスがこの2本のワイヤーとユニークなアドレスを用いて通信できます。

I2Cモジュールは、Arduinoからの信号をLCDのコマンドに変換します。LCDには、16x2のセルがあり、それぞれのセルは5x8のドットで構成されています。これらのドットは、電圧をかけることでオンまたはオフにできます。LCDは、ドットの異なる組み合わせをオンまたはオフにすることで、さまざまなキャラクターやシンボルを表示できます。

img/21_ic2_lcd_2.png



I2Cアドレス

基本的にデフォルトアドレスは0x27で、一部の場合には0x3Fになることもあります。

デフォルトアドレスの0x27を例に取ると、A0/A1/A2パッドを短絡することでデバイスアドレスを変更できます。デフォルト状態では、A0/A1/A2は1ですが、パッドが短絡されると、A0/A1/A2は0になります。

img/21_i2c_address.jpg


バックライト/コントラスト

バックライトはジャンパーキャップで有効にでき、キャップを外すとバックライトが無効になります。背面の青いポテンショメーターは、コントラスト(最も明るい白と最も暗い黒との間の明るさの比率)を調整するために使用されます。

img/21_back_lcd1602.jpg


  • ジャンパーキャップ: このキャップによりバックライトを有効にでき、キャップを外すとバックライトが無効になります。
  • ポテンショメーター: これは、表示されるテキストの鮮明度を調整するために使用されます。時計回りに回すと増加し、反時計回りに回すと減少します。

Note

LCDの配線が完了したら、Arduinoをオンにして、I2Cモジュール上のポテンショメーターを回して、最初の行に四角が表示されるまでコントラストを調整し、LCDが正常に動作することを確認してください。



使い方

使用する電子部品

  • Arduino Uno R4またはR3ボード * 1
  • I2C LCD1602 * 1
  • ジャンパーワイヤー

回路の組立て

img/21_I2C_lcd_circuit.png



コード

Note

ライブラリをインストールするには、Arduinoライブラリマネージャーで "LiquidCrystal I2C" と検索してインストールしてください。



コードの説明

  1. ライブラリの取り込みとLCDの初期化:

    LiquidCrystal I2Cライブラリがインクルードされ、それに続いてLiquidCrystal_I2Cクラスを使用してLCDオブジェクトが作成されます。この際、I2Cアドレス、列数、行数が指定されます。

    Note

    ライブラリをインストールするには、Arduinoライブラリマネージャーで "LiquidCrystal I2C" と検索してインストールしてください。

    #include <LiquidCrystal_I2C.h>
    LiquidCrystal_I2C lcd(0x27, 16, 2);
    
  2. setup() 関数:

    setup() 関数はArduinoが起動すると一度だけ実行されます。この関数内で、LCDが初期化され、表示がクリアされ、バックライトがオンにされます。その後、LCDに2つのメッセージが表示されます。

    void setup() {
      lcd.init();       // initialize the LCD
      lcd.clear();      // clear the LCD display
      lcd.backlight();  // Make sure backlight is on
    
      // Print a message on both lines of the LCD.
      lcd.setCursor(2, 0);  //Set cursor to character 2 on line 0
      lcd.print("Hello world!");
    
      lcd.setCursor(2, 1);  //Move cursor to character 2 on line 1
      lcd.print("LCD Tutorial");
    }
    

追加のアイデア

  • 温度センサーを組み込み、LCDに現在の室温を表示する。

さらに多くのプロジェクト