Forum: Mikrocontroller und Digitale Elektronik AVR Mikrocontroller Einstieg, Welche Entwicklungsumgebung für "trockenübungen".


von elektro (Gast)


Lesenswert?

Hallo Leute.

Ich bin ein Neueinsteiger, was Mikrocontroller betrifft.
Ich benötige Hilfe bei der Planung und realisierung eines Pojektes.

Ich besitze grundlegende Kenntnisse im Bereich Elektronik. Ich kenne die 
diskreten Grund-Bauelemente und weiß wie sie technisch funktionieren. 
Ich habe grundlegende therotische elektronische Kenntnisse.
Ich besitze grundlegende theoretische Kenntnisse in Digital / 
Mikroprozessortechnik und Datenverarbeitung. Ich kenne das 
Funktionsprinzip eines Mikroprozessors und wie sie funktionieren. Die 
Verarbeitung von (binären) Daten ist mir auch nicht ganz unbekannt. ich 
weiß wie man zwischen verschiedenen Zahlensystemen nach Binär wandelt, 
ich weiß wie man binär rechnet. Ich beherrsche die verschiedenen 
logischen Verknüpfungen.

Ums Kurz zu machen:
Mein Kenntnisstand entspricht etwa dem, was man in der Fachoberschule 
Technik lernt.

Von der Softwareseite her siehts so aus: Ich habe grundlegende 
Kenntnisse in der Programmiersprache Basic. C/C++ weiß ich was es ist, 
Kenntnisstand etwa soweit, dass es dafür reicht, ein paar Werte 
entgegenzunehmen, damit rumzurechnen und das Ergebnis auszugeben.
Systemnah habe ich noch nie programmiert.
Linux kenne ich in Grundzügen. Es reicht, um eine Linux-Workstation für 
einfache Büroanwendung aufzusetzen. (Textverarbeitung, Internet, 
File-und Printserveranbindung)


Nun möchte ich in die Mikroprozessortechnik einsteigen. Ich will erst 
mal auf dem Rechner "trockenübungen" machen und die Programmiersprache 
an sich lernen.

Zunächst benötige ich einen neuen PC. Habe im Moment nur einen Gaming-PC 
auf Vistabasis. Zum Arbeiten hätte ich gerne einen weniger lauten und 
schlankeren PC.
Nun stellt sich die Frage, nehme ich besser Windows XP Professional oder 
Debian/Ubuntu Linux als Workstation OS.

Mir ist klar, dass ich AVR verwenden möchte. Und mir ist klar, dass ich 
auf C oder C++ Basis programmieren will.

Das AVR Studio ist ja für Windows. Es besitzt ja auch einen guten 
Simulator, so dass ich erst mal ein paar Trockenübungen machen könnte.
Allerdings denke ich, dass das AVR Studio nicht so gut geeignet ist, um 
C oder C++ ansich zu lernen. Da würde man wohl besser zu einer  C / C++ 
Entwicklungsumgebung für PC-Programme greifen.

Oder setze ich besser auf eine GCC Entwicklungsumgebung unter Linux?
Der Vorteil von GCC ist, dass ich damit erst mal mit PC Programmen üben 
könnte. Also erst mal ganz normal mit kleinen Programmen für den 
Computer die Programmiersprache lernen. Und später dann ohne grosse 
Umgewöhnung auf den uC übergehen.
Ich denke mal, die die GCC Entwicklungsumgebung unter Linux ist die 
gleiche, egal für welches System ich programmiere.

Ich denke auch, dass es besser ist, wenn man gleich auf GCC und gleich 
auf Linux Basis lernt. Viele Embedded Systeme arbeiten ja intern mit 
Linux, und da ist es schon gut, wenn man das System und die Tools kennt 
und sich nicht erst nochmal einarbeiten muss.

Was würdet ihr empfehlen?


Schritt 2 wäre dann die Hardware Entwicklungsumgebung Die hat aber noch 
Zeit, da ich erst mal nur auf dem Rechner üben will.

Sollte man sich lieber Steckbretter/lochrasterplatinen holen und ein 
Übungssystem selber zusammenbauen, oder besser ein fertiges Übungsboard?
Lieber ein modulares System mit quasi blankem uC und extern angesteckten 
Zusatzplatinen oder Übungsboard wo Taster, LCD, RS232 usw schon mit 
drauf sind? Welchen Programmieradapter würdet ihr nehmen?

Grüsse

von Martin V. (oldmax)


Lesenswert?

Hi
Für Trockenübung, auch wenn's denn irgendwann langweilig wird, kann ich 
AVRStudio erwähnen. Gibt's zum Download von Atmel und hat einen 
Simulator. Na ja, ich hab nicht wirklich lange damit gearbeitet....
Aber das Studio benutze ich immer noch und schreibe die Progs in 
Assembler. Da weiß man wenigstens, was man macht. ( oder auch nicht...)
Und wenn's denn dann wirklich zur ersten "realen" Programmierung kommen 
soll, ich hab dazu schon mehrfach mein Statement abgegeben.
Gruß oldmax

von Daniel F. (df311)


Lesenswert?

elektro schrieb:
> Kenntnisse in der Programmiersprache Basic. C/C++ weiß ich was es ist,
> Kenntnisstand etwa soweit, dass es dafür reicht, ein paar Werte
> entgegenzunehmen, damit rumzurechnen und das Ergebnis auszugeben.
> Systemnah habe ich noch nie programmiert.

viel mehr macht man in c auf mirkocontrollern auch nicht ;-)

im ernst - wenn du grundlegende erfahrungen in c hast, dann versuch doch 
das tutorial hier auf der seite durchzuarbeiten. wenn du irgendwo 
probleme hast kannst du jederzeit fragen; vorausgesetzt du zeigst auch 
den willen an der lösung des problems mitzuarbeiten. sachen wie 
"schreibt bitte wer das programm für mich weil ich bin zu faul zum 
denken" werden hier nicht gerne gesehen ;-)

allerdings wirst du dich mit reinen trockenübungen bald langweilen, dann 
brauchst du ein bisschen hardware zum spielen.
wenn du dir wirklich einen leiseren pc zum programmieren anschaffen 
willst, dann empfehle ich dir ebay - nimm eine alte kiste mit <= 1 ghz 
und ~ 40 gb festplatte, installier dir ein windows und ein linux frauf 
und du hast eine brauchbare maschine für µC entwicklung, v.a. wenn das 
teil echte parallele und serielle schnittstelle(n) hat.

von elektro (Gast)


Lesenswert?

Hi.

Einen leiseren Pc wollt ich mir auf jeden Fall zulegen, vor allem will 
ich ein stabiles und konsistentes Entwicklungssystem.
Doch was ist zweckmäßiger? AVR Studio und Windows oder GCC und Linux?

von gast (Gast)


Lesenswert?

nimm doch beides, dann hast du immer die auswahl - unter windows die 
sehr gute unterstützung durch das avr-studio, unter linux die recht 
einfache arbeit mit schnittstellen ;-)

von Ulrich (Gast)


Lesenswert?

Man kann auch GCC (für AVR)  und AVRStudio gemeinsam unter Windows 
nutzen. AVRStudio stellte dann eine IDE für GCC zur Verfügung. Das Paket 
mit Gcc für AVRs unter Windows nennt sich WinAVR.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.