Lernpaket Mikrocontroller Kap 1       

Elektronik-Labor  Lernpakete  AVR  LPmikros               


Das Franzis Lernpaket Mikrocontroller
1 Einleitung
 
Vor den eigentlichen Experimenten müssen Sie nur den Mikrocontroller in die Fassung stecken, den USB-Treiber installieren und die Software installieren. Diese Vorbereitungen sind jedoch schnell erledigt. Hier finden Sie die entscheidenden Informationen zum Aufbau und zur Schaltung der Experimentierplatine und zum Inhalt der beiliegenden CD.
 
1.1 Bauteile
 
Das Lernpaket enthält eine fertig bestückte Platine mit USB-Schnittstelle und allen erforderlichen Bauteilen. Bitte überprüfen Sie den Inhalt und stellen Sie sicher, dass Sie die Bauteile korrekt zuordnen.
 
1  Bestücke Platine mit USB-Interface 
1  USB-Kabel
1  Mikrocontroller ATtiny85
1  Elektrolytkondensator 100 µF
1  Kondensator 10 nF
1  Fototransistor (im klaren LED-Gehäuse)
1  grüne LED
1  rote LED
2  Widerstände 10 kΩ  (Braun, Schwarz, Orange)
2  Widerstände 1 kΩ  (Braun, Schwarz, Rot)
 
 

 
Abb. 1.1: Alle Bauteile im Lernpaket 
 
Setzten Sie den Mikrocontroller in den IC-Sockel, wie es das Foto zeigt. Richten Sie dazu die Anschlussbeinchen parallel aus, damit sie genau in den Sockel passen. Bei einem neuen IC sind die Beinchen meist etwas nach außen gespreizt. Sie lassen sich leicht zurechtbiegen, indem man das IC seitlich auf eine Fläche drückt. Beachten Sie beim Einsetzen in den Sockel die korrekte Polung. Pin 1 ist der Reset-Pin auf der Außenseite der Platine, Pin 4 ist der GND-Pin ganz an der Platinen-Ecke. 
 

 
Abb. 1.2: Der eingesetzte Controller 
 
1.2 Die Controller-Platine
 
Die vollständige Schaltung des Entwicklungssystems sehen Sie in Abb. 1.3. Der Mikrocontroller ATtiny85 ist ein IC im achtbeinigen DIP-Gehäuse. Alle Anschlüsse sind an zusätzliche Sockelkontakte geführt und können in den Versuchen mit anderen Bauteilen verbunden werden. Acht weitere Anschlüsse des Sockels stellen ein kleines Experimentierfeld dar. Hier können die zusätzlichen losen Bauteile eingesteckt werden. Der insgesamt 24-polige IC-Sockel dient also sowohl zu Aufnahme des Controllers als auch als Stecksystem.
 

Abb. 1.3: Das Schaltbild der Platine 
 
Das Experimentiersystem benötigt keine weitere Stromversorgung, da es über den USB-Anschluss mit 5 V versorgt wird. Zur Absicherung gegen Kurzschlüsse ist eine Polyswitch-Sicherung eingebaut. Dennoch sollten Kurzschlüsse und Verbindungen zu externen Stromquellen sorgfältig vermieden werden. 
 
Der USB-Adapter benötigt einen präzisen Takt und verwendet dazu einen 12-MHz-Quarz. Der Mikrocontroller ATtiny85 braucht dagegen keinen Quarz, weil er über einen präzisen internen Oszillator verfügt. Das macht den Baustein so interessant, denn man kann Anwendungen ganz ohne externe Bauteile entwickeln.
 

Abb. 1.4: Anschlussbelegung und Zusatzfunktionen des ATtiny85 
 
Der Mikrocontroller verwendet drei Leitungen an den Anschlüssen PB0 bis BP2 und zusätzlich die Reset-Leitung für die Programmierung. Sie sind mit Widerständen direkt an den USB/Seriell-Wandler CH340 geführt. Er liefert über seine RTS-Leitung Daten und über TXD ein Taktsignal an den Controller. Gleichzeitig werden Daten vom Pin PB1 zurück gelesen. DTR bildet die Reset-Leitung. Der Programmiervorgang wird weiter unten noch genauer erläutert.
 
Dieselben Anschlüsse haben aber auch noch eine andere Funktion. Mit passenden Programmen im Mikrocontroller lässt sich eine serielle Schnittstelle realisieren, über die im laufenden Betrieb Daten zwischen PC und Controller ausgetauscht werden. Der PC sendet dann einen seriellen Datenstrom über TXD und empfängt Daten an RXD. Diese serielle Schnittstelle wird auch für die Programmierung über den Bascom-Bootloader verwendet.
 
Außerdem kann die Verbindung zwischen PC und Controller auch statisch genutzt werden. Zwei Leitungen dienen dann als Eingänge des Mikrocontrollers. Der PC legt 1- oder 0-Zustände an, die ein Controllerprogramm über die Anschlüsse PB0 und PB2 lesen kann. Umgekehrt kann über PB1 ein Zustand ausgegeben werden, den der PC über CTS liest. Abb. 1.4 zeigt alle Portanschlüsse des Mikrocontrollers und ihre Sonderfunktionen.
 
 
1.3 Entwicklungs-Software
 
Zur Installation der Software muss das Anwenderprogramm zusammen mit weiteren Daten auf die Festplatte kopiert werden. Entpacken Sie dazu das Archiv LPmicro85.zip von der CD in ein Verzeichnis Ihrer Festplatte wie z.B. C:\Franzis\LPmikro85\. Mit enthalten ist das Datenblatt des Mikrocontrollers, das man immer wieder aufschlagen sollte, wenn neue Hardware-Elemente vorgestellt und erprobt werden.
 
