30-FPS-Video auf SSD1106-OLED-Display
Komponenten und Verbrauchsmaterialien
| | × | 1 | |
| ElectroPeak 0,96" OLED 64x128 Anzeigemodul | | × | 1 | |
Über dieses Projekt
Ich wollte die Grenzen des OLED-Displays verschieben. Die SSD1106 wird normalerweise für die Anzeige von Text und einigen Animationen für einfache Projekte verwendet. Ich wollte sehen, ob Echtzeit-Videos auf das Display gestreamt werden können. Bei diesem Projekt gab es viele Hürden. Der limitierendste Faktor war die Bandbreite der LED-Mikrocontroller-Schnittstelle. Ich musste die SPI-Verbindung mit einer schnellen und optimierten Bibliothek auf 2 MHz übertakten, um genügend Bandbreite für die Videoübertragung zu erhalten. Die UART-Schnittstelle, die verwendet wird, um das Video vom Computer zu empfangen, läuft mit 1 MHz.
Ein weiteres Problem ist, dass die OLED-Displays nur zwei Farben haben, aus und an. Sie können kein Graustufenvideo daraus erhalten. Ich habe versucht, Dithering zu verwenden, um die Illusion von Grauschattierungen zu erhalten. Es funktioniert meiner Meinung nach ziemlich gut. Lassen Sie mich wissen, was Sie von dem Projekt halten!
Code
Projektcode
Laden Sie den Arduino-Code auf den Nano hoch und verwenden Sie den Python-Code, um Videos auf das Display zu streamen.https://github.com/SaadOjo/SSD1106_monitor Schaltpläne
Verbinden Sie das Arduino wie abgebildet mit dem Display