ATMega88 als "Rasp"-Mega Pi IO"

Gast #3282204
Lesenswert?
• ▲
▼
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.
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.