OLED I2CディスプレイをARDUINOに接続する方法

Pin
Send
Share
Send

はじめに:128 * 64/128 * 32 OLED I2Cディスプレイの紹介。

こんにちはアマチュアであること-エレクトロニクス愛好家であること、私たちがすることはすべて、電子玩具-自家製製品、またはすべての好奇心と怠lazからの大規模なプロジェクトであると確信しています。好奇心は、それがどのように機能し、何をし、どのように動くのかを理解するために、知られていない巨大なものを理解し理解しようとします。そして、これを思いつくために、立ち上がらない、体に合わない、持ち上げない、汚れない、または他の重要なことを怠るように、怠inessが生まれます。
デバイスで何が起きようとしているのか、すでに起こっているか、起こっているのかを理解するよりも情報を見る方が良いので、マイクロコントローラ、センサー、またはその他のデバイスからこの非常に有用な情報を確実に取得したいと思います。とにかく、質問、警告、リマインダー、顔文字、アスタリスク、ハートなどのメッセージを受け取りたいと思っています。
同様の欲求をお持ちの方のために、小型で安価なOLEDディスプレイを接続して確認するためのクイックガイドを紹介します。
次に、SSD1306チップによって制御されるOLEDディスプレイのハム無線モデルで広く利用可能なものの1つについてお話します。画面サイズは0.96インチで、解像度は128 * 64または128 * 32ピクセルです。これらのディスプレイは、小さなアマチュア無線設計および自家製製品に最適です。

ステップ1:重要な概念


それをArduino UNO / NANOに、そしてプログラムにそれぞれ接続し、Arduinoを介して接続します。
  • OLEDは有機発光ダイオード、つまり有機化合物で作られた半導体デバイスで、電流が流れると発光し始めます。
  • ARDUINOは、自動化およびロボットシステムのトレーニングと構築のためのプラットフォームです。
  • ArduinoIDEは開発環境です。これは無料のArduinoプログラミングツールです。
  • I2C-集積回路間、マイクロ回路間通信ライン。
  • スケッチ、それはコード、それはプログラムです-Arduinoの用語。

OLEDディスプレイをArduinoに適切に接続して構成する方法、およびディスプレイに独自のメッセージを表示する方法を理解するには、指示に従ってください。
すべてを段階的に行います。

ステップ2:アクセサリー


必要なものは4つだけです。
  • 1. OLEDディスプレイ自体は0.96です(AliexpressまたはEbayで購入可能-長いが、安い!)。
  • 2. Arduino UNO / Nano(ディスプレイと同じ場所)。
  • 3.接続ワイヤ(同上)。
  • 4. ArduinoIDEがインストールされたコンピューターまたはラップトップ。

一般に、AliexpressとEbayのさまざまなプロジェクトの部品を購入するのは非常にクールなことです。1つのプロジェクトを実行している間、別のプロジェクトの部品はすでに準備中です。主なことは、注文することを忘れないことです。

ステップ3:ディスプレイを接続する


ディスプレイは、5つの通信プロトコルとその1つがI2CをサポートするSSD1306チップによって制御されます。このプロトコルのデータは2本のワイヤで送信されますが、ケース内のワイヤが少ないほど良いので、私たちに適しています。しかし! SPIプロトコルとプロトコルスイッチングを備えたモジュールもあるため、このモジュールを購入する際は注意してください。

使用された結論:
OLEDディスプレイ-SCL / SCK(クロック)およびSDA(データ)、「プラス」電力(VCC)および「マイナス」電力(GND)。

使用された結論:
Arduino UNO-A5のSCL / SCKおよびA4のSSD、「プラス」電源(+ 5V)および「マイナス」電源(GND)。
ディスプレイをArduinoに接続します。
  • Vcc-5V
  • GND-GND
  • SDA-A4
  • SCL-A5

ステップ4:I2Cスキャナー


I2Cバス上の各デバイスには16進アドレスがあり、変更することはできません。しっかりと縫い付けられています。各メーカーはケースまたは指示書のどこかにそれを表示する必要があります。アドレスを変更できるスイッチとジャンパーを備えたモジュールがありますが、...デバイスが安価で、ifい場合、製造業者はそのような些細なことを気にすることはないので、自分で決定する必要があります。
合計で最大127個のアドレスをバスで使用できます-デバイス用に119個、8個のサービスアドレス。通信はこれらのアドレスで行われます。マスターがいます、彼はマスターですが、スレーブがあります、彼はまたスレーブです-マスターは尋ねます、信者は応答します、すべては簡単です。
OLEDディスプレイはI2C通信プロトコルを使用しており、アドレスが示されていない可能性があるため、このアドレスを見つけようとします。
これは、OLEDが接続されたArduinoボードに短いスケッチをダウンロードすることで実行できます。しかし!
すぐにスケッチをArduinoにアップロードしてください!最初に「ドライバー」をダウンロードしましょう。ライブラリを接続します。そのために、「ステップ5」に直接進み、その後戻って続行します。

