Arduinoで7セグメントLED 8桁(4桁×2)をMAX7219 で制御

7セグLED MAX7219 Arduino
7セグLED MAX7219

Arduinoで7セグメントLED 8桁(4桁×2)をMAX7219にて制御(画面表示テスト)

Arduino で7セグLED制御 必要部材

7セグLED MAX7219
Arduino Uno(本体)
Arduino IDE (Microsoft Storeからダウンロード)
7セグLED 4桁×2 MAX7219 (シリアルインタフェース、8桁LEDディスプレイドライバ)
USBケーブル
ジャンパピン(オスーメスタイプ5本)

Arduino IDE 設定

今回はMAX7219 (シリアルインタフェース、8桁LEDディスプレイドライバ)を利用するので必要なライブラリをダウンロードします。
7セグLED-MAX7219
Arduino IDEから「ツール」「ライブラリ管理」に進みます。
「ライブラリマネージャ」の検索タブに「MAX7219 」と入力して検索します。
候補の中から「DigitLed72xx」を探してインストールします。
Arduino IDEの「ファイル」「スケッチ例」に進んで「カスタムライブラリのスケッチ例」の中に先ほどダウンロードした「DigitLed72xx」があることを確認して、その中の「DigitLed72xxTest」を開きます。
※作成者の方感謝です。

Arduino と7セグLEDの接続

先ほど開いたスケッチ内にも記載がありますが

ArduinoMAX7219/MAX7221
MOSI (11)DIN (1)
SCK (13)CLK (13)
I/O (7)*LOAD/CS (12)
Arduino とMAX7219接続端子

MAX7219付属のLEDには5本の端子があり各端子に名称がプリントされています。
7セグLED MAX7219
VCCは5Vに接続
GNDはアース接続
DINは11番へ接続
CSは12番へ接続
CLKは13番へ接続
上記の番号へ接続して準備完了です。
※今回はブレッドボード無しでも問題ありません。

マイコンボードへの書き込み

正しく配線できていることを確認して、Arduino とパソコンをUSBケーブルで接続します。
Arduino IDEで先ほどの「DigitLed72xxTest 」を開いて、とりあえずそのまま「マイコンボードに書き込む」で書き込みます。
配線などが問題なければ数字が表示されるはずです。

もう少し単純にスケッチを変更

/*
  Basic code for using Maxim MAX7219/MAX7221 with Arduino.
  Version 0.0.3
  Wire the Arduino and the MAX7219/MAX7221 together as follows:
  | Arduino   | MAX7219/MAX7221 |
  | --------- | --------------- |
  | MOSI (11) | DIN (1)         |
  | SCK (13)  | CLK (13)        |
  | I/O (7)*  | LOAD/CS (12)    |
    * - This should match the LOAD_PIN constant defined below.
  
  For the rest of the wiring follow the wiring diagram found in the datasheet.
  
  Datasheet: http://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf

   Thankyoy to Leonardo SAMMARTANO for help and support.
 */
#include <SPI.h>
#include <DigitLed72xx.h>

// What pin on the Arduino connects to the LOAD/CS pin on the MAX7219/MAX7221
#define LOAD_PIN 7
#define NCHIP 2

DigitLed72xx ld = DigitLed72xx(LOAD_PIN, NCHIP);
  
void setup() 
{
  ld.on(2);
  
  ld.printDigit(00000000);
  delay(1500);
 
}

int n = 0;
void loop() 
{
   
  /* Prints data to the display */
  ld.printDigit(12345);
  
}

ld.printDigit(12345) 部分の12345を好きな数字(8桁以下)に変更すればその数字だけが表示されます。
7セグLED MAX7219
※桁区切りカンマは自動で表示されます。

コメント

タイトルとURLをコピーしました