Forum: Mikrocontroller und Digitale Elektronik Einstieg in die Mikrocontroller-Welt


von jrg1968 (Gast)


Lesenswert?

Hallo,

ich will nun endlich in die Mikrocontroller-Welt einsteigen und brauchen 
Euren Rat:

* Mit welchen Controller sollte ich starten?
  - ist der Umstieg auf andere Controller dann schwierig?
  - richtet sich der Einstieg nach ANwendungsaspekten, oder woran?

* Wie sollte der Einstieg erfolgen? Welches Buch (oder Website etc.), 
welches Einstiegsset ...

Ich habe eine einigermaßen ausgestattete Elektrowerkstatt.

Besten Dank schon jetzt für Eure Tipps!

von Floh (Gast)


Lesenswert?

Frag niemals nach der besten Controllerfamilie. Sonst entbrennen hier 
Glaubenskriege :-)

So generell:
> lchen Controller sollte ich starten?
Hier wirst du sehr viel von AVRs finden, z.B.
http://www.mikrocontroller.net/articles/AVR-Tutorial
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
Persönlich hab ich auch mit AVRs angefangen und benutze sie immer noch.

>   - ist der Umstieg auf andere Controller dann schwierig?
Meist braucht man dann einfach eine etwas andere Ausstattung 
(Programmer, Entwicklungsumgebung)

>   - richtet sich der Einstieg nach ANwendungsaspekten, oder woran?
Für die Anfangsprojekte kann man so ziemlich alles nehmen :-)

:-)

von Andreas M. (elektronenbremser)


Lesenswert?

Jeden Tag steht einer auf der einsteigen will.
Gefühlt jeder 2. postet diese Frage hier, der Rest bemüht die 
Suchfunktion.
Angaben erfolgen ohne Anspruch auf Richtigkeit.

von Martin V. (oldmax)


Lesenswert?

Hi
>Jeden Tag steht einer auf der einsteigen will.
>Gefühlt jeder 2. postet diese Frage hier, der Rest bemüht die
>Suchfunktion.
>Angaben erfolgen ohne Anspruch auf Richtigkeit.
 Sehr wertvolle Hilfe. Im Prinzip ist doch schon alles hier abgehandelt, 
oder irre ich mich da ?
So, und nun zum Thema:
Wenn du eine Idee hast, welche Schaltung praktisch wär und nicht im 
Baumarkt um die Ecke mit 1,95 € im Baumarkt um die Ecke auf'm Wühltisch 
liegt, dann rate ich dir auch zu einem Atmel. Ach ja, gut ausgestattete 
Elektrowerkstatt, is ja nich schlecht, aber wie sieht's denn so in der 
Werkstattim Kopf aus ? So mit Programmiersprachen ? Der µC ist ja nur 
die halbe Miete. So eine Schaltung ist in ein paar Minuten 
zusammengeschustert, aber.... da ist noch was, ohne das du den 
Controller vergeblich bitten wirst, doch das zu tun, was du dir 
vorgestellt hast.
Ok, hab jetzt genug schlecht geredet, jetzt mach ich dir mal Hoffnung!
Ich hab mit knappen 60 den Einstieg in diese Welt gewagt, bisher nur mit 
Atmage 8, aber vielleicht ist demnächst ein 16'er dran.
Schöne Sache. Da ich bereits in den 80gern mit Z80 rumgespielt habe, 
damals aus der Not heraus noch mit Handcodierten Hex-Codes, die ich mir 
aus einer Tabelle raussuchen mußte mangels vernünftigen Assembler, bin 
ich hier beim AVR Studio gelandet. Ich meine, wenn du die Tutorials hier 
durcharbeitest und auf eigene Ideen umsetzen kannst, brauchst du keine 
zusätzlichen Bücher. Die Datenblätter der µC ergänzen ganz gut. Also, 
las dich nicht aufhalten...
Gruß oldmax

von Daniel M. (erfolgstyp)


