Inglés | 简体中文 | 繁體中文 | 日本語 | Deutsch | 한국어
SSD1306 es un controlador OLED / PLATE CMOS de un solo chip con controlador para el sistema de visualización gráfica de la matriz de diodos de diodo emisores de luz orgánica / polímero. Consiste en 128 segmentos y 64 bienes comunes. Este IC está diseñado para un panel OLED de tipo cátodo común. El SSD1306 se incrusta con control de contraste, RAM y oscilador de visualización, lo que reduce el número de componentes externos y el consumo de energía. Tiene control de brillo de 256 pasos. Los datos/comandos se envían desde MCU general a través de la interfaz paralela compatible con la serie 6800/8000 de hardware, interfaz I2C, interfaz I2C o interfaz periférica serie. Es adecuado para muchas aplicaciones portátiles compactas, como el subdisla de los teléfonos móviles, el reproductor de MP3 y la calculadora, etc.
Libdriver SSD1306 es el controlador de función completa de SSD1306 lanzado por Libdriver. Proporciona las funciones de dibujar un solo punto, bloqueo de relleno, pantalla de imagen, etc. Libdriver cumple con Misra.
/SRC incluye archivos de origen Libdriver SSD1306.
/La interfaz incluye Libdriver SSD1306 IIC, plantilla independiente de la plataforma SPI.
/Prueba incluye el código de prueba del controlador Libdriver SSD1306 y este código puede probar la función necesaria del chip simplemente.
/Ejemplo incluye el código de muestra Libdriver SSD1306.
/Doc incluye el documento fuera de línea Libdriver SSD1306.
/La hoja de datos incluye la hoja de datos SSD1306.
/El proyecto incluye el código de muestra Common Linux y MCU Development Board. Todos los proyectos usan el script de shell para depurar el controlador y la instrucción detallada se puede encontrar en el readMe.md de cada proyecto.
/Misra incluye los resultados de escaneo del código Libdriver Misra.
Referencia /interfaz IIC, plantilla independiente de plataforma SPI y finalizar su plataforma IIC, controlador SPI.
Agregue el directorio /SRC, el controlador de interfaz para su plataforma y sus propios controladores a su proyecto, si desea usar los controladores de ejemplo predeterminados, agregue el directorio /Ejemplo a su proyecto.
Puede consultar los ejemplos en el directorio /ejemplo para completar su propio controlador. Si desea utilizar los ejemplos de programación predeterminados, esto es cómo usarlos.
#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 ;El formato de extracción de imagen es el siguiente y cada píxel almacenado en un byte.
#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 ;Documentos en línea: https://www.libdriver.com/docs/ssd1306/index.html.
Documentos fuera de línea: /doc/html/index.html.
Consulte la contribución. MD.
Copyright (c) 2015 - Presente Libdriver Todos los derechos reservados
La licencia del MIT (MIT)
Por la presente, se otorga el permiso, de forma gratuita, a cualquier persona que obtenga una copia
de este software y archivos de documentación asociados (el "software"), para tratar
en el software sin restricción, incluidos los derechos de los derechos
para usar, copiar, modificar, fusionar, publicar, distribuir, sublicense y/o vender
copias del software y para permitir a las personas a quienes es el software
proporcionado para hacerlo, sujeto a las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todos
copias o porciones sustanciales del software.
El software se proporciona "tal cual", sin garantía de ningún tipo, expreso o
Implícito, incluidos, entre otros, las garantías de comerciabilidad,
Fitness para un propósito particular y no infracción. En ningún caso el
Los autores o los titulares de derechos de autor seré responsable de cualquier reclamo, daños u otros
Responsabilidad, ya sea en una acción de contrato, agravio o de otra manera, derivada de,
Fuera o en relación con el software o el uso u otros tratos en el
SOFTWARE.
Envíe un correo electrónico a [email protected].