embassy-ssd1306
Driver asynchrone no_std pour l'écran OLED SSD1306 128x64 via I2C, testé sur la pico 2 et pico 2040.
Permet d'afficher des nombres, du texte ASCII (A–Z, 0–9) et des caractères spéciaux sur les pages 0 à 7 et l'semble de Caractères supportés : 0-9, A-Z, ., (, ), ,, [, ], %, <, >, =, ?, !, :, +, /, |, _
Ce pilote fournit un framebuffer en RAM avec des primitives graphiques
(pixels, lignes, rectangles, bitmaps, texte numérique) et un flush I2C
optimisé page par page de 0 à 7 pages.
Optimisé pour l'exécuteur embassy.
📋 Historique et Évolutions (Changelog)
Ce projet suit une philosophie de développement pragmatique : chaque mise à jour vise à enrichir les fonctionnalités tout en minimisant l'empreinte mémoire sur le microcontrôleur.
Dernière version : v0.4.0 Caractères étendus et opérateurs pour les calculs et formatage
Ajout de 5 nouveaux symboles opérateurs : +, /, |, _
Pour consulter le détail de toutes les versions, veuillez vous référer au fichier : 👉 CHANGELOG.md
Utilisation
[]
= "0.4.0"
use Ssd1306;
let mut oled = new;
oled.init.await.unwrap;
oled.draw_rect;
oled.draw_i16;
oled.flush.await.unwrap;
Exemple d'utilisation
use Ssd1306;
let mut oled = new;
oled.init.await.unwrap;
// Texte avec caractères spéciaux
oled.draw_str;
// Nombre signé avec caractères
oled.draw_str;
oled.draw_i16;
oled.draw_str;
// Exemples avec caractères additionnels
oled.draw_str;
oled.draw_str;
oled.draw_str;
// Rectangle de bordure
oled.draw_rect;
oled.flush.await.unwrap;
Caractères supportés : 0-9, A-Z, ., (, ), ,, [, ], %, <, >, =, ?, !, :, +, /, |, _
Exemple pico 2040
// Initialisation OLED
if let Ok = oled.init.await
// Affichage avec calcul de racine carrée
let calculs = ;
let mut idx = 0;
loop
Fonctionnalités
draw_pixel/draw_hline/draw_vlinedraw_rect/draw_filled_rectdraw_bitmap(1bpp, MSB à gauche)draw_char/draw_i16/draw_str(font 5x7, chiffres, signe, lettres A–Z)- Framebuffer 1024 bytes en RAM, flush optimisé page par page
Licence
GPL-2.0-or-later — Copyright (C) 2026 Jorge Andre Castro