I2C ohne Verzicht auf Liniensensoren - Minimallösung
Hallo,
bis jetzt musste man für eine I2C-Erweiterung (z.B. Display) die Liniensensoren "opfern", da die Pins der Sensoren verwendet werden müssen.
Es gibt aber eine Methode, die ich erfolgreich ausprobiert habe, mit der man I2C und die Liniensensoren verwenden kann.
Dabei habe ich SDA und SCL an die Richtungspins des rechten Motors (B5 und B4) gehängt und an die Widerstände R5 und R7 gelötet. Diese sind gut zu erreichen.
Damit kann man ich jetzt auf meinem Display die Liniensensorenwerte anzeigen lassen.
Der Motor muss stehen bleiben, aber nur während der Übertragung. Wenn man das geschickt hin und her schaltet, können die Motoren nebenbei ohne (große) Beeinträchtigung laufen.
Gruß
ASUR0
Liste der Anhänge anzeigen (Anzahl: 4)
Hier noch ein paar Fotos, mit meiner LCD-Erweiterung:
Anhang 18212
Ich habe ein 5-poligen Stecker am ASURO befestigt. Diese wird an meine Erweiterung angeschlossen:
Anhang 18214
Litzensalat auf der Rückseite:
Anhang 18216
Auf einer Platine habe ich einen PCF8574 montiert, der im 4-bit Modus das Display steuert. Zusätzlich habe ich aus einem USB-Stick einen Stromadapter gebaut, womit man auf Batterien (im stationären Einsatz) verzichten kann. Außerdem sind zwei IR-Dioden angebracht, die ans 36kHz-Signal angekoppelt sind, um die Hinderniserkennung zu erweitern.
Hier sieht man noch, wie das Display die aktuellen Messwerte der Liniensensoren angezeigt:
Anhang 18215
Wenn nichts angeschlossen ist, ist der ASURO wieder vollständig "normal".
Gruß
ASURO