Hallo, Ich möchte gerne etwas mit meinen raspberrys herumbasteln. Leider sind die GPIO-Plätze etwas begrenzt, wodurch ich auf die Idee kam, vielleicht hierfür eine extra Controller-Platine zu entwickeln. Ich möchte am raspberry gerne so einige Komponenten anbringen, die ich dann programmiertechnisch ansprechen und abfragen möchte. Unter anderem soll bei jedem der raspberry's ein IR-Sender sowie IR-Empfänger, NFC-Reader, LED's und später vielleicht auch weitere Komponenten wie Lautsprecher anbringen. Bloß wie stelle ich das ganze am besten an? In der Programmierung selbst bin ich ein Genie, in der Elektrotechnik bin ich aber nicht so sonderlich begabt; kann mir da jemand Tipps zu geben? Ich würde gerne eine Controller-Platine entwickeln, an der alle diese Komponenten angeschlossen werden können, drr Controller selbst soll über die GPIO-Ports anweisungen und Abfragen durch die Software bekommen.
Nimm den I2C Bus auf dem GPIO und entsprechende ICs, da brauchste keinen weiteren Controller. Microchip hat z.B. I2C mit 16 Ein- / Ausgängen, auch temeratur und viele andere Sensoren gibt es direkt mit I2C Ausgang :)
Um ein Gefühl für das Ganze zu bekommen würde ich einen Arduino per USB anhängen und dann die Kommunikation über Firmata tätigen.
Adrian schrieb: > Ich würde gerne eine Controller-Platine entwickeln, an der alle diese > Komponenten angeschlossen werden können, drr Controller selbst soll über > die GPIO-Ports anweisungen und Abfragen durch die Software bekommen. Warum so umständlich? Mach einfach mehr GPIOs dran. Wie schon geschrieben: Einfach per I2C oder SPI entsprechende(n) IO-Expander-Chip(s) anschließen, und den Linux-Kernel per "echo" in seine i2c-Sysfs-config-Files bekanntmachen. Fertig. Keine detaillierte Kenntnis über den I2C-Chip nötig, keine besondere Anpassung der Applikationen, alles ist fix und fertig im Kernel vorhanden. Also sofort verfügbare neue GPIOs, die exakt wie die vorhandenen GPIOs angesteuert werden können. Sh hier, "Method 4": https://www.kernel.org/doc/Documentation/i2c/instantiating-devices Dauerhaftes Einbinden ginge z.B. über ein DeviceTree-Overlay beim Booten. https://www.kernel.org/doc/Documentation/devicetree/bindings/gpio/gpio-mcp23s08.txt
Häng einfach einen Arduino über USB dran. Das habe ich bei mir auch gemacht und der Arduino ist als IR-Empfänger geschaltet. Damit wandert auch evtl zeitkritische Ansteuerung in den Arduino, was dort einfacher ist. Man kann auch mehrere Arduinos anschliessen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.