Mikrocontroller - Ein Leitfaden für Anfänger - Einführung
Teilen
Mikrocontroller - Ein Leitfaden für Anfänger - Einführung
Dies ist die erste in einer langen Reihe von Tutorials, die einen Leitfaden für Anfänger und ein Tutorial zum Atmel AVR Atmega32 Mikrocontroller bieten sollen. Ich werde Ihnen anhand von Beispielen und Projekten zeigen, wie Sie diesen Mikrocontroller programmieren und Funktionen für ihn bereitstellen, und welche Anwendungen und Einsatzmöglichkeiten er hat.
Bei Mikrocontrollern im Allgemeinen ist es gut zu wissen, dass diese kleinen Chips überall zu finden sind. Man findet sie in Mikrowellenherden, neuen Geräten, Automobilen, Fernsehgeräten usw. Diese Mikrocontroller steuern und erfassen die umgebende Elektronik und Umgebung. Zum Beispiel können Mikrocontroller Ausgaben an ein Display, einen Motor, LEDs usw. liefern und die Umgebung erfassen, wie z.B. Neigung mit einem Beschleunigungssensor, Licht, Winkelgeschwindigkeit mit einem MEMS (Microelectromechanical System) Gyroskop, Schall, Encoder für Bewegung, Temperatur und Tasten- oder Tastatureingaben.
Um Ihnen ein grundlegendes Verständnis des Mikrocontrollers zu vermitteln: Der AVR Atmega32 Mikrocontroller gilt als Computer auf einem Chip. Der Mikrocontroller ist in der Lage, eine Reihe von Anweisungen in Form eines Programms auszuführen. Die Programmiersprache, die ich für diese Projekte verwenden werde, ist C++. Um den Benutzern dieser Website die beste Möglichkeit zum Lernen zu geben, werden die C++-Programme sehr detailliert erklärt.
Das wirklich Coole an Mikrocontrollern ist, dass man die Kontrolle über alle Pins hat. Für einen Anfänger kann dies ein schwieriges Konzept sein, besonders ohne Erfahrung mit Elektronik. Keine Sorge, ich werde Sie durch jedes kleine Detail führen. Jeder Pin hat eine spezielle Zuweisung oder kann als Eingangs- oder Ausgangsfunktion verwendet werden, mit einigen Ausnahmen, den Strom-Pins.
Auf der linken Seite des Chips, wenn man ihn von oben betrachtet und das kleine Dreieck oben links ist, befinden sich 20 Pins (dies ist ein 40-Pin-Mikrocontroller). Die ersten von oben links sind die PB0-7 Pins. Das sind insgesamt 8 Pins, da der Index dieser Pins und fast alles im Programm mit einem Index bei 0 beginnt. Diese Pins werden "Port B" genannt und es gibt 3 weitere Ports, die von A bis D bezeichnet sind. Diese Ports können so eingestellt werden, dass sie Informationen empfangen, und das nennt man INPUT, und sie können so eingestellt werden, dass sie Spannung in irgendeiner Form ausgeben, das nennt man OUTPUT. Allgemeine Strom-Pins, um den Strom für den Chip zu empfangen, heißen VCC und GND. Alle bis auf einen Pin von Port D (PD0-6) befinden sich ebenfalls auf der linken Seite (unterer Abschnitt). PD7 (Pin 7 von Port D) ist ganz allein und beginnt auf der rechten Seite des Mikrocontrollers.
Auf der rechten Seite, und dem Ende von Port D, wurde Port C von der unteren Ecke nach oben fortgesetzt. Von da an folgten meine Lieblingspins, die Analog-Digital-Pins. Diese Pins haben die Fähigkeit, die Umgebung mit Hilfe von Komponenten zu erfassen, die diesen Pins eine analoge Spannung zuführen. Machen Sie sich keine Sorgen, wenn Sie an dieser Stelle Analog oder sogar Digital nicht verstehen, es wird später ausführlicher erklärt. Diese Analog-Digital-Wandler-Pins bilden Port A.
Ein Beispiel für die Verwendung der Analog-Digital-Wandlung wäre beispielsweise die Erfassung der Temperatur. Sie können eine Komponente, die die Temperatur in ein Spannungsniveau umwandelt, einen Thermistor, an einen der Port-A-Pins anschließen, und der Mikrocontroller wandelt diese Spannung in eine Zahl von 0 bis 255 um (eine 8-Bit-Zahl - eine höhere Auflösung von 10 Bit ist möglich). Das Programm, das geschrieben und im Mikrocontroller gespeichert ist, kann diese Temperatur verwenden und auf eine bestimmte Weise reagieren. Wenn Sie beispielsweise den Thermistor an einem kochenden Topf haben, kann der Mikrocontroller reagieren und eine Ausgabe an einen anderen Pin senden, der piept oder ein Licht blinken lässt.
Weitere Merkmale dieses und anderer Mikrocontroller, abgesehen von der eigentlichen Programmierung, sind der Programmspeicherplatz (wo das Programm im Chip gespeichert ist und wie viel Platz Sie haben), der Arbeitsspeicher oder Platz für Daten und Variablen, die das Programm verwenden wird, und schließlich gibt es eine Uhr, die im Chip eingebaut ist und zählt. Das Zählen kann in vielen verschiedenen Geschwindigkeiten erfolgen, abhängig von der Geschwindigkeit des Chips und dem Teiler, der für die Geschwindigkeit ausgewählt wird. Das wird langsam kompliziert, also werde ich einen Schritt zurückgehen. Das Zählen kann in Sekunden, Millisekunden, Mikrosekunden oder was auch immer Sie für das Programm und die Anwendung bestimmen, die Sie auswählen.
Da diese Tutorial-Reihe auf Beispielen basiert, werde ich viele Details liefern. Natürlich wäre die Detaillierung für die Einführung unmöglich, und wenn Sie sehr abenteuerlustig sind, können Sie sich das Datenblatt und das Handbuch für diesen Mikroprozessor ansehen, aber lassen Sie sich von diesem riesigen Dokument nicht davon abhalten, diese unglaublichste Technologie lernen zu wollen. Sobald Sie gelernt haben, gibt es keine Grenzen für die Anwendung, von winzigen Robotern bis hin zu extrem großen architektonischen Wundern, die sich bewegen und spektakuläre Lichteffekte erzeugen, die manchmal mit der Umgebung interagieren.