English | 简体中文 | 繁體中文 | 日本語 | Deutsch | 한국어
SSD1306は、有機/ポリマー発光ダイオードドットマトリックスグラフィックディスプレイシステム用のコントローラーを備えたシングルチップCMOS OLED/PLEDドライバーです。 128のセグメントと64のコモンで構成されています。 このICは、一般的なカソードタイプのOLEDパネル用に設計されています。SSD1306には、コントラスト制御、ディスプレイRAM、および発振器が組み込まれているため、外付け部品の数と消費電力が削減されます。 256段階の明るさ制御が可能です。 データ/コマンドは、ハードウェアで選択可能な6800/8000シリーズ互換のパラレルインターフェース、I2Cインターフェース、またはシリアルペリフェラルインターフェースを介して一般的なMCUから送信されます。 携帯電話のサブディスプレイ、MP3プレーヤー、電卓など、多くのコンパクトなポータブルアプリケーションに適しています。
LibDriver SSD1306は、LibDriverによって起動されたSSD1306の全機能ドライバーです。これは、単一点の描画、ブロックの塗りつぶし、画像表示などの機能を提供します。LibDriverはMISRAに準拠しています。
/ srcディレクトリには、LibDriver SSD1306のソースファイルが含まれています。
/ interfaceディレクトリには、LibDriver SSD1306用のプラットフォームに依存しないIIC,SPIバステンプレートが含まれています。
/ testディレクトリには、チップの必要な機能を簡単にテストできるLibDriver SSD1306ドライバーテストプログラムが含まれています。
/ exampleディレクトリには、LibDriver SSD1306プログラミング例が含まれています。
/ docディレクトリには、LibDriver SSD1306オフラインドキュメントが含まれています。
/ datasheetディレクトリには、SSD1306データシートが含まれています。
/ projectディレクトリには、一般的に使用されるLinuxおよびマイクロコントローラー開発ボードのプロジェクトサンプルが含まれています。 すべてのプロジェクトは、デバッグ方法としてシェルスクリプトを使用しています。詳細については、各プロジェクトのREADME.mdを参照してください。
/ misraはLibDriver misraコードスキャン結果を含む。
/ interfaceディレクトリにあるプラットフォームに依存しないIIC,SPIバステンプレートを参照して、指定したプラットフォームのIIC,SPIバスドライバを完成させます。
/src ディレクトリ、プラットフォームのインターフェイス ドライバー、および独自のドライバーをプロジェクトに追加します。デフォルトのサンプル ドライバーを使用する場合は、/example ディレクトリをプロジェクトに追加します。
/example ディレクトリ内のサンプルを参照して、独自のドライバーを完成させることができます。 デフォルトのプログラミング例を使用したい場合の使用方法は次のとおりです。
#include "driver_ssd1306_basic.h"
uint8_t res;
res = ssd1306_basic_init(SSD1306_INTERFACE_IIC, SSD1306_ADDR_SA0_0);
if (res != 0)
{
return 1;
}
...
res = ssd1306_basic_clear();
if (res != 0)
{
ssd1306_interface_debug_print("ssd1306: clear screen failed.\n");
(void)ssd1306_basic_deinit();
return 1;
}
res = ssd1306_basic_string(0, 0, "123", 3, 1, SSD1306_FONT_16);
if (res != 0)
{
ssd1306_interface_debug_print("ssd1306: show string failed.\n");
(void)ssd1306_basic_deinit();
return 1;
}
...
res = ssd1306_basic_rect(0, 31, 31, 31, 1);
if (res != 0)
{
(void)ssd1306_basic_deinit();
return 1;
}
...
(void)ssd1306_basic_deinit();
return 0;
画像抽出フォーマットは次のとおりで、すべてのピクセルが 1 バイトに格納されます。
#include "driver_ssd1306_advance.h"
uint8_t res;
uint8_t image[8192];
res = ssd1306_advance_init(SSD1306_INTERFACE_IIC, SSD1306_ADDR_SA0_0);
if (res != 0)
{
return 1;
}
...
res = ssd1306_advance_clear();
if (res != 0)
{
ssd1306_interface_debug_print("ssd1306: clear screen failed.\n");
(void)ssd1306_advance_deinit();
return 1;
}
res = ssd1306_advance_string(0, 0, "123", 3, 1, SSD1306_FONT_16);
if (res != 0)
{
ssd1306_interface_debug_print("ssd1306: show string failed.\n");
(void)ssd1306_advance_deinit();
return 1;
}
...
res = ssd1306_advance_write_point(38, 38, 1);
if (res != 0)
{
(void)ssd1306_advance_deinit();
return 1;
}
...
res = ssd1306_advance_rect(0, 31, 31, 31, 1);
if (res != 0)
{
(void)ssd1306_advance_deinit();
return 1;
}
...
res = ssd1306_advance_fade_blinking(SSD1306_FADE_BLINKING_MODE_BLINKING, 0);
if (res != 0)
{
(void)ssd1306_advance_deinit();
return 1;
}
...
res = ssd1306_advance_vertical_left_horizontal_scroll(0, 7, 0, SSD1306_SCROLL_FRAME_2);
if (res != 0)
{
(void)ssd1306_advance_deinit();
return 1;
}
...
res = ssd1306_advance_picture(0, 0, 0, 0, image);
if (res != 0)
{
(void)ssd1306_advance_deinit();
return 1;
}
...
(void)ssd1306_advance_deinit();
return 0;
オンラインドキュメント: https://www.libdriver.com/docs/ssd1306/index.html。
オフラインドキュメント: /doc/html/index.html。
CONTRIBUTING.mdを参照してください。
著作権(c)2015-今 LibDriver 全著作権所有
MITライセンス(MIT)
このソフトウェアおよび関連するドキュメントファイル(「ソフトウェア」)のコピーを取得した人は、無制限の使用、複製、変更、組み込み、公開、配布、サブライセンスを含む、ソフトウェアを処分する権利を制限なく付与されます。ソフトウェアのライセンスおよび/またはコピーの販売、および上記のようにソフトウェアが配布された人の権利のサブライセンスは、次の条件に従うものとします。
上記の著作権表示およびこの許可通知は、このソフトウェアのすべてのコピーまたは実体に含まれるものとします。
このソフトウェアは「現状有姿」で提供され、商品性、特定目的への適合性、および非侵害の保証を含むがこれらに限定されない、明示または黙示を問わず、いかなる種類の保証もありません。 いかなる場合も、作者または著作権所有者は、契約、不法行為、またはその他の方法で、本ソフトウェアおよび本ソフトウェアの使用またはその他の廃棄に起因または関連して、請求、損害、またはその他の責任を負わないものとします。
お問い合わせください[email protected]。