Vor dem ersten  Anschluss der Platine muss der USB-Treiber des USB/Seriell-Wandlers CH340 installiert werden. Starten Sie das Programm Install.exe (Abb. 1.5) im Verzeichnis CH341SER. Es kopiert die notwendigen Dateien auf Ihren PC. Der Erfolg wird abschließend angezeigt (Abb. 1.6).
 
 

 
Abb. 1.5: Das Installationsprogramm 
 
 
 

 
Abb. 1.6: Treiber installiert 
 
Schießen Sie dann die Platine über das beiliegende USB-Kabel an. Die Bereitschafts-LED auf der Platine leuchtet und zeigt an, dass Betriebsspannung anliegt. Der USB/Seriell-Wandler installiert sich als virtuelle serielle Schnittstelle, in den meisten Fällen als COM2. Sie können die Installation mit dem Windows-Gerätemanager überprüfen (Abb. 1.7). Die vergebene COM-Nummer ist wichtig, weil sie in der Software angegeben werden muss.
 
 
 
 
Abb. 1.7: Erfolgreiche Verwendung als COM2
 
Starten Sie das Programm LPmikro85.exe. Der Startbildschirm zeigt das vereinfachte Schaltbild der Hardware und den Anschluss an die virtuelle serielle Schnittstelle. Bei der späteren Arbeit können Sie immer wieder einmal auf die Registerkarte „Start“ wechseln um dort nachzusehen, welcher Anschluss wo zu finden ist.
 

 
Abb. 1.8: Der Startbildschirm 
 
Nun muss noch die verwendete serielle Schnittstelle eingestellt werden. Klicken Sie auf COM und dann z.B. auf COM2 oder eine andere Schnittstelle entsprechend der vergebenen COM-Nummer. Wenn die Schnittstelle vorhanden ist und geöffnet werden kann, erscheint hier ein Häkchen. Beim Beenden des Programms wird die verwendete Schnittstelle in der Datei LPmikro85.ini gespeichert. Bei jedem neuen Start wird diese Einstellung wieder übernommen.
 

 
Abb. 1.9: Auswahl der Schnittstelle 
 
Wechseln Sie als nächstes auf die Registerkarte Fuses und klicken Sie auf die Schaltfläche 8 MHz, MCS Bootloader (Abb. 1.10). Nach kurzer Zeit erhalten Sie eine ok-Meldung. Damit sind einige Grundeinstellungen des Mikrocontrollers programmiert. Er arbeitet nun mit einer Taktfrequenz von 8 MHz und ist für den späteren Einsatz mit dem Bootloader vorbereitet.
 
 
 

 
Abb. 1.10: Programmieren der Fuses 
 
Öffnen Sie die Registerkarte Upload (Abb. 1.11) und klicken Sie dann auf Load Hex (Abb. 1.12). Es öffnet sich ein Dateimenü für Programmdateien im Hexadezimal-Format (Intel-Hex-Files). Damit können Sie beliebige Hex-Files in den Controller laden. Beginnen Sie mit dem Programm Interface.hex, das Sie im Grundverzeichnis LPmikro85 finden.
 

 
Abb. 1.11: Software-Upload 
 

 
Abb. 1.12: Öffnen einer Hex-Datei 
 
Mit der Auswahl des Hex-Files beginnt die Datenübertragung. Das Programm wird in einem Textfenster ausgegeben, sodass man bei Bedarf den Adressbereich und weitere Details nachschauen kann. Ein Balken zeigt den Fortgang der Übertragung an (Abb. 1.13). In der Kopfzeile steht der Pfad und der Dateiname des gerade geladenen Programms.
 

 
Abb. 1.13: Upload des Programms Interface.hex 
 
Die erfolgreiche Übertragung wird mit einer ok-Meldung angezeigt (Abb. 1.14). Falls eine Fehlermeldung erscheint, liegt es in den meisten Fällen an einer falsch eingestellten COM-Schnittstelle. Mit der Reload-Taste kann dasselbe Programm noch einmal übertragen werden. Das ist allerdings nur sinnvoll, wenn es in der Zwischenzeit bearbeitet und neu kompiliert wurde und man die neue Dateiauswahl sparen will.
 

 
Abb. 1.14: Upload abgeschlossen 
 
Das Programm Interface.hex ist relativ lang und benötigt mehr als eine Minute für die vollständige Übertragung. Die Upload-Funktion der Software ist also relativ langsam, wird aber auch nur selten benötigt.
 
Später wird meist der Bootloader verwendet, wobei die Übertragung direkt aus der Basom-Entwicklungsumgebung wesentlich schneller ist. Dazu muss einmal die Datei Bootlaoder85.hex in den Controller geladen werden. Das Programm sorgt dann für eine schnelle Selbst-Programmierung des Controllers. Jedes fertige Programm kann aber auch direkt mit der ISP-Programmierung über LPmikro85.exe in den Controller geladen werden, dann ohne den Bootlaoder. Damit hat man ein vielseitiges Programmiergerät für den ATtiny85, das übrigens auch für den ATtiny45 funktioniert. Der ATtiny25 kann dagegen nicht programmiert werden, weil er eine andere Blockgröße verwendet.   


Software Download: LPmikro85.zip


Elektronik-Labor  Lernpakete  AVR  LPmikros