Lesenswert?

bestell dir bei pollin ein board zum beispiel das hier

http://www.pollin.de/shop/dt/NTI5OTgxOTk-/Bausaetze_t 
Module/Bausaetze/ATMEL_Evaluations_Board_V2_0_1_Fertigmodul.html

ich bin am anfang mit nem atmega8 gut zurechgekommen der wird auch in 
diesem tutorial verwendet

http://www.mikrocontroller.net/articles/AVR-Tutorial

wenn du das tutorial stück für stück durcharbeitest wirst du recht bald 
vernünftige ergebnisse hinbekommen

mfg daniel

von Axel D. (axel_jeromin) Benutzerseite


Lesenswert?


von Wolfgang (Gast)


Lesenswert?

Moin!

jrg1968 schrieb:
> * Mit welchen Controller sollte ich starten?
Allemal mit einem 8Bitter. Ob AVR oder PIC oder etwas Exotisches, ist 
prinzipiell egal. Ich habe auch mit AVR begonnen und fand ihn recht 
einsteigerfreundlich. Außerdem sind die Dokus zu den Atmel-Bausteinen 
herhorragend geschrieben.

>   - ist der Umstieg auf andere Controller dann schwierig?
Jede µC-Familie hat ihre Eigenheiten. Selbst, wennste von AVR auf ARM 
umsteigst und bei Atmel bleibst, muß man sich neu einarbeiten. Im Falle 
der 32Bitter ist das erheblich, aber zu schaffen. Die grundsätzlichen 
Dinge aber bleiben erhalten, wie Programmierstandards einzuhalten, auf 
logischen Programmablauf zu achten, sauberes Arbeiten auch in der 
Hardware usw..

>   - richtet sich der Einstieg nach ANwendungsaspekten, oder woran?
Ich habe den Umstieg auf ARM-M3 von STM durchführen müssen, weil ich 
sonst beständig an die Rechenleistungsgrenzen der AVR gestoßen wäre. 
Außerdem sind ARMs mit gleichviel Speicher wie AVRs billiger und 10mal 
so schnell.

> * Wie sollte der Einstieg erfolgen? Welches Buch (oder Website etc.),
> welches Einstiegsset ...
Schnell. Im Falle der Wahl der AVR-Familie: Atmel Studio 4.18 
herunterladen (oder für Masochisten: Studio 5), STK500/600/Dragon oder 
was auch immer kaufen, Code-Beispiele studieren und sich nach und nach 
an die verschiedenen Funktionsblöcke der µC herantasten.

> Ich habe eine einigermaßen ausgestattete Elektrowerkstatt.
Obacht! Elektro != Elektronik! Viel mehr als eine kleine Handsäge, ein 
Feilensatz, einige Zangen, Seitenschneider, Schraubendreher usw. 
brauchste nicht für die Elektronik. Dann halt noch Halbzeuge wie 
Lochrasterplatinen, Verbrauchsmaterial wie Lötzinn, Bauteile bis der 
Arzt kommt, eine ESD-Ausrüstung und einen vernünftigen Lötkolben 
(empfehle dringend Weller). Am besten liest Du Dir meinen Artikel über 
die Arbeitsplatzausstattung auf meiner Netzpräsenz durch: 
http://wpö.de/index.php?EK_Arbeitsplatz

Gruß - Wolfgang

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

jrg1968 schrieb:
> Hallo,
>
> ich will nun endlich in die Mikrocontroller-Welt einsteigen und brauchen
> Euren Rat:
>
> * Mit welchen Controller sollte ich starten?
>
Du solltest Dir einen suchen der ziemlich bekannt ist.
D.h. worüber es die meisten Informationen gibt.
>
>   - ist der Umstieg auf andere Controller dann schwierig?
>
Halt, halt, stopp, stopp.
Eins nach dem anderen. Was die Zukunft bringt, wissen wir alle nicht.
Beherrsche erstmal die eine Sache und dann kannst Du Dich, wenn Du oder 
die Zeit soweit sind darum Gedanken machen.
>
>   - richtet sich der Einstieg nach ANwendungsaspekten, oder woran?
>
Ja, aber als Einsteiger hat man meistens keine genaue Vorstellung was 
man damit einmal machen möchte.

