Attiny, Atmega Erste Schritte

Viele von uns die mit dem Hobby Elektronik bzw. Programmierung beginnen, werden irgendwann mit Microcontroller zusammentreffen.

 

Heute ist vielen vielleicht der Begriff Arduino bekannt. Diese "Bastelplatinen" bestehen aus einem Atmel AVR und der nötigen Peripherie wie Stromversorgung, Serielle, USB oder Netzwerkverbindung und Sonderbauteile wie LCD, Taster, Motorcontroller ect.

Vorteil dieser Technologie:

- Einfache und Anfängerfreundliche Umgebung

- Open Source

- Viele Erweiterungsmöglichkeiten (Sensoren, Input und Output)

 

Nachteile:

- Bootloader braucht Platz

- Hardwaregebunden

 

Neben den Atmel AVR's gibt es natürlich noch weitere Microcontroller, ich befasse mich allerdings hier nur um diese.

 

Grundlagenforschung:

Was ist ein Microcontroller?

Ein Microcontroller ist ein Bauteil das einen Prozessor (CPU) und Peripherie gleichzeitig besitzt. Im Falle der Atmel AVR's befinden sich auch noch der Arbeitsspeicher, Flashspeicher und EEPROM Speicher im gleichen Bauteil.

 

Was kann ich mit einem Microcontroller machen?

Sehr viel, die Möglichkeiten sind allerdings vom Entwickler und der Hardware abhänig.

Eingänge oder Ausgänge steuern, Spannungs-/Frequenzmessung, Spannungs-/Freuqenzausgabe, Kommunikation über verschiedene Schnittstellen (I2C, Seriell, 1wire, CAN, ect.)

 

Welcher Microcontroller ist der richtige für mich?

Es kommt auf den Einsatzzweck an. Als erstes sollte man die benötigten Inputs und Outputs aufzeichnen.

Danach die benötigten Funktionen wie PWM, ADC, DAC und dann noch die Schnittstellen wie UART, I2C, SPI, CAN ect. und benötige ich 4,8,16 oder 32bit Speicherbreite? Wir beschäftigen uns hier mit den 8bit AVR's.

Wenn man dies hat, hilft ein Blick auf die Herstellerseite wie zB für die Atmel AVR's www.atmel.com

Jeder gute Hersteller hat eine Übersicht von seinen Produkten und sollte diese auch Vergleichen lassen.

 

 

Möchte man eine Platine selbst Herstellen, ist auch die Bauform eines Microcontrollers wichtig. Im Bild ist oben das für Hobbybastler gänige DIP Gehäuse ersichtlich. Unten sind sogenannte SMD (surface mount device) Gehäuse ersichtlich. Diese sind für Anfänger sicher nicht die erste Wahl.



Neben dem Microcontroller benötigen wir noch die entsprechende Programmierumgebung.

Auf der Atmel Webseite kann die Programmiersoftware AVR Studio heruntergeladen werden. Mit dieser kann man Programme in Assembler oder GCC erstellen und gleich auch noch auf den AVR übertragen.

Für Programme die in einer anderen Sprache geschrieben sind, kann ich noch PonyProg empfehlen.


Natürlich können wir den Microcontroller nicht einfach so an den Computer anschliessen. Deshalb muss auch noch ein Programmieradapter her. Möchte man nur wenig ausgeben, reicht ein einfacher AVR ISP Adapter zB von Ebay oder dergleichen. Ich persönlich wollte gleich etwas richtiges und hab mich für das Atmel STK500 entschieden. Das AVR Butterfly ist ebenfalls empfehlenswert.


Vorteile des STK500 sind:

- Universelles Programmiergerät für nahezu alle Atmel Attiny, Atmega und Atxmega Microcontroller

- Taster und Led OnBoard

- High Voltage Programming für Controller die nicht mehr lesbar sind

- Serielle Programmier- und Ausgabeschnittstelle

...Weiteres folget demnächst