【LCD+PICマイコン+温度センサーIC】-1:温度センサーICで測定した値をLCDに表示します。

エレキ設計

この記事でわかること

既存投稿した【温度センサーIC+PICマイコン】シリーズにおいて、温度値をマイコンのレジスタ”T_reg”に取り入れたので、これをLCDを使い表示する設計を紹介します。

本投稿内容:

  • 設計仕様決め
  • 回路図、回路の説明
  • 次掲載のソフト設計につて

目的

温度センサーICが測定した温度値をLCDに表示します。

LCD表示仕様

  • 温度測定値のLCD表示
  • LCDとマイコン電源:単一乾電池2個、(約 DC 3.25V)
  • 約10秒カウント後に温度測定とLCD表示を行います。
  • LCDは、2行の表示、8文字/行、温度値は、1行目に小数点1位表示( 表示例 “35.2℃” )。
  • マイコンとLCDモジュール間は、I2C通信の接続を採用。

*:温度センサーについては、
投稿済みの【温度センサーIC+PICマイコン】シリーズを参照のこと。

ハード設計

回路

下記に、LCD+PICマイコン+温度センサーIC回路図を示します。

図-1:LCD+PICマイコン+温度センサーIC回路図

TINAーTIの回路図入力方法は、ここを参照。
(TINA-TIシステムは、無料で使用できる設計ツールです。2026/08/26 現在)

部品の説明

AE-AQM0802A-BL:秋月通販が提供するLCDモジュールキット(AQM0802A-FLW-GBW+ディスクリート部品付き基板)
AQM0802A-FLW-GBW:LCD制御用LSI:ST7032iと LCDモジュール
PICマイコン:PIC16F1938は、マイコロチップ社のマイコン、MSSP*1( I2C通信 )モジュール・
10ビットA/D変換、タイマーモジュールを内蔵しています。
LM61:温度センサーIC、Ti製。

V1:1.5V 単一乾電池2個直列接続
C1:電源安定用保護コンデンサー
C2, C3:LCD昇圧回路用コンデンサー
C4:Voutラインのノイズ取り
R1, R2:I2C通信回線のプルアップ抵抗(通信してない時、”ハイレベル”で有る事が分ります。)
R3:10kΩ を Vpp/”MCLR”/RB3端子をプルアップ”ハイ”レベルに固定
(内部にプルアップ抵抗の接続が有りますが、外部でも同様にプルアップします。本ピンは、PICマイコン内にプログラムをフラッシュメモリーに書き込む時の制御ピンです。通常時は、プルアップで安定した状態するための、更なる誤書き防止策です。)

*1: MSSP: Master Synchronous Serial Portの略

部品表

表-1:部品表

番号部品名メーカー名型式個数電力
U1PICマイコンマイクロチップ・
テクノロジー社
PIC16F193815mW
(3.3V 16MHz)
I2C接続小型LCDモジュール秋月通販AE-AQM0802A-BL161mA
(3.3V)
U3温度センサーICTiLM611125uA
(25℃)
V1乾電池ー単一形23.25V
R1.2.3抵抗器 10kΩ±5%ーー3
C1.2.3コンデンサー
0.1uF
ー1608サイズ350V
C4コンデンサー
1uF
ーA23101

回路の動作説明

LCDモジュールのXRESET端子は、PICマイコンのGPIO(RB0)端子を接続して、”L”→”H” レベルに変化させLCDをリセット制御とします。
温度センサーICからのアナログ電圧出力(温度値)VoutをAN0(2ピン)端子に接続、PICマイコンに内蔵している10ビットA/D変換を使い、デジタルデータに変換をします。
PICマイコン内蔵の10ビットA/D変換用Vref(基準電圧)は、マイコン内の電圧を使用するためPICマイコン外からの供給回路を無しとしました。
Vout信号ラインには、ノイズ対策用に1uFのコンデンサー接続(データシートを参照しています)。
温度測定値は、PICマイコン内ソフト宣言している”T_reg”に格納しています。この温度値(T_reg)をI2C通信で接続したLCDに表示します。LCDは、全体で2行表示とします。1行目に温度を小数点1位まで表示します。
表示と温度測定タイミングは、10秒ソフトタイマーを使い、毎回10秒アップ後に実行します。

