Benutzer-Werkzeuge

Webseiten-Werkzeuge


projects:2013:avr_101

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Both sides previous revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
projects:2013:avr_101 [2013-01-15 13:13]
dkdent [Ressourcen/Links]
projects:2013:avr_101 [2013-08-06 12:40] (aktuell)
alex
Zeile 1: Zeile 1:
-====== ​AVR Einführungsworkshop ======+====== ​uC Einführungsworkshop ======
 Es soll ein Workshop bzw. eine kleine Workshopserie als Einführung in die Programmierung von AVR Mikrocontrollern ausgearbeitet werden. Es soll ein Workshop bzw. eine kleine Workshopserie als Einführung in die Programmierung von AVR Mikrocontrollern ausgearbeitet werden.
  
-===== Projekkurzinfos ​=====+===== Projektkurzinfos ​=====
   ? contact   ? contact
-  : [[user:​lespocky|Alex]]+  : [[user:​lespocky|alex]]
   ? begin   ? begin
   : 2013-01-03   : 2013-01-03
-  ? skillz +  ​? status 
-  : Vorbereitung erfordert Ahnung von Schaltung aufbauen, AVR programmieren in C, Makefiles schreiben, Teileilisten machen, Bausätze vorbereiten,​ Folien ausarbeiten,​ … +  : planning/​preparing 
-  : Workshop durchführen needs Erklärbärfähigkeit,​ Geduld, …  ​+  ​? skillz ​(source) 
 +  : Vorbereitung erfordert ​für den Lehrenden ​Ahnung von Schaltung aufbauen, AVR programmieren in C, Makefiles schreiben, Teileilisten machen, Bausätze vorbereiten,​ Folien ausarbeiten,​ … 
 +  : Workshop durchführen needs Erklärbärfähigkeit,​ Geduld, … 
 +  ? skillz (drain) 
 +  : Der Lernende muss als Voraussetzung mitbringen: sicherer Umgang mit Editor und Kommandozeile,​ Programme nachinstallieren (avrdude, avr-gcc), Basiswissen Stromkreise (Physik 9. Klasse), Grundkenntnisse Computerprogramme (Variablen, Schleifen, Funktionen)
  
 ===== Ideen ===== ===== Ideen =====
 Für die Einführung ist der [[http://​www.atmel.com/​devices/​ATTINY25.aspx|ATtiny 25/45/85]] ganz gut geeignet, übersichtliche Anzahl an Funktionseinheiten,​ billig zu beschaffen und als DIP-8 oder SOIC-8 erhältlich. Eine einfache Beispielbeschaltung passt locker auf ein kleines Whiteboard: Für die Einführung ist der [[http://​www.atmel.com/​devices/​ATTINY25.aspx|ATtiny 25/45/85]] ganz gut geeignet, übersichtliche Anzahl an Funktionseinheiten,​ billig zu beschaffen und als DIP-8 oder SOIC-8 erhältlich. Eine einfache Beispielbeschaltung passt locker auf ein kleines Whiteboard:
 +  * [tux, 2012-04-03] Wie wir heute festgestellt haben, ist der [[http://​www.reichelt.de/​index.html?​ARTICLE=119687|ATTINY 24A-PU]] eine durchaus brauchbare Alternative mit mehr Ports zu einem vernachlässigbar höheren Preis. Entsprechend der untenstehenden WS-Gliederung könnten wir überlegen, diesen µC zu verwenden und mit einer RGB-LED sowie anderer Zusatzbeschaltung (drei Potis, damit man mit RGB und Farbräumen herumspielen kann, …) zu versehen.
  
 {{:​projects:​2013:​testplan.jpg?​200|}} {{:​projects:​2013:​testplan.jpg?​200|}}
Zeile 30: Zeile 35:
   * Das Poti lässt sich auch durch einen widerstandsbasierten Sensor ersetzen, z.B. einen Photowiderstand. Auf der Anzeige erscheint dann ein Lichtlevel.   * Das Poti lässt sich auch durch einen widerstandsbasierten Sensor ersetzen, z.B. einen Photowiderstand. Auf der Anzeige erscheint dann ein Lichtlevel.
   * Mit einer höheren Taktung lässt sich das Flackern der 7-Segment-Anzeige wahrscheinlich völlig unterbinden. (Konsequenzen verschiedener Taktungen können ebenfalls Teil eines Workshops sein.)   * Mit einer höheren Taktung lässt sich das Flackern der 7-Segment-Anzeige wahrscheinlich völlig unterbinden. (Konsequenzen verschiedener Taktungen können ebenfalls Teil eines Workshops sein.)
-===== Teile =====+ 
 +===== Bauteile ​=====
 Im Prinzip sind die Teile sehr ähnlich, egal welche Schaltung man benutzt. Leichte Abweichungen vielleicht beim Arduino. Interessant für die gelöteten Schaltungen wäre vielleicht noch ein vorgeschalteter Spannungsregler. Im Prinzip sind die Teile sehr ähnlich, egal welche Schaltung man benutzt. Leichte Abweichungen vielleicht beim Arduino. Interessant für die gelöteten Schaltungen wäre vielleicht noch ein vorgeschalteter Spannungsregler.
  
Zeile 46: Zeile 52:
 ==== SMD-Schaltung ==== ==== SMD-Schaltung ====
 Setzt das Projekt [[projects:​2013:​PCB-Herstellung]] voraus, kann von der Schaltung her aber ähnliches bis gleiches Design nutzen. Zur Demonstration nimmt man dann einfach den Mikrocontroller im SOIC-8 Gehäuse. Setzt das Projekt [[projects:​2013:​PCB-Herstellung]] voraus, kann von der Schaltung her aber ähnliches bis gleiches Design nutzen. Zur Demonstration nimmt man dann einfach den Mikrocontroller im SOIC-8 Gehäuse.
 +
 +===== Lerneinheiten =====
 +In zwei Stunden lässt sich das nicht abfeiern, daher Unterteilung in mehrere Blöcke. Möglich wären …
 +
 +  - alles bis »Hello World« wie bspw. Steckbrett aufbauen, Platine löten, Arduino auspacken als parallel mögliche Einheiten
 +    - Steckbrett aufbauen
 +    - Schaltung löten
 +    - Grundlagen Stromkreise
 +  - »Hello World« aka LED blinken lassen mit vorbereitetem Makefile und uC Flashen durch die Teilnehmer, der Teil wurde bereits für die [[https://​program.ohm2013.org/​event/​242.html|OHM2013]] vorbereitet und durchgeführt
 +    * Struktur eines C-Programms
 +    * Zugriff auf Ports des uC
 +    * Datenblatt lesen in Kürze
 +    * kompilieren und flashen
 +    * ggf. Einbindung der ''​delay.h''​
 +  - LED dimmen mit PWM
 +    * kurze Theorie zu LED dimmen, Strom, Spannung, PWM
 +    * Vorstellung Timerbaustein des uC
 +    * Interrupts und ISR
 +    * einfache PWM mit Timer und ISR
 +    * Lookuptable für schickes Dimmen
 +  - Einlesen von Daten von außen
 +    * Grundlagen AD-Wandler
 +    * genauere Beschäftigung mit uC-Registern
 +    * Poti anschließen,​ einlesen und dann die Helligkeit der LED steuern
 +  - Combine all previous stuff with RGB!
 +    * HSV
 +    * was tun bei common anode?
 +    * Optimierung der PWM 
  
 ===== Ressourcen/​Links ===== ===== Ressourcen/​Links =====
Zeile 57: Zeile 91:
   * [[http://​piratepad.net/​4B7J6VvKfq|altes Pad]]   * [[http://​piratepad.net/​4B7J6VvKfq|altes Pad]]
   * [[https://​github.com/​netz39/​avr_101|Repository]]   * [[https://​github.com/​netz39/​avr_101|Repository]]
 +  * Follow-Up: [[projects:​2013:​AVR 102]]
 +  * {{:​projects:​2013:​notizen_avr101.pdf|}}
projects/2013/avr_101.1358252030.txt.gz · Zuletzt geändert: 2013-01-15 13:13 von dkdent