Forum: Mikrocontroller und Digitale Elektronik AVR als anfang in die Elektronik.


von Crazy M. (crazy_m)


Lesenswert?

Da ich mich nun seit geraumer Zeit  für die Elektronik interessiere, 
habe ich mich entschlossen endlich mit anzufangen. Ich habe keine 
Erfahrung und programmieren kann ich auch nur vielleicht die Grundlagen 
von c++. Ich möchte die Elektronik auf einem Level lernen um beim jugend 
forscht Wettbewerb mitzumachen. Alles schön und gut jedoch habe ich 
keine Ahnung wo ich anfangen soll. Desto weiter ich suche desto mehr 
verwirrter wird es. Da ich nun aber weiß dass Avr für Anfänger wohl 
einen guten Einstieg vermittel, ist meine Frage ob die auch stimmt.Falls 
ihr Tutorials,Bücher oder andere Sachen kennt dann würdet ihr mir auch 
mit weiterhelfen.
Oh uns falls Avr nicht passt, könnt ihr mir gerne Alternativen 
vorschlagen.
Danke im vorraus _:)

von Udo (Gast)


Lesenswert?

Es fängt eigentlich viel früher an, mit Strom, Spannung, Widerständen, 
Transistoren, Kondensatoren,...
Wenn du einen AVR beschalten möchtest brauchst du Basiswissen

Beitrag #6585382 wurde von einem Moderator gelöscht.
von oerks (Gast)


Lesenswert?

> Es fängt eigentlich viel früher an, mit Strom, Spannung, Widerständen,
> Transistoren, Kondensatoren,...
> Wenn du einen AVR beschalten möchtest brauchst du Basiswissen

+++

Elko := Die Elektronensparbuechse

von aha (Gast)


Lesenswert?

hi Crazy M.,
ich würde dir vorschlagen "learning by doing". Wenn du bei jugend 
forscht mitmachen möchtest hast du ja bereist eine Idee oder ?
Fange einfach an diese umzusetzen. Du wirst auf Probleme stoßen die du 
dann durch Bücher oder heute Internet lösen wirst.
So wirst du nach und nach zu einem Nerd :-)
Um die Sache dann noch beglaubigen zu lassen kannst su dann noch 
Elektrotechnik studieren.
LG

von Harald W. (wilhelms)


Lesenswert?

Crazy M. schrieb:

> Alles schön und gut jedoch habe ich keine Ahnung wo ich anfangen soll.

Am besten mit einem Buch: Grundlagen der Elektrotechnik.

von Stefan F. (Gast)


Lesenswert?

http://stefanfrings.de/mikrocontroller_buch/index.html

Wenn du damit durch bist kann es nicht schaden, auch mal Arduino 
anzuschauen. Aber besser erst danach, denn Arduino vermittelt keine 
Grundlagen. Im Gegenteil: es lenkt davon ab.

von Joachim S. (oyo)


Lesenswert?

Was hast Du denn schon so an Programmiererfahrung?

Die Sache ist meiner Meinung nach nämlich die:
Es ist zwar äusserst naheliegend, C++ lernen zu wollen, wenn man 
Mikrocontroller programmieren will. Schliesslich ist das DIE Sprache 
schlechthin, in der Mikrocontroller programmiert werden, meist bleibt 
einem ja auch gar nichts anderes übrig (ausser vielleicht Assembler).

Aber: C++ ist in meinen Augen auch so ziemlich die ungeeignetste Sprache 
überhaupt, um die ersten Programmiererfahrungen zu machen. C++ ist 
einfach keine Anfängersprache, für den Einstieg in die Programmierung 
ist sowas wie Python (oder in meiner Jugend: Basic) einfach viel besser 
geeignet.
Der Einstieg in die Programmierung fällt imho einfach viel leichter, 
wenn man mit einer Sprache anfängt, die
- eine REPL-Shell bietet, d.h. eine Möglichkeit, Befehle einfach 
eingeben und direkt ausführen zu können, statt immer erst das komplette 
Projekt zu kompilieren etc. zu müssen. Das ist ein unschätzbarer 
Vorteil, wenn man einfach mal schnell irgendetwas live ausprobieren und 
bisschen herumprobieren kann.
- dynamisch typisiert ist, d.h. man nicht im Vorfeld bei jeder Variable 
den Typ festlegen muss

Da Dein Ziel ja ist, bei Jugend Forscht mitzumachen: Dort wird sich die 
Jury vermutlich kaum dafür interessieren, in welcher Programmiersprache 
Du Dein Projekt programmiert hast. Es wird keine grossen Sonderpunkte 
dafür geben, dass Du Dich mit C++ abgequält hast und Dein Programm durch 
die grössere Hardwarenähe schneller läuft, denn vermutlich wird ein 
menschlicher Beobachter  das nicht einmal wahrnehmen können.

Ich würde überlegen, statt eines schwachbrünstigen AVRs direkt einen 
vglw. leistungsfähigen ESP8266 oder ESP32 zu nehmen. Den kann man 
nämlich auch in Python oder LUA programmieren - das ist deutlich 
leichter zu lernen, und wird mit ziemlicher Sicherheit für Dein Jugend 
forscht-Projekt völlig ausreichend sein. Und auch wenn Du das bei Deinem 
JF-Projekt vielleicht gar nicht brauchen wirst: Im Gegensatz zum AVR 
hast Du da auch gleich WLAN und im Falle des ESP32 zusätzlich auch noch 
Bluetooth LE eingebaut, Du könntest später also noch irgendwelche WLAN- 
oder Bluetooth-basierten Zusatzfeatures einbauen (zugehörige 
Smartphone-App, Steuerung über das Internet, whatever), mit denen Du die 
Jury beeindrucken könntest. Und so ein Development Board mit ESP32 
kostet auch nur geringfügig mehr als ein AVR-Board.

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

