英語| 簡體中文| 繁體中文| 日本語|德意志| 한국어
SSD1306是一個單芯片CMOS OLED / PELED驅動程序,帶有有機 /聚合物發光二極管點矩陣圖形顯示系統的控制器。它由128個細分市場和64個共同點組成。該IC設計用於常見的陰極型OLED面板。SSD1306具有對比度控制,顯示板和振盪器的嵌入,可減少外部組件和功耗的數量。它具有256步亮度控制。數據/命令是從通用MCU通過硬件可選的6800/8000系列兼容並行接口,I2C接口或串行外圍接口的。它適用於許多緊湊的便攜式應用程序,例如手機子播放,MP3播放器和計算器等。
Libdriver SSD1306是由Libdriver啟動的SSD1306的完整功能驅動程序。它提供了繪製單點,填充塊,圖像顯示等的功能。Libdriver符合Misra。
/src包括libdriver SSD1306源文件。
/接口包括Libdriver SSD1306 IIC,SPI平台獨立模板。
/測試包括Libdriver SSD1306驅動程序測試代碼,此代碼可以簡單地測試芯片所需的函數。
/示例包括libdriver SSD1306示例代碼。
/DOC包括Libdriver SSD1306離線文檔。
/數據表包括SSD1306數據表。
/項目包括通用Linux和MCU開發委員會樣本代碼。所有項目都使用Shell腳本來調試驅動程序,並且可以在每個項目的readme.md中找到詳細說明。
/Misra包括Libdriver Misra代碼掃描結果。
參考 /接口IIC,SPI平台獨立模板,並完成您的平台IIC,SPI驅動程序。
將 /src目錄,平台的接口驅動程序以及您自己的驅動程序添加到項目中,如果您想使用默認示例驅動程序,請在項目中添加 /示例目錄。
您可以參考 /示例目錄中的示例以完成自己的驅動程序。如果您想使用默認的編程示例,則是如何使用它們的方法。
#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 ;圖像提取格式如下,每個像素存儲在一個字節中。
#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。
請參考貢獻。
版權(c)2015年 - 目前的libdriver保留所有權利
麻省理工學院許可證(MIT)
特此免費授予任何獲得副本的人的許可
該軟件和相關文檔文件(“軟件”)
在軟件中無限制的軟件中,包括無限制的權利
使用,複製,修改,合併,發布,分發,轉銷和/或出售
軟件的副本,並允許軟件的人
符合以下條件的規定,可以這樣做:
上述版權通知和此許可通知應包含
該軟件的副本或大量部分。
該軟件是“原樣”提供的,沒有任何形式的保證,明確或
暗示,包括但不限於適銷性保證,
適合特定目的和非侵擾的適合度。在任何情況下都不會
作者或版權持有人應對任何索賠,損害賠償或其他責任負責
責任,無論是在合同,侵權的訴訟中還是其他責任,是由
與軟件或使用或與使用或其他交易有關
軟體.
請發送電子郵件至[email protected]。