ステップ4:続き:


CODE Finder_I2C_Hex_Address.inoをダウンロードし、Arduinoにアップロードします。
「ポートモニタ」を開き、速度を9600に設定します。すべてが正しく接続されている場合、プログラムはデバイスアドレスを表示します。私の場合、アドレス0x3FのOLEDです。

ステップ5:ライブラリをダウンロードして接続する


すべてが正常に機能し、車輪を再発明する必要がないためには、いくつかのライブラリをArduinoIDE環境に接続する必要があります。つまり、ADAFRUIT GFXおよびADAFRUIT SSD1306です。これらはArduinoが独立してOLEDディスプレイと通信できるようにするために必要です。
これらのライブラリを接続するには、次の手順に従います。
  • 1. ArduinoIDEで、[スケッチ]メニューに移動します。
  • 2. [ライブラリを含める] /ライブラリを含めるを選択します。
  • 3.「ライブラリの管理」/管理ライブラリを選択します。
  • 4. ADAFRUIT GFXを見つけてインストールします。
  • 5. ADAFRUIT SSD1306を見つけてインストールします。

ライブラリの最新バージョンでは、ディスプレイが曲がって動作しましたが、これはもちろん手の曲がりによるものかもしれませんが、これらのライブラリの最初のバージョンをインストールした後、すべてがスムーズに美しく見え始めました。何らかの理由で、プーシキンのラインが彼の記憶に浮かび上がります:
...そして経験、困難な過ちの息子、
そして天才、友人のパラドックス。

ライブラリをインストールする別の方法は、これらのライブラリを自分で検索、ダウンロード、インストールすることです。
Githubの例:
//github.com/adafruit/Adafruit-GFX-Library
//github.com/adafruit/Adafruit_SSD1306

これらは同じAdafruitライブラリですが、OLED I2Cの要求に応じて、類似のライブラリを検索エンジンで簡単に検索できます。多くの愛好家は、「自分たちのために」ライブラリを作成し、それをウェブに掲載します。どのライブラリを使用するかはあなた次第です。
ディスプレイにロシア語の文字を表示するには、特別なライブラリも必要ですが、これは別の記事の別のトピックです。
ライブラリがインストールされたら、ステップ4に戻り、最終的にディスプレイの16進アドレスを確認できます。

ステップ6:ディスプレイのテスト


すべてが期待どおりに機能しているかどうかを確認するには、ArduinoIDEからテスト例を実行します。
これを行うには:
ファイル>例> SSD 1306> 128x64 i2cを選択します
「エラー」が発生した場合は、SSD 1306> 128x32 i2cを選択してみてください。
エラーが再度発生する場合は、デモコードの61行目のI2Cアドレスを変更してみて、ステップ#4で決定したディスプレイのアドレスに置き換えます。
エラーが再度発生する場合、Adafruit_SSD1306.hファイルを編集してみてください。このファイルはArduinoライブラリのあるフォルダーにあります。

テキストエディターでAdafruit_SSD1306.hファイルを開き、次の行を見つけます。
//#SSD1306_128_64を定義#define SSD1306_128_32 // #define SSD1306_96_16

行のコメントを解除します。
#define SSD1306_128_64。

次のようになります。
#define SSD1306_128_64 //#SSD1306_128_32を定義// #define SSD1306_96_16

エラーが再度発生する場合は、接続の正確さを確認する必要があります。
ダウンロードが完了すると、画面にテストアニメーションが表示されます。これは、OLEDディスプレイが正常に構成されたことを意味します。

このアニメーションを楽しんだら、次のステップに進むことができます。

ステップ7:独自のメッセージを書く


独自のメッセージを書くには、まずArduinoIDEプログラミング環境で新しいスケッチを作成します。
ヘッダーでは、4つのライブラリを接続します。
#include #include #include #include 

次に、リセットプロトコルを記述します。
#define OLED_RESET 4 Adafruit_SSD1306ディスプレイ(OLED_RESET);

VOID SETUPで、0x3Cディスプレイの16進アドレスを指定します。これは「ステップNo. 4」で見つけました。
次に、ディスプレイを初期化してクリアします。
display.begin(SSD1306_SWITCHCAPVCC、0x3C); display.clearDisplay();

次に、VOID LOOPで、メインコード、つまりディスプレイに表示するメッセージを記述します。
これを行うには、テキストサイズ、テキストの色、カーソル位置を記述し、最後にprintlnコマンドを使用してメッセージを表示します。
display.setTextSize(2); display.setTextColor(白); display.setCursor(0,0); display.println( "Well done!"); display.display();

最後に、書くことを忘れないでください display.display画像が画面に表示されるように、そうでない場合は無効になります。
すべてを正しく行うと、ディスプレイにメッセージが表示されます。

プログラムのコードStarting_with_Arduino_OLED.inoは次のとおりです。
code.zip 946 b(ダウンロード:1366)

Pin
Send
Share
Send