Entwicklerboard, Programmer und Software

Damit Sie Ihre Schaltungen und Programme testen können, ist es empfehlenswert sich ein Entwicklerboard zu kaufen bzw. noch besser eines zu bauen.

Wenn Sie sich selbst ein Board bauen, lernen Sie den Aufbau und die Funktion am Besten kennen. Eine andere und einfache Möglichkeit ist der Aufbau auf einem Experimentierboard (siehe unten).


Entwicklerboard im Eigenbau

AT90PWM316 Entwicklerboard

  1. 8 LEDs
  2. ISP-Anschluss für den Programmer
  3. Temperatursensor mit Analogausgang
  4. IR Bewegungssensor
  5. Portausgänge 1 bis 16
  6. 5V Spannungsregler für die Versorgungsspannung
  7. I2C digitaler Temperatursensor
  8. Mikrocontroller AT90PWM313
  9. Portausgänge 17 bis 32
  10. 3 RGB LEDs
  11. MOSFET
  12. Lichtsensor

 

Auf der Freifläche lassen sich verschiedene kleinere Schaltungen oder Bauteile für Experimente auflöten.

 

Layout des Mikrocontrollers

(gezeichnet mit Eagle)

AT90PWM316 Layout

 

Schaltplan des AT90PWM313

Alle Anschlüsse des AT90PWM316 werden mit den Buchsenleisten (JP6 und JP7) verbunden. Ein externer Quarz wird nicht verwendet
(Für eine größere Darstellung das Bild anklicken.)

AT90PWM316 Schaltplan

 

Aufbau auf dem Entwicklerboard (Steckbrett)

Das ist für Anfänger sehr zu empfehlen, da der Lerneffekt durch das Stecken und Verbinden der Bauteile sehr hoch ist.
Der Aufbau geht schnell vor sich und Fehler können schnell korrigiert werden. Ein Nachteil ist, dass man bei größeren Schaltungsaufbauten schnell die Übersicht verlieren kann.

Breadboard Aufbau

Hier wurde eine kleine Schaltung mit dem ATtiny2313 aufgebaut.
Auf der linken Seite ist ein linearer Spannungsregler(7805) mit Ein- und Ausgangskondensatoren sowie einer LED-Anzeige für den Betrieb von +5V verbaut. Der Spannungsregler liefert einfach eine konstante Spannung von 5V, welche wir für die Versorgung des Mikrokontrollers benötigen.
Mittig ist ein 6-poliger Stecker für die ISP-Schnittstelle und rechts eine LED mit Vorwiderstand an den Portpins des Controllers angeschlossen.
Eine sehr ausführliche Beschreibung zu ISP inkl. Pinbelegung finden Sie auf der Seite mikrocontroller.net.

 

Übertragung an den Speicher des Mikrocontrollers (ISP-Programmer)

Damit wir unsere am PC geschriebene Software in den Speicher des Mikrocontrollers übertragen können, benötigen wir einen ISP-Programmer.

ISP (In-System-Programming) (wird auch gelegentlich als SPI bezeichnet) bedeutet, einen Mikrocontroller oder anderen programmierbaren Baustein im eingebauten Zustand zu programmieren. Dazu muss der Mikrocontroller entsprechend verschaltet sein. Das bedeutet, die benötigten Anschlüsse am Mikrocontroller müssen zugänglich und nicht anderweitig benutzt sein, beziehungsweise nur im zulässigen Rahmen.
Atmel verwendet für ihre 8-Bit RISC Mikrocontroller zum Teil unterschiedliche ISP-Protokolle. Das bekannteste davon wird einfach als ISP bezeichnet.

Man sollte sich einen fertigen, original Atmel (keinen Clone) ISP-Adapter kaufen. Zum Beispiel für ISP (und PDI) Programmierung Atmels original AVRISP mkII. Das ist eine Investition, die viel Zeit und Ärger spart, denn es geht nichts über zuverlässiges Werkzeug.

 

Atmel AVR Dragon

Der AVR Dragon ist ein preiswerter ISP (und ICE) von Atmel.

Die großen Vorteile des Dragons sind, dass er alle Programmiermodi beherrscht, inklusive High-Voltage Parallel Programming ("verfuste" AVRs retten), dass er ein natives USB-Interface hat, von AVR-Studio unterstützt wird, und sogar JTAG und debugWIRE ICE / Debugging unterstützt (bei den AVRs die dies können).

Zu den größten bekannten Nachteilen gehören, dass der Dragon völlig "nackt" kommt. Kein USB-Kabel, kein Gehäuse, nicht einmal Abstandsbolzen unter der Platine, keine Patchkabel und nicht einmal die Fassungen zum Einstecken von AVRs sind bestückt. Eine gedruckte Anleitung gibt es auch nicht. Daneben wird aufgrund des Stromverbrauchs des Dragon ein USB-Hub mit Netzteil benötigt.

Weiter ist der Dragon dafür bekannt, empfindlich auf statische Aufladungen zu reagieren. Ein Spannungsregler und ein Ausgangstreiber gehen dabei besonders gerne kaputt. Ein gerne von Anfängern gemachter Fehler ist es, den Dragon im Betrieb auf dem mitgelieferten "Schaumstoff" aus der Verpackung liegen zu lassen. Das ist jedoch kein Schaumstoff, sondern leitendes Moosgummi.

Weitere Schutzmaßnahmen für gefährdete AVR Dragons findet man auf der Dragonlair-Seite von Nard Awater.

 

Programmiersoftware AVR-Studio

AVR-Studio ist eine kostenlose Entwicklungsumgebung (IDE) für die Programmierung der AVR-Mikrocontroller von Atmel.
Sie besteht aus einer Projektverwaltung, einem Editor und einem Debugger, der mit dem integrierten Simulator, einem JTAG-Adapter oder einem In Circuit Emulator genutzt werden kann.
Mit dem AVR Studio kann in Assembler und der Programmiersprache C programmiert werden. Dazu muss vor der Installation des AVR Studio der GNU C Compiler für AVRs WinAVR installiert werden.

 

Schematic der Entwicklungsumgebung

Mit der Entwicklungsumgebung wird also die Software am PC programmiert und über den Programmer in den Speicher des UC am Board übertragen.

Entwicklungsumgebung AVR Schematic

 

Beispiel:
Ein AVR-Dragon ist über die ISP-Schnittstelle mit einem ATtiny2313 verbunden.

AVR-Dragon ATtiny2313