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
I²C Programmierbeispiele (Blöcke) für ROBO Pro Coding und fischertechnik TXT 4.0 und RX Controller.
Alle Beispiele sind plattformunabhängig programmiert und für TXT 4.0 und RX Controller geeignet. In der ROBO Pro Coding Projektkonfiguration kann jedes Projekt einfach für den anderen Controller konvertiert werden.
Der BT Smart Controller hat keine I²C Anschlüsse und ist nicht verwendbar.
Beim RX Controller ist die Anzahl der I²C-Adressen begrenzt. Zu viele I²C Module gleichzeitig am I²C-Bus werden dann nicht erkannt. Ein I²C Multiplexer kann das Problem lösen.
Beim TXT 4.0 Controller sind solche Einschränkungen nicht bekannt.
Tabelle 1:
Quellcodedatei | kurze Beschreibung |
---|---|
lcd16x2_keyboard_rtc | Grove LCD: Text mit Tastatur schreiben, Datum, Uhrzeit, DIP Schalter |
oled_text_analoguhr | OLED Analoguhr, Text Zeichensatz aus EEPROM |
qwiicbutton_int | 2 I²C Buttons mit LED, /INT Ereignis, Optokoppler |
qwiiclcd_keypad_rtc | Qwiic LCD: Uhr stellen mit Keypad, 8 Tasten→GPIO→ASCII, Joystick |
qwiicmotor_joystick | 2 oder 4 Motoren (I²C Motor Driver) mit I²C Joystick steuern |
qwiicmux_rx | RX Controller mit I²C Multiplexer, 10 I²C Module |
qwiicopenlog_rtc | Dateien lesen und protokollieren auf Speicherkarte, Zeit aus RTC |
s_qwiic_distance | 4 verschiedene Abstands- und Nähesensoren, Qwiic LCD 20x4 |
s_qwiictemp_lcd | 2 Temperatursensoren STTS22H und TMP102 , Qwiic LCD Display |
wattmeter_co2_relay | Strom messen von CO₂ Sensor und I²C Relais, Grove LCD Display |
Hauptprogramm in der App ROBO Pro Coding
- Projekt ft_Controller_I2C von fischertechnik GitLab laden.
- Mit Drahtbrücken an den Eingängen
I8 I7 I6 I5
kann der Start eines bestimmten Programmierbeispiels codiert werden. Tabelle 2 zeigt die Codierung der Eingänge. - Beispiel 0 i2c_scan zeigt die gefundenen I²C-Adressen in der Konsole an.
- Beispiel 8 log_konsole zeigt Dateien von der Speicherkarte in der Konsole an.
- Alle anderen Beispiele können nach Übertragung des Programms auf dem Controller (ohne Verbindung zur App) gestartet werden. Nur Drahtbrücken umstecken und Programm starten.
- Ausgabe erfolgt auf Display, LEDs, Motoren, Speicherkarte.
Tabelle 2:
- Codierung der Eingänge, um ein Beispiel vom Hauptprogramm zu starten.
- Name des Beispiel-Blocks und Link zur Beschreibung.
I8 |
I7 |
I6 |
I5 |
Beispiel (Block) | Funktion | |
---|---|---|---|---|---|---|
0 |
0 |
0 |
0 |
i2c_scan | 0 | I²C-Adressen in Konsole anzeigen |
0 |
0 |
0 |
1 |
grovelcd_keyboard | 1 | mit Tastatur in Display schreiben |
0 |
0 |
1 |
0 |
oled2_demo | 2 | Digital-, Analoguhr, Text aus EEPROM |
0 |
0 |
1 |
1 |
buttons_polling | 3 | 2 I²C-Buttons mit LED, DIP-Schalter |
0 |
1 |
0 |
0 |
qlcd_uhr_stellen | 4 | Uhr anzeigen und stellen mit Keypad |
0 |
1 |
0 |
1 |
qlcd_gpio_ascii | 5 | Binär Schreibmaschine, GPIO→ASCII |
0 |
1 |
1 |
0 |
joy_4motoren | 6 | 2 I²C Motor Module mit Joystick |
0 |
1 |
1 |
1 |
qmux_rx1 | 7 | RX mit Multiplexer, 10 I²C Module |
1 |
0 |
0 |
0 |
log_konsole | 8 | Dateien von Speicherkarte anzeigen |
1 |
0 |
0 |
1 |
log_tmp102 | 9 | auf Speicherkarte protokollieren |
1 |
0 |
1 |
0 |
qdistance_qlcd4 | 10 | Abstand Sensoren, LCD 20x4 |
1 |
0 |
1 |
1 |
temp_lcd | 11 | Temperatur Sensoren, Limit, /INT |
1 |
1 |
0 |
0 |
wattmeter_lcd_co2 | 12 | Strommessung, CO₂ Sensor, Relais |
1 |
1 |
0 |
1 |
13 | ||
1 |
1 |
1 |
0 |
14 | ||
1 |
1 |
1 |
1 |
15 |
Foto
10 Module gleichzeitig am TXT 4.0 Controller I²C-Bus
- 0x03 Grove - 6-Position DIP Switch
- 0x20 SparkFun Qwiic Joystick
- 0x27 SparkFun Qwiic GPIO
- 0x3c Grove - OLED Yellow&Blue Display 0.96(SSD1315) 128x64 Pixel
- 0x4b SparkFun Qwiic Keypad - 12 Tasten
- 0x50 SparkFun Qwiic EEPROM Breakout - 512Kbit
- 0x51 Grove - High Precision RTC (Real Time Clock)
- 0x5d SparkFun Qwiic Motor Driver, 2 Motoren XS 9V
- 0x5e SparkFun Qwiic Motor Driver, 1 Motor XS 9V, 1 Elektromagnet
- 0x72 SparkFun Qwiic 20x4 SerLCD - RGB Backlight
- Grove - I2C Hub(6 Port)
- Qwiic Cable - Grove Adapter (100mm)
- SparkFun Qwiic Cable Kit
- SparkFun Qwiic MultiPort
- SparkFun Qwiic Adapter
- Pfosten-Steckverbinder Rastermaß: 2.54 mm Polzahl Gesamt: 6
- Beim Adapter löten gut isolieren, Spannung >3,3V am I²C-Bus zerstört den Controller!
- Schrumpfschlauch
- Modellbahn Tastenpult 2 Stück
2 Tasten GND an I1, I2; 8 Tasten GND an GPIO (Pull Up 10 KOhm an 3V3)