フォト
2025年4月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      
無料ブログはココログ

« arduino用の5V定電圧電源を安価に確保する | トップページ | 2台のarduinoをI2Cバスで接続して通信を行う実験 »

2013年12月29日 (日)

arduinoでI2C接続LCDモジュールを利用する

秋月電子でarduinoで使えそうなLCDモジュールを買ったので早速試してみました。
製品: I2C接続キャラクタLCD 16x2行白色バックライト付(ACM1602NI-FLW-FBW-M01)

この製品はI2Cインタフェースでの接続ということでarduinoとは4線で接続できます。
実際にarduinoで本LCDモジュールを使用してる紹介がエレキジャック(CQ出版社)のHP
紹介されています。
LiquidCrystal互換ライブラリも公開されておりこれを使えば即利用できます。
取りあえず動作確認のため、このライブラリとサンプルソースをそのまま利用させて
頂きました。記事の解説は分かりやすく大変参考になりました。

I2Cについては、きむ茶ガレージハウスさんのHPI2Cの実験の記事で勉強させて
いただきました。

電子回路作成後、問題なく動作しました(写真は動作確認の状況)。

Dscn2263

電子回路の作成

本製品は3.3V電源で利用するのが前提ですが、絶対最大定格が5.5Vなので5V電源でも
利用可能です。

ただし、5Vで利用する場合はバックアップライト用のLEDに流す電流を調整するために
抵抗を付ける必要があります。

必要部品
・バックライトLED用電流調整抵抗     330Ω x 1
・I2C SCL、SDA端子用プルアップ抵抗 2.2kΩ x 2
・液晶コントラス調整用10kΩ半固定抵抗 x 1(添付資料より選定)

抵抗値の決定
ArduinoでI2C制御LCD ACM1602を使う(1)の解説に回路図がありそのまま
利用すれば良いのですが、勉強のため自分で思考して選択しました。

・バックライトLED用電流調整抵抗
  添付資料より、順方向電圧 Vf = 3.1V、定格電流 If = 20mAなので
  電源V  = 5V 、流す電流を5mAとすると、
     R = (5.0 -3.1) / 0.005 = 380Ω

  手持ちの330Ωを利用することにします。

・I2C SCL、SDA端子用プルアップ抵抗
  NXPセミコンダクターズの公開資料 「I2C バス仕様およびユーザーマニュアル(日本語訳)」
  「7. I2C バスデバイスからバスラインへの電気接続」に計算方法があります。
  私は分かりやすく解説している「電子工作の実験室(後閑さん)」のHP
  「I2Cモジュールの使い方」の「I2Cの接続構成とプルアップ抵抗」を参考にさせて
  頂きました。

  arduinoのI2C用のライブラリWireを使う場合、転送速度は100kbpsに固定されてるそうな ので
  条件式で求めると1.5K~10KΩとなります。手持ちの2.2KΩを利用しました。
 
  I2Cを使ったことがないので、ライブラリのソースを読んでまずは勉強です。

« arduino用の5V定電圧電源を安価に確保する | トップページ | 2台のarduinoをI2Cバスで接続して通信を行う実験 »

arduino」カテゴリの記事

AVR」カテゴリの記事

表示器制御関連」カテゴリの記事

コメント

 はじめまして Arduino歴5ヶ月の「電子工作中年」です。

 このページで使用されているI2C接続LCDを利用しようと思って、ググってみたら、同じココログでArduinoを活用されているこのブログを発見しました。

 昔の電子工作少年から、数十年のブランクがありますので、あちらこちらのサイトを見ながら勉強中です。これからもお邪魔します。

小丸さん

コメントありがとうこざいます。
私も実は「昔の電子工作少年」でして、Arduinoは去年から始めた「電子工作中年」です。
つたない内容のブログですがよろしくです。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: arduinoでI2C接続LCDモジュールを利用する:

« arduino用の5V定電圧電源を安価に確保する | トップページ | 2台のarduinoをI2Cバスで接続して通信を行う実験 »