温度センサーICとPICマイコン側回路の説明は、投稿済みの”【温度センサーIC+PICマイコンの設計】“の回路動作説明を参照のこと。

ソフト設計

PICマイコンのソフト開発用として、”MPLAB X IDE”支援ソフトがマイクロチップ・テクノロジー(Microchip Technology)社から無料で提供されています。

本記事で使用する ”MPLAB X IDE” は、バージョン6.05です。
”MPLAB X IDE”支援ソフトの詳細は、ここを参照。

”MPLAB X IDE”の支援ソフトを使ったソフト設計

”MPLAB X IDE”支援ソフトは、ソフト設計に関する PICマイコンやC言語について詳細に理解していなくても、プログラム作成、ソフト上の検証、プログラムのコンパイル、マイコンへの書き込み、実機の検証ができます。

LCD+PICマイコン+温度センサーICソフト設計の全作業フロー図を、下記に示します。

図-2:LCD+PICマイコン+温度センサーICソフト設計の全作業フロー図

フローチャートの説明:

  1. Create Project name作成
    全プログラムを格納するフォルダーの作成
    ”MPLAB X IDE”支援ソフトを開始する1歩目
    本投稿プロジェクト名称は、“TMPRTR_PIC_LCD”です。
  2. Using MCC function機能
    ”MPLAB X IDE”支援ソフトの中にあるMCC(MPLAB Code Configurator)機能の
    “MCC Melody”*1を選択して、PICマイコン内蔵のモジュールのソフトを自動生成します。
    本設計では、下記を自動生成します。
    ・GPIOポートの設定(LCDリセット制御用)
    ・I2C通信モジュール(割り込み使用)

    以下のモジュール設計は、ここを参照。
    ・システムクロック
    ・A/D変換モジュール(割り込み無し)
    ・FVRモジュール(内蔵のVref使用の為)
    ・タイマー2モジュール(割り込み使用)
  3. “Generate”を実行
    上流フローで生成した各モジュールプログラムと”main.c”(自動生成)をまとめて、
    1つのプログラムを生成します。
  4. “Edit Specification”作業
    仕様に合わせて、プログラムの編集を直接行います。
    本仕様では、”main.c”プログラムが編集対象となります。
    No error:編集中に問題ある記述の場合は、逐次エラーコメントが表示されるため、
    この工程でエラーが無くなれば、プログラムはほぼ動作可能です。
  5. “Compile”実行
    PICマイコンに書き込むために、C言語プログラムをアドレッシングと命令16進数(Hex)
    に置き換えます。
  6. “Debug Main Project” でシミュレーション
    本ソフトシステム上(実機無し)で、プログラムの検証が出来ます。
  7. “Write to PIC (Flash)”実行
    PICマイコンのフラッシュメモリーにプログラムを書き込みます。
  8. “On-target debugging”検証
    実機を使い検証を行います。
  9. “Judge”
    検証で、プログラム変更が有る場合は、Edit Specification で本記事では”main.c”等の変更。又は、Using MCC functionにて、再プログラム生成します。

*1:MCC機能のMelodyの選択

図-3:”MPLAB X IDE” 画面

“MPLAB X IDE”の画面で、新プロジェクトを立ち上げた時、MCC機能①を選択すると
次にシステムは、
“MCC Melody”② か “MCC Classic“選択を要求してきます。
本ソフトは、”MCC Melody“②選択して生成します。

前投稿【温度センサーIC+PICマイコンの設計】
シリーズのモジュールソフトは、
“MCC Classic”を選択して生成しています。

MCC Melodyとは、
従来版のMCC Classic版の構造を刷新し、PIC/AVR8など8 ビット・16ビットマイコン のソフト開発においてプログラム生成をするMPLAB X IDE支援ソフトの一部です。

MCC Classicとは、
従来のMCCから引き継がれている定番のPIC/AVR8など8 ビット・16ビットマイコン のソフト開発においてプログラム生成をするMPLAB X IDE支援ソフトの一部です。

コメント