Game of Life: Unterschied zwischen den Versionen
Sysd0b (Diskussion | Beiträge) |
Sysd0b (Diskussion | Beiträge) |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | [[Kategorie: | + | [[Kategorie:Mikrocontroller]] |
− | |||
== Vorwort == | == Vorwort == | ||
Es wurde ein geeignete Projektidee für ein Praktika für das Fach ES (Eingebette Systeme) gesucht. Ideengeber waren Martin und Max, | Es wurde ein geeignete Projektidee für ein Praktika für das Fach ES (Eingebette Systeme) gesucht. Ideengeber waren Martin und Max, | ||
Zeile 31: | Zeile 30: | ||
* '''Eclipse Settings''' | * '''Eclipse Settings''' | ||
** AVR | ** AVR | ||
− | *** Unter "Eclipse" -> "Einstellungen" -> "AVR" -> "Paths" entfernen wir den Haken bei " | + | *** Unter "Eclipse" -> "Einstellungen" -> "AVR" -> "Paths" entfernen wir den Haken bei "Disable search for System Paths at Startup" |
*** Projektbezogen: Rechtklick auf euer Projekt -> Properties -> "C/C++ General" -> "Paths and Symbols" hier fügen wir folgenden Pfad hinzu "opt/local/avr/include/avr", da Eclipse Unterverzeichnisse anscheinend nicht beachtet. Typischer Fehler ist das trotz erfolgreicher installation der AVR-Toolchain, Eclipse noch immer nicht weiß wie es an die Header Files kommt. | *** Projektbezogen: Rechtklick auf euer Projekt -> Properties -> "C/C++ General" -> "Paths and Symbols" hier fügen wir folgenden Pfad hinzu "opt/local/avr/include/avr", da Eclipse Unterverzeichnisse anscheinend nicht beachtet. Typischer Fehler ist das trotz erfolgreicher installation der AVR-Toolchain, Eclipse noch immer nicht weiß wie es an die Header Files kommt. | ||
** AVRdude Settings | ** AVRdude Settings | ||
Zeile 51: | Zeile 50: | ||
[[Datei:ES_03_Entwurf_02.jpg|150px|thumb|right|Zweiter Entwurf]] | [[Datei:ES_03_Entwurf_02.jpg|150px|thumb|right|Zweiter Entwurf]] | ||
[[Datei:ES_04_Fehlersuche.jpg|150px|thumb|right|Fehlersuche]] | [[Datei:ES_04_Fehlersuche.jpg|150px|thumb|right|Fehlersuche]] | ||
− | Hier ist unsere Einkaufslisten, beinhaltet sind Bausätze für 2 Systeme + Ersatzteile. Wir haben die | + | Hier ist unsere Einkaufslisten, beinhaltet sind Bausätze für 2 Systeme + Ersatzteile. Wir haben die Einkaufliste aufgeteilt, da Werkzeug schon vorhanden war. |
Zeile 97: | Zeile 96: | ||
[[Datei:ES_06_STD-Entwurf.jpg|150px|thumb|right|STD-Entwurf]] | [[Datei:ES_06_STD-Entwurf.jpg|150px|thumb|right|STD-Entwurf]] | ||
[[Datei:ES_07_PAT-Entwurf.JPG|150px|thumb|right|PAT-Entwurf]] | [[Datei:ES_07_PAT-Entwurf.JPG|150px|thumb|right|PAT-Entwurf]] | ||
+ | [[Datei:ES_08_Eagle-Entwurf.png|150px|thumb|right|Eagle-Entwurf]] | ||
+ | |||
+ | |||
+ | |||
Für den Mikrocontroller | Für den Mikrocontroller | ||
* Programmiersprache: [https://de.wikipedia.org/wiki/C_%28Programmiersprache%29 C] | * Programmiersprache: [https://de.wikipedia.org/wiki/C_%28Programmiersprache%29 C] | ||
Zeile 117: | Zeile 120: | ||
| [https://de.wikipedia.org/wiki/Datenflussdiagramm Datenflussdiagramm] || DFD || ES01_02 || [http://wiki.d0b.eu/files/game-of-life/ES01_02-DFD.pdf ES01_02] | | [https://de.wikipedia.org/wiki/Datenflussdiagramm Datenflussdiagramm] || DFD || ES01_02 || [http://wiki.d0b.eu/files/game-of-life/ES01_02-DFD.pdf ES01_02] | ||
|- | |- | ||
− | | | + | | Kontrollflussdiagramm || KTD || ES02_00 || [http://wiki.d0b.eu/files/game-of-life/ES02_00-KTD.pdf ES02_00] |
|- | |- | ||
| [https://de.wikipedia.org/wiki/Zustands%C3%BCbergangsdiagramm State Transition Diagramm] || STD || ES03_00 || [http://wiki.d0b.eu/files/game-of-life/ES03_00-STD.pdf ES03_00] | | [https://de.wikipedia.org/wiki/Zustands%C3%BCbergangsdiagramm State Transition Diagramm] || STD || ES03_00 || [http://wiki.d0b.eu/files/game-of-life/ES03_00-STD.pdf ES03_00] |
Aktuelle Version vom 17. Dezember 2012, 14:27 Uhr
Inhaltsverzeichnis
Vorwort
Es wurde ein geeignete Projektidee für ein Praktika für das Fach ES (Eingebette Systeme) gesucht. Ideengeber waren Martin und Max, Dennis und ich sind etwas später dazugestossen. Ziel ist es ein Eingebettestes System zu entwerfen auf welchen dann nach Fertigstellung Conway`s Game of Life läuft.
Wenn das interessiert aber keine Vorkenntnisse in diesen Bereich hat, sollte sich mal durch das Tutorial von mikrocontroller.net lesen und / oder schaut sich diese nette AVR Einführung von fd0 an (22c3).
IDE
Wir haben uns entschieden Eclipse mit der AVR Toolchain zu nutzen, als Versionsverwalzung dient git. Das Projekt beinhaltet bisher 4 Personen, eingesetzte BS sind Debian / Mac OSX, deswegen gibts es auch keine infos zur Windows IDE einrichtung.
- Eclipse Add-Ons
- AVR
- Eclipse öffnen -> "Help" -> "Install new Software..." -> folgenden Link im Eingabefeld neben "Work with" eingeben und bestätigen mit "Add"
- http://avr-eclipse.sourceforge.net/updatesite
- Egit, Jgit
- Eclipse öffnen -> "Help" -> "Install new Software..." -> folgenden Link im Eingabefeld neben "Work with" eingeben und bestätigen mit "Add"
- http://download.eclipse.org/egit/updates
- AVR
- AVRdude
- Linux Debian / Ubuntu
aptitude install avrdude avr-libc
- Mac OSX (via Macports)
sudo port install avrdude avr-libc
- Linux Debian / Ubuntu
- Eclipse Settings
- AVR
- Unter "Eclipse" -> "Einstellungen" -> "AVR" -> "Paths" entfernen wir den Haken bei "Disable search for System Paths at Startup"
- Projektbezogen: Rechtklick auf euer Projekt -> Properties -> "C/C++ General" -> "Paths and Symbols" hier fügen wir folgenden Pfad hinzu "opt/local/avr/include/avr", da Eclipse Unterverzeichnisse anscheinend nicht beachtet. Typischer Fehler ist das trotz erfolgreicher installation der AVR-Toolchain, Eclipse noch immer nicht weiß wie es an die Header Files kommt.
- AVRdude Settings
- Window -> Preferences -> AVR -> AVRDude ->
- Name: mySmartUSB
- Typ: Atmel Low Cost Serial Programmer (avr910)
- Override default Port to /dev/ttyUSB0
- AVR
Links:
- Atmel AVR Toolchain - Atmel Installationspakete für Linux / Windows
- CrossPack for AVR® Development - Installationspaket Mac OSX
- AVR Toolchain - Linux AVR Toolchain von Hand insallieren
- Egit User Guide
Entwurf
Hardware
Hier ist unsere Einkaufslisten, beinhaltet sind Bausätze für 2 Systeme + Ersatzteile. Wir haben die Einkaufliste aufgeteilt, da Werkzeug schon vorhanden war.
Elektronik Bauteile
Artikelnr. | Position | Menge | Einzelpreis | Gesamtpreis |
ATMEGA 32-16 DIP | ATMega AVR-RISC-Controller, DIL 40 | 2 | 4,45€ | 8,90€ |
BL 1X20W8 2,54 | 20pol. Buchsenl. gewinkelt, RM 2,54, H:8,5mm | 4 | 0,45€ | 1,80€ |
16,0000-HC49U-S | Standardquarz, Grundton, 16,0MHz | 2 | 0,17€ | 0,34€ |
KERKO 22P | Keramik-Kondensator 22P | 4 | 0,06€ | 0,24€ |
SL 1X40W 2,54 | 40pol. Stiftleiste | 2 | 0,29€ | 0,58€ |
BC 337-16 | Transistor NPN TO-92 45V 0,5A 0,625W | 40 | 0,05€ | 2,00€ |
METALL 68,0 | Metallschichtwiderstand 68,0 Ohm | 20 | 0,49€ | 9,81€ |
METALL 470 | Metallschichtwiderstand 470 Ohm | 25 | 0,49€ | 12,26€ |
TC 20-11 RT | Dot-Matrix-Display, 5x7 Pkt., 8,5mm, rot, Kathode | 6 | 2,10€ | 12,60€ |
Gesamtwert 48,52€, eingekauft wurde bei Reichelt , abgebildete Preise incl. Mwst., Stand vom 03.01.2012
Werkzeug
Artikel | Position | Wo kaufen | Menge | Preis |
mySmartUSB MK2 | Programmieradapter | ebay | 1 | 25€ |
Steckplatine 1380 Kontakte | Prototyp-Steckbrett | Conrad | 2 | 16€ |
Netzteil 5V | zur Stromversorgung des Prototyps | ebay | 1 | 10€ |
Mini Zangen Set Elektronikzangen | ebay | 1 | 5€ |
Software
Für den Mikrocontroller
Für uns
- Libre Office - Diagramme erstellen
- Eagle - PCB entwerfen
- Xmind - Arbeitsplanung
Analyse & Doku
Wir arbeiten nach dem SA/RT Modell, hier die Dokumente aus dem Entwurf. Die Bennung der angefertigten Dateien setzt sich wie folgt zusammen:
Dateiname = Name des Fachs + Zweistelliger Index für Diagrammart + _Änderungsindex
Diagrammart | Abkürzung | Download (Libre-/ OpenOffice) | Download (PDF) |
Datenflussdiagramm | DFD | ES01_02 | ES01_02 |
Kontrollflussdiagramm | KTD | ES02_00 | ES02_00 |
State Transition Diagramm | STD | ES03_00 | ES03_00 |
Process Activation Table | PAT | ES05_01 | ES05_01 |
Quellcode
kommt noch ;-)
Links