Auch ich bin der Versuchung erlegen, mit einem Raspberry Pi zu experimentieren. Was mir dabei gut gefallen hatte war die Möglichkeit, ohne Umweg über einen Microcontroller direkt vom PC aus Kontakt mit der Außenwelt aufzunehmen, IO-Pins zu schalten, via TWI-Bus Sensoren auszulesen und TWI-Slaves zu dirigieren. Allerdings ist der mit 700MHz getaktete Raspberry bei diesen Übungen völlig unterfordert. So entstand der Gedanke, die IO- und TWI-Funktionalität des Raspberry auf einem wesentlich einfacheren und preiswerteren ATMega88 nachzubilden. Der "Rasp"-Mega Pi IO stellt zur Verfügung: - 16x IO-Pins als programmierbare Ein- oder Ausgangspins, - 16x IO-Pins für externe PinChange Interrupts programmierbar, - 2x IO-Pins für externe, einstellbare Interrupts programmierbar (INT0/INT1), - 4x Eingänge als 10-Bit ADC verwendbar, - 6x Eingänge zum Auslesen von DS18B20 Temperatursensoren vorbereitet, - 1x TWI-Bus, der als TWI-Master / TWI-Slave arbeitet, - 1x SPI-Bus (wegen fehlenden Bedarfes z.Z. nicht implementiert) - Die Stromaufnahme des ATMega beträgt im Idle-Modus unter 1mA. Vom PC aus kann man mit jeder Software, die via Serieller Schnittstelle senden und empfangen kann (z.B. mit Python - oder im einfachsten Fall mit Hilfe eines Terminalprogramms wie HTerm) auf den ATMega zugreifen, seine IO-Pins konfigurieren, setzen, auslesen, Temperaturen mit dem DS18B20 messen und über seinen TWI-Bus auf angeschlossene Aktoren, Sensoren etc. zugreifen. Die Hardwarekosten für den "Rasp"-Mega betragen ca. 2-6 Euro, je nach Ausbaustufe. Der Sourcecode in C und das Hexfile für den ATMega88 sind in der Datei "Raspmega_c.zip" beigefügt. Das verwendete Protokoll für die binäre Kommunikation mit dem ATMega ist in der Datei "Doku.pdf" dokumentiert. In der Readme.pdf habe ich einige Interna zur Software auf dem ATMega zusammenfasst und mein "Experimentierboard" schematisch dargestellt. Im Archiv "Python.zip" gib es eine Reihe von Programmbeispielen für Python3.2/Tkinter, die während der Entwicklung begleitend entstanden. Viel Spaß beim Experimentieren, Michael S.
- auf den 1. Blick: _gute,solide Sache(8bit AVR + raspi = war zu erwarten); _aufgezeigte Kommunikationsprobleme( = ebenfalls); - für Anwendungen crossover "Cookie Bord" oder "Embedded Pi" runterskalieren auf AVR; http://www.coocox.org/Index.html Der Gedanke dahinter, AVR-User an die Welt der 32-bitter heranzuführen, - lobenswert - und durchaus "logisch";
Hallo allerseits, im schematischen Schaltplan gab es noch ein paar kleinere "Schnitzer", die sind nun korrigiert. Und der Programmcode für den Betrieb eines Kompassmodules LSM303 in Python3.2/Tkinter ist noch beigefügt. Michael S.
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.