Servus,
ich möchte mich in Zukunft mit Microcontrollern beschäftigen, die mir
als Elektrotechnik-Hilfen im Alltag dienen sollen.
Wie würdet ihr mit der gesamten Thematik beginnen?
Kennt ihr zum Beispiel gute Literatur oder womit würdet ihr anfangen?
Viele Grüßen,
Walter-Martin
Walter-Martin-Lamertamm Maschinenbau MS-Temperatur schrieb im Beitrag
#2325249:
> Kennt ihr zum Beispiel gute Literatur oder womit würdet ihr anfangen?AVR-TutorialAVR-GCC-Tutorial
Gruß Oliver
Kevin schrieb:> steig mit c ein
Ja, so sehe ich es auch.
Du muss dir als erstes die Grundlagen einer Programmiersprache
beibringen.
Bei Atmels wären da die Möglichkeiten C/C++, Bascom oder Assembler.
Einfachster Einstieg ist vermutlich Bascom (wobei ich da noch nie was
gemacht habe, wenn man es sich aber anschaut ist der Syntax sofort
ersichtlich). Etwas schwerer ist wahrscheinlich C und etwas abstrakter
(gerade wenn es um aufwendigere Projekte geht) ist mit Sicherheit ASM.
Wenn Du also gewisse Grundlagen in der Programmiersprache Deiner Wahl
hast, kaufst Du Dir ein fertiges kleines Board, entweder mit Bootloader
oder Du brauchst noch einen Programmer dazu (optimaler Weise ein Dragon,
dann kannst Du auch debuggen).
Wenn dass dann alles läuft kannst Du Dir über eigene Schaltungen (in
denen Dein uC verwendet wird) den Kopf zerbrechen.
So finde ich es mittlerweile die vernünftigste Lösung.
Wenn Du Student bist (oder einen kennst) dann bekommst Du bei Embedded
Projects:
http://student.embedded-projects.net/index.php?module=artikel&action=artikel&id=368
den Dragon für 35 Euro.
Anonsten kostet er so um die 60 Euro:
http://www.reichelt.de/Programmer-Entwicklungstools/AT-AVR-DRAGON/index.html?ACTION=3&GROUPID=5100&ARTICLE=97200&SHOW=1&START=0&OFFSET=16&;PROVID=2402
Selbstbauprogrammer wäre auch noch eine Möglichkeit, aber wie gesagt ich
würde an den 60-100 Euro nicht sparen.
Mein Einstieg war damals in C. Erster uC war ein Atmega16 oder AT89. Als
Programmer habe ich damals die Parallelschnittstelle benutzt. Aufgebaut
alles auf einem Steckbrett.
Nachteilig war da immer, dass wenn mal etwas nicht funktioniert hat nie
genau wusste...liegt es jetzt an der Hardware (Wackelkontakt) oder an
der Software. Würde das heute nicht mehr so machen!
Grüße
Kevin schrieb:> steig mit c ein
Steig mit Assembler ein, damit du weißt, was du tust. Wenn LED blinken,
Taste abfragen, serielle Zeichen ampfangen/senden und PWM funktionieren,
steig auf C als "Arbeitspferd" um.
Schönen guten Morgen,
ich würde mich erstmal mit dem Aufbau des µC befassen! Das heißt wie
Michael schon sagt, ersmtal Assembler --> denn dort lernst du wie ein µC
funktionieren und aufgebaut ist. Du musst die Sprache nicht perfekt
können aber du solltest schonma einen Blick drauf werfen.
Anschließend wie die anderen es sagen, mit C weiter machen. Dazu kann
ich dir das Buch:
http://www.buch.de/shop/home/rubrikartikel/ID2945863.html?ProvID=271803
empfehlen (schau aber ob du es günstiger bekommst, ich hab es mal für 4
Euro gekauft ).
Wenn du dann die Grundlagen beherschst, kannst du anfangen in C erste
Programme zu schreiben wie z.B. LED Blinken lassen, Lauflicht und Taster
abfragen, die dann auf den µC geschrieben werden.
Hi, Walter-Martin,
Falls meine Annahmen (weiter unten) eher zutreffen als ihr Gegenteil,
dann empfehle ich Dir die Verwendung eines Pocket-PC oder Netbook als
Maschinenteil für zukünftige Versionen Deiner Maschinen - sowie einer
Software auf Basis von LabWindows von National Instruments oder Agilent
VEE.
------------- Begründungen: -------------
Gäbe es eine Firma, wie Du sie in Deinem Nicknamen genannt hast, dann
stellst Du keine Massenkonsumgüter her, sondern kundenspezifische
Investitionsgüter in kleinen Stückzahlen.
Du willst zukünftige Versionen dieser Maschinen mit einem Maschinenteil
"uP" ausstatten.
Wenn Du Deine Pilotmaschine auf der Messe vorstellst, dann soll sie
nicht so antiquiert erscheinen wie eine Pferdekutsche auf dem Autosalon,
sondern zum Stand der Technik zum Zeitpunkt der Messe passen.
Dessen Beitrag zum Betriebsergebnis ergibt sich dann weniger aus "wir
haben einen uP gefunden, der bei Abnahme von 10.000 noch mal 10ct
billiger ist", sondern aus den minimalen Kosten für Akquisition,
Entwicklung der kundenspezifischen Maschine, Projektlaufzeit, Service
bei minimalen Wartezeiten. All dies nicht nur für einen Maschinentyp
betrachtet, sondern über mehrere.
Zur Minimierung der Wartungszeiten wirst Du Ferndiagnose und Fernwartung
wollen, Dein Maschinenteil wird also mindestens ISDN-tauglich sein.
So verschieden denn doch die Wünsche der Kunden, soll Deine Firmware und
Software portabel sein und schnell anzupassen.
All das geht mit einem Pocket-PC als Industriemodul eher als mit einem
Mikroprozessor. Der Kunde sieht eh nur die
"Walter-Martin"-Benutzeroberfläche.
Ciao
Wolfgang Horn
Hi
Was du unbedingt brauchst ... ist am Anfang mit Sicherheit nicht
erforderlich. Klar, je mehr Kapital einsetzbar ist, umso besser ist die
Ausrüstung. Da spielen dann auch mal ein paar hundert € für Bücher keine
Rolle.
Ich geh mal davon aus, du hast noch nicht eine Zeile Programm
geschrieben.
Dann ist es eigentlich egal, womit du beginnst. Es ist alles schwer.
Trotzdem, ihr dürft gern widersprechen, halte ich Assembler nicht für
den schlechtesten Anfang. Jede Hochsprache hat so ihre Tücken, als
Elektriker weißt du aber mit Schaltungen umzugehen. Dir sagen die
Signale "1" und "0" noch etwas.
Und wenn's kein Geld kosten soll (darf) nimm das Pollin-Bord. Da ist
zumindestes schon mal die Grundbeschaltung drauf. Wenn dann noch ein
paar € übrig sind, hol dir einen USB-ISP-Stick dazu. Nun hast du schon
mal was zum Spielen für ca. 50 €. Such hier mal OpenEye und du hast ein
Tool, um zur Laufzeit deines Controllers auf die "inneren Werte" zu
schauen. Da braucht's erst einmal kein Oszilloskop. Ein Multitalent
tut's auch. NA und dann geht's an die Tutorials. Nimm dir die Beiträge
vor, die dich besonders interessieren. UART, Timer, IO und Stück für
Stück. So hab ich auch angefangen.
Gruß oldmax