Mikrocontroller sind aus der modernen Technik nicht mehr wegzudenken. Auch im Haushalt vom Fernseher bis zur Waschmaschine gibt es sicher kaum noch ein Gerät, das, wenn auch für den Anwender meist nicht sichtbar, ohne ihn auskommt. Auf dieser Seite sind sowohl einige Anwendungsbeispiele mit Hard- und Software, als auch einige Softwarewerkzeuge für die Programmentwicklung und die Programmierung solcher Mikrocontroller bereitgestellt. Für Interessierte wird auch eine relativ leicht nachzubauende Experimentierplatine beschrieben.
Entwicklungsumgebung | Experimentierplatine | ISP-Programmierung | CAN-Bus |
Weitere Informationen und Datenblätter |
Für die Softwareentwicklung bei Mikrocontrollern benötigt man ein System, das auf einem Fremdcomputer (z.B. PC) eingesetzt wird. In einem Texteditor wird zunächst der Quelltext des erforderlichen Programms geschrieben. Hierbei kann man die typ-spezifische Assemblersprache oder auch eine der für viele Typen verfügbaren Hochsprachen (meist C, seltener Pascal) benutzen. Anschließend muss der Quelltext mit einem Assembler oder Compiler in die jeweilige Maschinensprache (Binärcode) übersetzt werden. Dieser Code kann dann auf verschiedene Weise auf die Original-Mikrocontroller-Hardware übertragen werden:
Für das Testen von komplexeren Programmen benötigt man zusätzliche Hilfsmittel. Im einfachsten Fall genügt ein Softwaresimulator auf einem Fremdcomputer (z.B. PC). Bei Echtzeitanwendungen benötigt man Hardware-Emulatoren mit vielfältigen Debug-Möglichkeiten.
Für alle gängigen Mikrocontroller gibt es kommerzielle Entwicklungssysteme, die in der Regel auch Hochsprachen und Hardware-Emulatoren unterstützen. Leider sind derartige Systeme sehr teuer.
Es gibt aber auch kostenlose Software
Mit diesen Programmen können zwar eigene Quelltexte in Maschinencode übersetzt werden, hat man aber damit noch keine Testmöglichkeit für sein Programm und für die Programmierung eines Testsystems sind weitere Hilfsmittel erforderlich, wie z.B. ein Programmiergerät oder ein Programm zur In-System-Programmierung.
Mit dem von mir entwickelten Programmpaket Mc-Tools wird alles in einem Entwicklungssystem vereinigt. Das Programm eignet sich für die Verwendung mit allen Mikrocontrollern der 8051-Familie (Siemens, Philips, Atmel, etc.). Die aktuelle Version 6.0 enthält
Für ein Seminar, das regelmäßig an der Universität Kiel für Studierende der Physik abgehalten wird, habe ich ein Experimentiersystem entwickelt, das leicht nachzubauen ist. Es besteht aus einer Mikrocontroller-Platine mit verschiedenen Anschlussmöglichkeiten für externe Komponenten:
Der aus der Automobiltechnik stammende CAN-Bus bietet interessante Möglichkeiten
bei der Vernetzung von Mikrocontrollern, Sensoren und Aktuatoren. Er lässt sich
überall da einsetzen, wo es um die Überwachung und/oder Steuerung von Prozessen
(z.B. im Labor) geht. Ähnlich wie der I2C-Bus arbeitet er mit einer 2-Draht-Leitung,
ermöglicht aber deutlich längere Leitungen. Mit den auf dem Markt erhältlichen
Komponenten (u.a. auch Mikrocontrollern) lassen sich viele Aufgaben (auch z.B. in Haus und
Garten) lösen.
Der Atmel-T89C51xx-Controller kann mit diesem Programm über die integr. CAN-Schnittstelle programmiert werden. Es werden folgende PC-seitigen CAN-Interfaces mit dem Controller-IC 82C200/SJA1000 unterstützt:
Vollständige Installation (940 kB) |
Schaltplan SMD-Layout Eagle-Dateien
Mit dem Programm CAN-TERM Vers. 1.23 kann der Datenverkehr auf einem CAN-Bus überwacht werden. Zum Testen können auch Daten gesendet werden. Es werden folgende CAN-Interfaces mit dem Controller-IC 82C200/SJA1000 unterstützt:
Vollständige Installation (971 kB) |