Falls ja, dann schreibes es Doch !

Ansonsten denke ich ist es relativ egal, da die Grundausstattung bei den 
Mikrocontrollern ziemlich gleich ist. Natürlich hat jeder Hersteller 
seine eigene Philosophie und speziellen Bereich. Aber jeder Hersteller 
hat auch Mikrocontroller in seiner Familie die für Standardaufgaben 
gedacht sind.

> * Wie sollte der Einstieg erfolgen? Welches Buch (oder Website etc.),
> welches Einstiegsset ...
>
Am besten mit einem System das Gut und einfach zusammenarbeitet und 
nicht zu abgehoben ist.

Damit meine ich die Hardware ist nicht zu Komplex
( Mikrocontroller = µC, Taster, LEDs, LCD, alle Pins des µCs sind 
rausgeführt ) das reicht vollkommen für den Anfang.

Ein Programmer der viele verschienden Typen einer µC-Familie 
programmieren kann, wo nur der Typ eingestellt werden muß.

Eine Entwicklungsumgebung die Assembler ( Übersetzer in die 
Maschinensprache - es ist nicht die Programmiersprache gemeint ), 
Simulator, und Brenner in einer Oberfläche vereint.

Wenn es nicht aufs Geld ankommt, dann such Dir was schönes aus. 
Ansonsten must Du gucken was dem oben geschriebenen recht nahe kommt.

Ich weiß das sind jetzt sehr viele Informationen die Dich überfordern.
Nimm einfach etwas, was viele verwenden, dann bekommst Du auch 
wahrscheinlich die meiste Hilfe bei Problemen.
>
> Besten Dank schon jetzt für Eure Tipps!

gern geschehen
Bernd_Stein

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Angehängte Dateien:

Lesenswert?

Für Einsteiger ist sicherlich der Debug-Mode ganz hilfreich, weiß nur 
nicht warum der jetzt rummspinnt.

Zu Anfang sieht man dass nach dem Debug-Start der gelbe Pfeil brav bei
rjmp _reset stehen bleibt und der 1. Breakpoint angezeigt wird
( rcall _lcd_init ).

Beim klicken auf Cotinue (F5) wird auch brav bei diesem Breakpoint 
gestoppt.

Ein klick auf Step Into (F11) führt auch in den zweiten Reiter ( 
Lcd-routines.inc ) nach _lcd_init:

Nur ist hier der Brekpoint nicht sichtbar. Erst wenn auf den 
Stopp-Button geklickt wird. Der Programmlauf wird nämlich beim klicken 
auf Cotinue (F5) auch an diesem nicht gestoppt.

Was mache ich falsch oder spinnt das Microchip Studio ( MC-Studio ) ?


Bernd_Stein

von Cartman (Gast)


Lesenswert?

Wenn man AVR anfängt
>   - ist der Umstieg auf andere Controller dann schwierig?

Ja!

Am besten fängt mann mit kleinen und einfachen PIC's an.
Da muss mann nicht viel lesen und ist mit dem Einstieg schnell fertig.

Wenn mann dann von der sehr effektiven aber sonst eher skurrilen
Architektur des PIC genug hat, bieten sich dann die kleinen ARMe an.
Dann ist mann auch sofffort auf der Höhe der Zeit!

von Stefan F. (Gast)


Lesenswert?

Cartman schrieb:
> Ja!

Du hast da auf eine 10 Jahre alte Frage geantwortet, die aktuelle Frage 
von Bernd hingegen ignoriert.

Bernd S. schrieb:
> Was mache ich falsch

Für mich sieht das nach einem Bug in der IDE aus.

von Cartman (Gast)


Lesenswert?

