Start
Experimente
Grundlagen
Produkte
- Modul-Lino - Sketches - Bootloader - Bascom
Neues
Impressum
|
Der Modul-Lino
Modul-Bus stellt ein neues Entwicklungssystem vor. Der Modul-Lino
ist ein Arduino-kompatibles Entwicklungssystem auf der Basis des ATmega32. Manch
einer wird vielleicht sagen: Noch ein Arduino, gibt es da nicht schon genügend
unterschiedliche Systeme? Kann schon sein, aber wir haben uns entschlossen, die
Vorteile des bewährten ES-M32 nun auch denjenigen zugänglich zu machen, die
gern mit der Arduino-Entwicklungsumgebung arbeiten.
Als das ES-M32 entwickelt wurde stand die universelle
Verwendbarkeit im Mittelpunkt. Was braucht man in den meisten Fällen, was
sollte gleich mit an Bord sein. Das Konzept hat sich bei zahlreichen
Entwicklungen bewährt. So wurde z.B. das Elektor-DSP-Radio anfangs auf dem
ES-M32 entwickelt. Und zahlreiche kundenspezifische Entwicklungen wurden bei
Modul-Bus auf dieser Basis begonnen, um dann später eine kompaktere Platine für
die Serie zu entwickeln.
|
Radio-Enwicklung
Der heutige Quasi-Standard in der Arduino-Welt ist der
Arduino Uno, ebenfalls mit 32 KB Flash. Mit diesem System kann man gut
arbeiten. Aber man stößt relativ schnell an eine Grenze, bei der man
zusätzliche Hardware in Form eines Shields einsetzen muss. Und oft werden die
Portanschlüsse knapp. Setzt man z.B. ein LCD ein, bleiben für manche Aufgaben
nicht mehr genügen Pins frei.
Mit dem Modul-Lino ist das anders. Das Wichtigste ist schon
vorhanden, sodass man in den meisten Fällen ohne zusätzliche Verdrahtung gleich
loslegen kann:
-
ATmega32, 16 MHz, 32 IO-Ports, gesockelt
-
On-Board ISP-Programmer
-
Wahlweise RS232 oder USB verwendbar
-
Stromversorgung über USB oder extern
-
Portanschlüsse STK500-kompatibel mit GND und VCC
-
LC-Display on Board
-
Poti, vier Taster, zwei LEDs
-
Lochrasterfeld für Hardware-Erweiterungen
Und wenn ein Projekt fertig ist kann man den programmierten
Mega32 aus dem Sockel nehmen und auf einer eigenen Platine einsetzen. Ein neuer
Mega32 wird dann gleich auf der Platine ohne ein zusätzliches Programmiergerät
mit dem Arduino-Bootloader programmiert, und schon kann es weiter gehen.
Wer das ES-M32 kennt wird nur einen Unterschied entdecken:
Die Taktfrequenz wurde im Interesse einer besseren Kompatibilität auf 16 MHz
hochgesetzt. Alles andere betrifft die Software. Mit der erweiterten
Programmiersoftware ESM32.exe kann nun der Arduino-Bootloader in den Mega32
gebrannt werden. Und damit ist das System fit für die Verwendung mit der
Arduino-Entwicklungsumgebung.
Die Arduino-IDE unterstützt eigentlich keinen Mega32. Man
kann aber ein eigenes Board definieren und einfügen. Bei der Umsetzung des
Projekts haben diese Seiten geholfen:
http://www.zwanzischmark.de/howto/atmega32-mit-arduino-ide
http://wiki.edwindertien.nl/doku.php?id=software:bootloaders#arduino_bootload |
Installation
(Update 2.2.15, vereinfachte Installation, neuer Zip-Ordner)
Download: Modulino32.zip
Laden Sie die aktuelle Arduino-Software (derzeit Version
1.05) und entpacken Sie sie in ein eigenes
Verzeichnis. Extrahieren Sie die im Zip-Order Modulino32.zip
enthaltenen Order und Dateien in Ihren Sketchbook-Ordner. Wo Ihr
Sketchbook-Ordner steht können Sie sehen, wenn Sie die Einstellungen in
der Arduino-Oberfläche (unter Datei/Einstellungen oder mit der
Tastenkombination [Strg] + [,]) einsehen. Sie können den
vorgeschlagenen Ordner beibehalten oder einen neuen Ordner (z.B.
Modulino32) an einem anderen Ort auswählen. Nach dem Entpacken sollte
in Ihrem Sketchbook-Ordner ein Verzeichnis mit dem Namen
"hardware" enthalten sein, in dem sich die restlichen Dateien befinden.
Starten Sie die Arduino-Entwicklungsumgebung neu. Unter Tools >
Boards können Sie nun das Board Mega32 auswählen.
Bei
Bedarf können Sie mit dem Programm ESM32.exe den Booatloader in den
Controller brennen. In hardware/bootloaders/stk500 steht die Hexdatei des Bootloaders ATmegaBOOT_168_atmega32.hex,
die Sie bei Bedarf mit dem Programm ESM32.exe in den Controller brennen können.
In den meisten Fällen wird das allerdings nicht nötig sein, weil der Bootloader
bereits bei der Auslieferung des ES-Modulino geladen ist.
|
Arduino-Pins Eine Besonderheit der Arduino-Software ist, dass alle Pins
einfach nur Nummern tragen. Der Mega32 hat deutlich mehr IO-Ports als der
Mega328 im Arduino Uno. Daher ergibt sich eine andere Nummerierung der
Anschlüsse, die man beim Programmieren berücksichtigen muss:
0…7: Port D0…D7,
wie beim Arduino Uno
8…15: Port B0…B7,
an B2 bis B7 liegt das LCD
16…23: Port C0…C7,
acht zusätzliche IO-Pins
24…31:
Port A0…A7, auch Arduino-Analogeingänge A0…A7
|
Der erste Test
Die Arduino-Software wird mit zahlreichen Beispielprogrammen
(Sketches) geliefert, die man teilweise leicht anpassen sollte. Der Beispiel-Sketch
Blink funktioniert zwar, schaltet aber den Pin 13 = B5. Will man die LED1 auf
dem Modulino blinken lassen muss der Pin 4 = D4 angesprochen werden.
|
ExamplesMega32.zip (bereits in Modulino32.zip enthalten)
Damit das Programm in das System geladen werden kann muss
das richtige Board (ATmega32) und
die richtige Schnittstelle (z.B. COM2) eingestellt sein: Nach einem Klick auf
den Upload-Button erscheint zunächst die Meldung „Sketch kompilieren“ und kurz
darauf „Uploaden….“. Nun muss man die Reset-Taste des Modulino drücken, damit der Bootloader
startet. Das Programm wird nun geladen und ausgeführt. Die LED blinkt.
|
|