fange doch mit Transistorschaltungen an. Z.B. Blinker mit komplementären 
Transistoren, Multivibratoren, Blinker mit zwei gleichen Transistoren, 
kleine Audioverstärker, seit die Mittelwelle tot ist, kannst Du das 
Detektorradio überspringen. Wen Du schon beim Überspringen bist, 
brauchst Du auch keine Topfkreise lernen. Operationsverstärker in allen 
Grundschaltungen sollte man kennen. Später dann RC-Oszillatoren mit 
Logikgattern wie 4093, 4011 und ähnliche, 4060 mit RC oder Quarz mal 
aufbauen, 4046 PLL ausprobieren. Naja, bis dorthin kannst Du den AVR 
bestimmt schon in Assembler und in C Programmieren und brauchst das 
ganze Analogwissen dann eh nicht mehr wirklich, sondern nur dann, wenn 
Du den Fehler nicht finden kannst. Du kannst Dich ja auch noch in 
Höchstfrequenztechnik mit Streifenleitern einarbeiten....

MfG

von Harald W. (wilhelms)


Lesenswert?

Christian S. schrieb:

> fange doch mit Transistorschaltungen an. Z.B. Blinker mit komplementären
> Transistoren,

...und dafür gibts einen Preis bei "Jugend forscht"?

von Gerald O. (garry)


Lesenswert?


von Wilhelm S. (wilhelmdk4tj)


Lesenswert?

Hallo zusammen, hallo Crazy.

Du brauchst eine Anwendung!!!!!, die dir ewas bringt!

.. Ich möchte mich mal MCs beschäftigen..., und vieles andere mehr 
bringt dir nichts. Die blinkende LED ist genauso (un)wichtig und 
langweilig wie das 'Hello World' auf dem Display.
Programmiersprache kannst du dir beliebig! aussuchen; wenn es C(++) sein 
soll, nur zu. Vieles Andere ist genau so gut und schön. Ich erwähne 
bewusst keine andere bevor hier, wie so oft, der Sprachenkrieg losgeht. 
Such dir aus, was dir gefällt.
Es muss kein Arduino sein, selbst mit einem Tiny 13 kann man auf dem 
Steckbrett nette Dinge zum Üben zusammenfrickeln.

73
Wilhelm

von Alexander S. (alesi)


Lesenswert?

Joachim S. schrieb:
> Es ist zwar äusserst naheliegend, C++ lernen zu wollen, wenn man
> Mikrocontroller programmieren will. Schliesslich ist das DIE Sprache
> schlechthin, in der Mikrocontroller programmiert werden,

Wenn man C++ durch C ersetzt, stimmt es (zumindestens für 8-Bit AVR).
Das soll keine Diskussion über die beste Programmiersprache für 
Mikrocontroller lostreten, aber so kann man das nicht stehen lassen.

von Stefan F. (Gast)


Lesenswert?

Alexander S. schrieb:
> Wenn man C++ durch C ersetzt, stimmt es (zumindestens für 8-Bit AVR).

Auch auf den 32 bittern wird C++ eher selten verwendet, wenn wir Arduino 
mal außen vor lassen.

von Manfred (Gast)


Lesenswert?

Wilhelm S. schrieb:
> Du brauchst eine Anwendung!!!!!, die dir ewas bringt!
Deine Tastatur hat einen Tastenklemmer.

Ja, eine konkrete Anwendung sollte man im Auge haben. Als Anfänger muß 
man dazu aber akzeptieren, dass der Weg dahin steinig sein kann und man 
sich über Tage oder Wochen Grundlagen erarbeiten muß.

> .. Ich möchte mich mal MCs beschäftigen..., und vieles andere mehr
> bringt dir nichts. Die blinkende LED ist genauso (un)wichtig und
> langweilig wie das 'Hello World' auf dem Display.

Ich weiß nicht, wie ich Dein "(un)wichtig" verstehen soll. Wenn die LED 
blinkt, hat man schon einmal mindestens zwei Bauteile richtigherum 
angeschlossen. Wieviele Kasper tauchen hier jede Woche im Forum auf, die 
nicht in der Lage sind, mit einem µC ein Relais zu schalten, weil sie 
den Transistor nicht begriffen haben?

Als bei mir nach längerem Stochern "Tach Manfred" auf dem LCD stand, ein 
paar Tage später per Tasten eine Zahl im Display rauf und runter gezählt 
und auch korrekt formatiert angezeigt wurde, war das keine unsinnige 
Beschäftigung.

Anders gesagt: Ich habe mit meinem ersten Arduino diverse simple Dinge 
durchgespielt, auch Blinke-LED und Lauflicht, bevor ich die eigentliche 
Aufgabe begonnen habe.

von c-hater (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:

> Auch auf den 32 bittern wird C++ eher selten verwendet, wenn wir Arduino
> mal außen vor lassen.

Äh, nö. Auf den Dickschiffen wird natürlich massig C++ verwendet. Außer 
vielleicht direkt im Kernel, weil das ja meist Linux ist. Aber auf den 
höheren Ebenen ist natürlich sehr oft auch C++ zu finden.

von Stefan F. (Gast)


Lesenswert?

c-hater schrieb:
> Äh, nö. Auf den Dickschiffen wird natürlich massig C++ verwendet.

Woher willst ausgerechnet du das denn wissen? Das ist nicht deine Welt.

Abgesehen davon geht es hier um Mikrocontroller, nicht um Dickschiffe.

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.