> die aktuelle Frage von Bernd hingegen ignoriert.

Was geht mich fremdes Elend an.
Mit einem PIC wär das nicht passiert.

Der Bernd sollte halt auf meinen Rat hören.

von Spess53 (Gast)


Lesenswert?

Hi

>Erst wenn auf den
>Stopp-Button geklickt wird. Der Programmlauf wird nämlich beim klicken
>auf Cotinue (F5) auch an diesem nicht gestoppt.

Dann erreicht dein Programm nie die Stelle des Brakpoints. Statt mit F5 
mit F10 oder F11 weiter machen.

MfG Spess

von jo (Gast)


Lesenswert?

Ich würde dir zu einem (VORSICHT: Blasphemie!) Arduino (UNO?) raten, im 
besten Fall mit einem DIL-Prozessor drauf. Ob Du die Arduino-IDE 
verwenden willst, kannst du dann immer noch entscheiden.

Jedenfalls bekommst Du mit dem Arduino eine funktionierende Platine mit 
AVR-Controller, Quarz, Spannungsregler und USB-Schnittstelle - und 
kannst sofort loslegen.

Arduinos werden im Normalfall in einer "C/C++"-ähnlichen Sprache 
programmiert, aber Assembler ist natürlich auch möglich.

So eine Arduino UNO (DIL) lässt sich auch als Brenner verwenden, falls 
du in einer möglichen Anwendung kein gekauftes Board, sondern nur den uC 
verwenden willst.

just my 2 ct

von W.S. (Gast)


Lesenswert?

jrg1968 schrieb:
> ich will nun endlich in die Mikrocontroller-Welt einsteigen...

Also, wenn das nach rund 10 Jahren noch immer nicht geklappt hat, dann 
befürchte ich, daß es auch in den nächsten 10 Jahren nix wird.

W.S.

von Stefan F. (Gast)


Lesenswert?

W.S. schrieb:
> Also, wenn das nach rund 10 Jahren noch immer nicht geklappt hat, dann
> befürchte ich, daß es auch in den nächsten 10 Jahren nix wird.

Wenn jemand seine Zeit mit Beleidigen anstatt lesen lernen verbringt, 
dann kommt so etwas dabei heraus.

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Angehängte Dateien:

Lesenswert?

Spess53 schrieb:
> Hi
>
>>Erst wenn auf den
>>Stopp-Button geklickt wird. Der Programmlauf wird nämlich beim klicken
>>auf Cotinue (F5) auch an diesem nicht gestoppt.
>
> Dann erreicht dein Programm nie die Stelle des Brakpoints. Statt mit F5
> mit F10 oder F11 weiter machen.
>
> MfG Spess
>
Hi Spess,

hatte ich ja gemacht ( siehe Screenshot ).

Es liegt leider wirklich am MC-Studio, denn die xyz.inc-Datei habe ich 
einfach in der 1. Registerkarte ( lcd-test.asm ), nicht als 
include-Datei eingefügt, sondern komplett. Da funktioniert es dann. Ist 
natürlich auf Dauer kein Zustand für mich, weil ich sehr gerne mit 
mehreren Registerkarten arbeite.

Weiß nicht was da schief gelaufen ist bei MC, aber als es noch ATMEL 
STUDIO 7 hieß, hatte ich diesen Bug nicht.

Bernd_Stein

von Stored B. (Firma: drx) (umbrecht)


Lesenswert?

Bernd S. schrieb im Beitrag
> Weiß nicht was da schief gelaufen ist bei MC, aber als es noch ATMEL
> STUDIO 7 hieß, hatte ich diesen Bug nicht.


Auch da ist das debugging teilweise unbrauchbar. Instruktionen werden 
übersprungen, Register nicht gesetzt usw.

BG
Umbrecht

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Angehängte Dateien:

Lesenswert?

