• Skip to main content
  • Skip to primary sidebar

プログラミング入門ナビ by Proglus(プログラス)

プログラミング学習初心者のための情報メディア

本ページにプロモーションが含まれる場合があります

You are here: Home / Archives for 電子工作入門 / Arduino入門

Arduino入門

【Arduino入門】LCD(液晶ディスプレイ)に文字を表示しよう

2022-01-22 By プログラミング入門ナビ編集部

Arduinoを使って、LCD(1602A)に文字を表示するプログラミングする方法を学習します。

動画で学習する

チャンネル登録してね!

LCDとは?

LCDは、Liquid Crystal Displayの略で、日本語でいうと液晶ディスプレイのことです。

ブレットボードで接続

ブレッドボードで組むとこのような感じです。

Arduinoは、入門書などで一番メジャーな、Arduino UNOを使います。
厳密にいうと、互換ボードです。

LCDの型番は1602Aです。

Amazonでベストセラーになっている、elegoo(エレゴ)のスターターキットに入っていた、LCDです。
キットを買ってしまえば、何も考えなくても、検証するためのいろいろなパーツが揃うので便利です。

16文字を2行表示できます。

操作メニューを表示したり、センサーから取得をした値を出力するなど、色々な使い方ができそうです。

LCD 1602AのPINアサイン

これらのPINを利用します。

  • VSS・・・グランドピン
  • VDD・・・+5V付与
  • VO・・・LCDのコントラストを調整するためのピン
  • RSとRWとE・・・Arduinoと、LCD間の通信の制御
  • D4〜D7の4本・・・実際のデータの受け渡し
  • AとK・・・LEDバックライトを制御するための端子です。

接続図

接続図を起こすと、このようになります。

ArduinoとLCDによるHello Worldプログラミング

それでは、Hello Word!と表示するプログラムを、実行してみましょう。

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  lcd.begin(16, 2);
  lcd.print("Hello, World!");
}

void loop() {

}

簡単なコードの説明ですが、
includeで、このLCDを操作するために、ライブラリを読み込みます。
Arduinoのどのピンをディスプレイのどのピンに接続するかを定義します。
第1引数が、LCDのRSピンに接続するArduino側のピン番号
第2引数が、LCDのRWピンに接続するArduino側のピン番号
第3〜第6引数が、dataピンに接続するArduino側のピン番号

setup関数は、プログラム実行時に1回呼び出されます。

lcd.begin関数で LCDの列と行の数を設定します。
16文字、2行を設定します。

lcd.print関数で「Hello, World!」とLCDにメッセージを出力します。

プログラムをマイコンボードに書き込み、
1行目に、Hello. World!と表示されればOKです。

また、ボリューム抵抗で、コントラストを調整できます。

表示位置を2行目にするには、

lcd.setCursor関数を使います。

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  lcd.begin(16, 2);
  lcd.setCursor(0, 1);
  lcd.print("Hello, World!");
}

void loop() {
}

2行目に表示されました。

尚、lcd.setCursor関数の、
第2引数に0を指定すると、1行目、
第2引数に1を指定すると、2行目に表示されます。

列の表示位置の指定

あと、列の表示位置、
言い換えると、横方向の表示位置を調整するには、
第一引数をのパラメーター調整します。

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  lcd.begin(16, 2);
  lcd.setCursor(2, 1);
  lcd.print("Hello, world!");
}

void loop() {
}

3列目から表示されるようになりました。

動的に表示内容を変更する

setup関数は1回しか呼ばれませんが、
loop関数を使うことで随時、表示内容を変えることもできます。

たとえば、プログラムを起動してからの、秒数をLCDに表示してみましょう。

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  lcd.begin(16, 2);
  lcd.setCursor(2, 1);
  lcd.print("Hello, world!");
}

void loop() {
  lcd.setCursor(0, 0);
  lcd.print(millis() / 1000);
}

プログラムの実行を開始した時から現在までの時間をミリ秒単位で返す関数です。
割る1000で、秒に変換しています。

実行すると、秒数をカウントアップするようになります。

おわりに

Arduinoを触ってみたら、すごい面白いなと思いました。
検証を積み重ねていけば、実用的な製品も作れそうですし、プログラミング学習にも使えそうです。

ぜひ、パラメータを変えたりしながら、動作を検証してみてください。

参考文献

LiquidCrystal | Arduino

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: Arduino入門, 電子工作入門 Tagged With: Arduino, 電子工作

Primary Sidebar

Proglus(プログラス)

Twitter

Follow @programmingnavi Tweets by programmingnavi

最近の投稿

  • 【05/02更新】Udemyプログラミング入門講座等の割引クーポン配布
  • AWSのパブリックIPv4アドレス有料化について 2024/2より
  • 【CSS】Google Fontsの利用方法について解説します!新UIに対応2023年11月更新
  • 【SQL】XAMPPのMySQLがXAMPPがポートの競合で起動できない問題について解決方法を解説します!
  • 【Colab】–NOMAL– と表示されて、ショートカットキー(ctrl+c)でコピーができない場合の解決方法を解説します!

カテゴリー

  • AIの使い方
  • Arduino入門
  • AWS
  • その他
  • エンジニアのしごと
  • エンジニアへの道
  • ツールの使い方
  • ニュース
  • プログラミング入門
  • 電子工作入門

タグクラウド

AI AWS AWS Cloud9 Cloud9 CodeWing CSS Emmet GCP Git GitHub Heroku HTML JavaScript li Linux macOS MySQL MySQL Workbench node.js Nuxt.js ol Proglus Python Ruby Ruby on Rails SQL Udemy Visual Studio Code Vue.js Web開発 Windows インストール エラー エンジニア オンライン学習 サーバー スクリーンショット セール プログラミング プログラミング入門 プログラミング学習 ユーデミー 初心者 未経験 機械学習

アーカイブ

  • 2025年5月
  • 2024年1月
  • 2023年11月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年5月
  • 2023年4月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年6月
  • 2021年4月
  • 2021年3月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月

検索

Copyright © 2025 · programmingnavi.com ・About・プライバシーポリシー