Hallo,
Du wirst keine fertige Lösung finden.
Der Arduino ist fast immer nur mit einem Shield kompatibel. D.h. Arduino und
Shield (A) läuft, Ardunino und Shied (B) läuft. Arduino und Shied (A) UND
Shield (B) kann laufen- muss aber nicht. Es sei denn der Hersteller von
Shield (A,B) sagt, das es läuft.
Über die Schaltpläne der Datenblätter kommst Du genau dahinter, welche Pin´s
von einem bestimmten Shield benutzt werden.
Wenn Du jetzt ein Shield (A) kaufst, das die Pin´s (1,2,3,4,5) benutzt, dann
solltest Du darauf achten- beim kauf von Shield (B), das eben dieses die Pin´s
von Shied (A) NICHT benutzt.
Benutzt Shield (B) die Pin´s (4,5) von Shield (A) dann mußt Du schauen, ob Du
von einem Shield (A,B) die Pin´s (4,5) nicht auf- z.B. Pin (6,7) des Arduino
setzen kannst.
Dazu mußt Du einmal im Sketch schauen, ob Du einfach andere Pin´s deklarieren
kannst- zum anderen, ob es möglich ist, diese in der Lib zu ändern.
Auch muss der Arduino in der Lage sein, das an Pin (4,5) geforderte Signal an
den Pin´s (6,7) zu liefern.
Beispiel:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
Das sind die Pin´s der "LiquidCrystal" die mein LCD benötigt.
Nun wollte ich aber auch die IR-Lib benutzen. Die setzt zwingend den Pin 3
ein- ohne diesen läuft da nichts.
Nun habe ich im Datenblatt des LCD geschaut, was denn Pin 3 macht. Pin 3 macht
nichts besonderes. Das kann jeder.
Diese "nicht besondere Signal" kann die Lib- wie auch der Arduino an einen
anderen Pin senden.
Also habe ich es geändert:
LiquidCrystal lcd(12, 11, 5, 4, 7, 2); // Pin 3 (IR) gegen Pin 7 getauscht
Nun kann ich das LCD wie auch die IR-Geschichte zusammen betreiben.
Dadurch, das die LCD-Lib sehr flexibel ist, ist es möglich gewesen das "einfach"
zu ändern. UND NUR BEI EINEM PIN.
Jetzt möchtest Du mehrere Shield´s beteiben, die "richtig ins Eingemachte"
gehen. Das betrifft die Hardware wie auch die Software.
- Du suchst also nach einer Lösung die die sagt, welche Pin´s Du nutzen mußt
- wie die Lib dazu geändert werden muss
- wie der Sketch dazu geändert werden muss
- und ob das überhaupt mit Deinem Arduino möglich ist
Man (Frau) weiß aber nicht, ob Deine Shield´s überhaupt einzeln laufen.
Oder was Du da sonst treibst.
Schaltpläne scheinen für Dich ein rotes Tuch zu sein, sonst wüßtest Du ja
welche Pin´s genutzt werden. Also mache es nach der "SteckBrettMethode"
Schreibe Dir auf, welche Pin´s von welchem Board genutzt werden, diese
vergleichst Du dann. Dann änders Du Deinen Sketch und auch wohl die Lib eines
Shield´s. Legst Die einzelnen Sketche zusammen und läßt das ganze dann
zusammen laufen. So einfach ist das…
Wenn Du es noch einfacher haben möchtest, dann suchst Du einfach im Internet
nach einem Sketch/User der genau Deine ShieldKombination nutzt.
Gruß und Spaß dabei
Andreas