Im Moment löse ich dieses Problem so, dass ich den Inhalt der 
Fehlerhaften INC-Datei in den Editor kopiere ( Strg + A, Strg + C, Strg 
+ V ), dann im Solution Explorer eine neue INC-Datei erzeuge dort alles 
hinein kopiere und ... ( siehe Screen Shots ):

Beitrag "Microchip Studio : ATMega88PA und DebugWIRE"


Bernd_Stein

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

Bernd S. schrieb:
> Was mache ich falsch
Du hängst deine völlig neue Frage an einen 10 Jahre alten Thread an!

Weil dir das schon öfter "passiert" ist mal eine kurze Anleitung: zum 
Beginnen eines neuen Thrads gehst du auf die Startseite des passenden 
Forums und drückst dort auf "Neuer Beitrag".

von Forennutzer (Gast)


Lesenswert?

Hallo

Und bekommst dann aber erstmal "freundliche" Hinweise das es erstens 
schon (angeblich.. oder auch uralte was dann allerdings nicht erwähnt 
wird...) dutzende Thread zum Thema gibt.
Zweitens du zu Faul zum suchen bist.
Drittens du zu wenig Informationen gibst - was kein Problem wäre wenn 
das freundlich und mit der vernünftigen Angabe der fehlenden Information 
und wo man diese eventuell findet erfolgen würde.
Viertens auch gerne:
Das das Forum keine Servicecenter ist...

Irgendwann erfolgt dann hoffentlich eine sinnvolle Antwort und sinnvolle 
Anschlussfragen (eventuell mit einer notwendigen Anleitung) von Leuten 
die wirklich helfen wollen und sich versuchen in dem meist erkennbaren 
Wissen deinerseits (des jeweiligen TO) hinein zu versetzen und 
entsprechend darauf zu Reagieren.
Wobei wenn die richtigen (natürlich absolut falschen, aber umso lauteren 
und allzeit präsenten) Nutzer sich gegenseitig auf geschaukelt haben und 
nie mehr eine sinnvolle Antwort kommt.
Machst du (der dazu genötigte TO gar unter den gleichen Nickname - weil 
er ehrlich ist und echte Hilfe hofft) dann das Thema nochmal auf - geht 
der Shitstorm oft genug wieder los und es kommt oft dann noch so 
Kommentare wie:
Du hast das doch gerade erst angefragt (Natürlich nicht so nett 
formuliert) besonders "Nett" sind die Zeitgenossen die sogar dich (den 
jeweiligen TO) anmachen wenn er die Frage schon in einen ganz anderen 
Forum (also nicht nur ein anderes Unterforum sondern eben außerhalb von 
mikrocontroller . net ) gestellt hat - so eine Frechheit aber auch... 
(Ironieflagge gesetzt).

Und gar nicht mal so nebenbei:
Es gibt einige Themen (Threads) die werden vom Thema her auch ach 10 
Jahren nicht alt - dann einen neuen Thread aufmachen und auf den alten 
(dann oft sehr langen sich oft auch in einer ungewöhnlichen Richtung 
entwickelten) hinzuweisen ist auch nicht unbedingt der sinnvolle Weg.

Forennutzer

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Forennutzer schrieb:
> Und gar nicht mal so nebenbei:
Hast du diesen speziellen Thread hier überhaupt gelesen? Und, was meinst 
du: hat die neue Frage irgendwas mit dem vorangegangenen Thema zu tun? 
Oder wäre es eben nicht besser gewesen, dafür wie vorgesehen einen neuen 
Thread zu starten?

Und dann passiert eben das, wovon
Stefan ⛄ F. schrieb:
>>> Du hast da auf eine 10 Jahre alte Frage geantwortet,
>>> die aktuelle Frage von Bernd hingegen ignoriert.

von Karl B. (gustav)


Lesenswert?

Bernd S. schrieb:
> Was mache ich falsch oder spinnt das Microchip Studio ( MC-Studio ) ?

