View on GitHub

ft-Controller-I2C

ROBO Pro Coding Blöcke für fischertechnik TXT 4.0 und RX Controller zur Programmierung beliebiger I²C Devices: LCD, OLED Displays, Tastaturen, Sensoren, Motoren, Joystick, GPIO, RTC, EEPROM, Relais, ...

ROBO Pro Coding I²C Blöcke von fischertechnik GitLab: ft_Controller_I2C
I²C Module | I²C Hardware, Software | I²C Quellcodedateien, Blöcke
I²C Programmierbeispiele im Überblick

oled_text_analoguhr (Analoguhr, Text, Zeichensatz aus EEPROM)

Zwei (gleiche oder verschiedene) OLED Displays können gleichzeitig an den I²C-Bus angeschlossen werden, wenn bei einem die I²C-Adresse von 0x3C in 0x3D geändert wird. Das große Display hat 128*128 Pixel, das sind 16384 Punkte bzw. 2 Kilobyte, die einzeln an und aus geschaltet werden.
Linien und Kreise müssen per Software in das Pixel-Muster umgerechnet werden.
Auch Text Zeichen muss die Software als Pixel an das Display senden. Der Zeichensatz ist im EEPROM gespeichert, es werden einfach pro Zeichen 8 Byte vom EEPROM auf das Display kopiert.
Über einen I²C-Bus wird die Uhrzeit vom RTC Modul gelesen, in Text-Zeichen aus dem EEPROM umgewandelt und als verschiedene Bilder an zwei Displays gesendet.

Der Block oled2_demo für alle 4 I²C Module ruft die anderen Blöcke als Unterprogramm auf.

Mit dem Block oled2_systemtime wird die Uhrzeit vom Controller verwendet. Dafür ist die Erweiterung advanced erforderlich. Auf das EEPROM und RTC Modul wird verzichtet.

Block oled2_demo


Zum Vergrößern auf das Bild klicken.

Parameter select_oled ist False für 128x128 (0x3C) und True für 128x64 (0x3D) Display.

Unterprogramm Block oled_eeprom_copy (select_oled)

Unterprogramm Block oled_analoguhr_128 (select_oled)

Unterprogramm Block oled_digitaluhr_6_7 (select_oled)

Unterprogramm Block oled_zeichnen_0_5 (select_oled)

Block oled2_systemtime


Zum Vergrößern auf das Bild klicken.


Beim RX Controller muss I²C beim Programmstart initialisiert werden.