Hi,
der Debugger kann z.B. keine großen Zeitschleifen in Echtzeit 
verarbeiten. Es würde Ewigkeiten benötigen. Irgendwann käme dann eine 
Fehlermeldung wegen "unhandled exception", "buffer underrun" oder so. 
Ebensowenig z.B. die Externen Interrupts. Es fehlt doch die Peripherie. 
Die kann nicht simuliert werden.
Eine fallende Flanke am INTO -> ist doch kein Pin dafür am PC 
rausgeführt oder? Ich sehe keinen.
Also bleibt nichts anderes übrig: Hardware flashen und sehen, ob das 
Programm unter echten Bedingungen wunschgemäß läuft.
Beim Flashen klappt es oft deswegen nicht, weil sich die Parameter (ISP 
Frequency 1/4 z.B. ) zwischenzeitlich verstellt haben. Oder die 
Taktfrequenz ist plötzlich im Keller.
Mit der 7-er Version habe ich auch Probleme gehabt, habe sie wieder 
deinstalliert und arbeite mit der aufgepeppten 4-er Version. Mir reicht 
die vollauf.

ciao
gustav

von Stored B. (Firma: drx) (umbrecht)


Lesenswert?

Karl B. schrieb:
> Mit der 7-er Version habe ich auch Probleme gehabt, habe sie wieder
> deinstalliert und arbeite mit der aufgepeppten 4-er Version. Mir reicht
> die vollauf.

Wo gibt es die?

von Stefan F. (Gast)


Lesenswert?

Stored B. schrieb:
> Wo gibt es die?

Ich habe von Atmel die Erlaubnis bekommen, eine "Sicherungskopie" zu 
veröffentlichen: http://stefanfrings.de/avr_tools/index.html#avrstudio

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Stored B. schrieb:
> Wo gibt es die?

Hi,
ob die funktioniert, weiß ich nicht.
https://avrstudio4.updatestar.com/de

Habe noch die Service Packs nachinstalliert.
Die ATMega32-er sind dann noch mit drin.
Und der 4313 statt 2313.

ciao
gustav

von Stored B. (Firma: drx) (umbrecht)


Lesenswert?

Danke, habe früher mit der normalen 4er gearbeitet , bin gespannt ob 
sich die Versionen von euch stark unterscheiden. Probiere ich gleich 
aus.

BG

von Stefan F. (Gast)


Lesenswert?

Stored B. schrieb:
> Danke, habe früher mit der normalen 4er gearbeitet , bin gespannt
> ob
> sich die Versionen von euch stark unterscheiden. Probiere ich gleich
> aus.

Einige Leute haben hier berichtet, dass die Version 4.18 mit den Service 
Packs stabiler läuft, als die 4.19. Da kannst du ja mal drauf achten.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Hi,
gibt noch im Archiv die Version zum Download.
Die Dateibezeichnungen sind immer etwas anderslautend.
Aber das müsste die gesuchte Version sein.
Habe aber die verschiedenen SPs nochmal extra nachinstalliert.
Das Einzige, was dabei passieren kann: Meldung: "Datei bereits 
installiert".
Zum Schluss steht dann bei der Version unten 716.

ciao
gustav

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Lothar M. schrieb:
> Du hängst deine völlig neue Frage an einen 10 Jahre alten Thread an!
>
Ja und ?
Passt doch trotzdem noch zum Titel :

Bernd S. schrieb:
> Für Einsteiger ist sicherlich der Debug-Mode ganz hilfreich, weiß nur
> nicht warum der jetzt rummspinnt.
>

Verdienst du bei jedem neuen Thread was ;-)


Bernd_Stein

von Stefan F. (Gast)


Lesenswert?

Bernd S. schrieb:
> Verdienst du bei jedem neuen Thread was

Das nicht, aber in der Regel erwartet man hier, dass jeder Teilnehmer 
alle Beiträge list, bevor er (unpassende) Antworten gibt.

Also sollte man sich nur hinten dran hängen, wenn das davor gesagt 
wirklich relevant ist.

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.