Forum: Mikrocontroller und Digitale Elektronik Womit anfangen (Absoluter Neuling)


von Marcel F. (d0um)


Lesenswert?

Nabend,

Die Lämpchen haben geblinkt auf dem STK500 mit Bascom...das wars aber 
auch.

Wie gesagt, ich fange bei Null an. Habe ein paar Spielereien mit Bascon 
gemacht, aber kann weder Bascon, C oder schön wär Assembler.
Habe auch mit meinen gut 20 Jahren keinen Beruf der im Gerinsgten damit 
etwas zu tun hat.

Damit will ich sagen: Mit 0=Vorkentnissen bin ich für alles offen.

Bascom ist ja erstmal verlockend bei dem was ich so gesehen habe.
Simple Befehle, nix kryptisches...allerdings kommt man da "wohl nicht 
weiter"...
Assembler ist der "king", für mich aber nur kryptische Zeichen.

Bei C verstehe ich auch nicht wirklich etwas, aber nicht so schlimm wie 
Assembler.

Was würdet Ihr mir raten?
Für die ersten Projekte habe ich mir solch nen 3x3 LED-Würfel oder 
einfach nen LED-Würfel per Zufallsgenarator vorgenommen.

Oder ein LED-Lauflicht, wirklich nix Großes.
Das Lauflicht ist bei Bascom ja wirklich "durchsichtig" bei C....

Das Thema ist schon recht komplex....nur bringen kleine 
Erfolgserlebnisse enorm etwas, was ich bei meinen 
"vor-3-jahren-in-assembler-erfahrungen" nicht behaupten kann.

Ich bedanke mich schonmal,

Marcel

von Sam .. (sam1994)


Lesenswert?

Bessere Idee: Fang erst mal mit einem Blinklicht an. Außerdem brauchst 
du die Standardausrüstung. Programmer, µC und Hühnerfutter.

von yxz (Gast)


Lesenswert?

Warum programmierst du die Sachen dann nicht
in Bascom. Wieso kommt man da nicht weit ?
Lass dir nix einreden, das ginge damit nicht ist alles
blödsinn. Fang einfach mal an, dann siehste es ja
wie weit du damit kommst.

von Martin S. (sirnails)


Lesenswert?

Marcel K. schrieb:
> Nabend,
>
> Die Lämpchen haben geblinkt auf dem STK500 mit Bascom...das wars aber
> auch.
>
> Wie gesagt, ich fange bei Null an. Habe ein paar Spielereien mit Bascon
> gemacht, aber kann weder Bascon, C oder schön wär Assembler.
> Habe auch mit meinen gut 20 Jahren keinen Beruf der im Gerinsgten damit
> etwas zu tun hat.
>
> Damit will ich sagen: Mit 0=Vorkentnissen bin ich für alles offen.

Dann schnapp Dir doch einfach mal ein Buch oder suche nach einem 
Tutorial für Dummies. Ist nicht böse gemeint. Teilweise steht es dort 
besser beschrieben, als in der Fachliteratur.

> Bascom ist ja erstmal verlockend bei dem was ich so gesehen habe.

Bascom als Basicdialekt kann auch weiterhin verlockend sein.

> Simple Befehle, nix kryptisches...allerdings kommt man da "wohl nicht
> weiter"...

Das ist totaler Quatsch. Es kommt immer darauf an, was Du damit machen 
willst. Es kommt immer darauf an, welche Sprache gefordert wird. Es gibt 
pauschal kein "Das eine ist doof, das andere ist viel besser".

> Assembler ist der "king", für mich aber nur kryptische Zeichen.

Ist es ja eigentlich auch. Es ist die einfachste Art und Weise zu 
programmieren. Und damit auch die schwerste. Denn es gibt all diese 
schönen konfortablen Befehle nicht, wie sie ein Hochsprache wie C oder 
Basic zur Verfügung stellt. Es gibt einen ausgewählten Befehlssatz und 
ein dickes Prozessorhandbuch. Um in Assembler wirklich sinnvoll etwas 
schreiben zu können, muss man schon recht genau wissen, was man 
eigentlich machen will.

Bascom hat den Vorteil, dass Du mehr oder minder einfach mal drauf los 
arbeiten kannst. Wenn ein Fehler auftritt, ist er einfach zu finden. In 
Assembler ist eigentlich fast alles erlaubt, soweit Du dich an die 
Syntax hälst. Und das birg viele Stolpersteine in sich.

>
> Bei C verstehe ich auch nicht wirklich etwas, aber nicht so schlimm wie
> Assembler.

C ist eigentlich sehr logisch, aber nicht für die deutsche Tastatur 
konzipiert. Ich bewundere die Leute, die immer schön die geschweiften 
Klammern hinbekommen. Bei mir ist das eher ein wildes Raten, bis ich mal 
durch Zufall treffe.

Unterm Strich ist C eine weitaus mächtigere Sprache als Basic, da sie 
sehr viele Strukturen der Programmierung inne hat, die bei Basic gar 
nicht in das Konzept mit eingeflossen sind. Das ist aber für einen 
Anfänger nicht entscheidend. Tiefergehende Sprachmerkmale wirst Du 
eigentlich als Anfänger nicht brauchen.

> Was würdet Ihr mir raten?

Ich persönlich? Assembler. Aber es ist die frustrierenste aller Sprachen 
für Einsteiger. Von daher eher noch C. Für c gibt es ein breites 
Spektrum an Bibliotheken und Compilern, die zumeist auch kostenlos sind. 
Bascom ist m.W. die einzige Basic-Implementation und damit bist du 
Herstellergebunden.

> Für die ersten Projekte habe ich mir solch nen 3x3 LED-Würfel oder
> einfach nen LED-Würfel per Zufallsgenarator vorgenommen.

Schönes Thema. Weist Du denn, wie man Zufallszahlen überhaupt generiert?

> Oder ein LED-Lauflicht, wirklich nix Großes.
> Das Lauflicht ist bei Bascom ja wirklich "durchsichtig" bei C....

Genau das ist das Schöne an Assembler. Du kannst mit diesem Beispiel 
drei Dinge gut lernen: Arbeiten mit Adressregistern, mit Datenregistern 
und einen Haufen über Bitoperationen. Das ganze Drum herum ergibt sich 
dann automatisch.

> Das Thema ist schon recht komplex....nur bringen kleine
> Erfolgserlebnisse enorm etwas, was ich bei meinen
> "vor-3-jahren-in-assembler-erfahrungen" nicht behaupten kann.

Ich persönlich habe am M68000 angefangen Assembler zu lernen. Es gibt 
für diesen Prozessor gute Simulatoren (du kannst also keinen Controller 
grillen) und man lernt viele Tücken kennen, auf die man als 
Programmierer einer Hochsprache überhaupt nicht achten würde (z.B. 
Big/Little Endian). Klar ist dieser Prozessor technisch total überholt. 
Die grundsätzliche Funktionsweise ist aber auch heute noch die gleiche.

von quadral (Gast)


Lesenswert?

Bascom ist schon ein ganz guter Einstieg. Am Anfang -und das hast Du 
richtig erkannt- wirst Du mit Bascom sehr schnell Erfolgserlebnisse 
haben, die dann auch die Langzeitmotivation stärken. Fange mit den 
einfachen Dingen an. Blinklichter, Pendellauflichter, Tasterabfragen, 
evt. bissel Infrarot (geht ganz einfach mit Bascom), mal ein Display 
ansteuern und Text darauf ausgeben etc. Das ist für den Anfang schon 
ganz gut und die Hilfefunktion bei Bascom ist sehr detailliert. Dazu 
noch die Interpretersprache Basic ("Beginner’s All-purpose Symbolic 
Instruction Code"). Es wird Dir sicherlich leichter fallen Basic zu 
erlernen, als die, auf den ersten Blick, kryptisch anmutende Sprache C. 
Um die einfachsten Grundlagen der Programmierung zu lernen reicht das 
voll.

Allerdings wirst Du auch recht schnell feststellen, das Du bei Bascom 
meistens vorgefertigte Funktionen benutzt, ohne wirklich sehen und 
verstehen zu können, wie der Mikrocontroller sie denn nun wirklich 
umsetzt. Du bist dadurch etwas weiter von der Hardware weg, als in C.

Außerdem entspricht ANSI C dem industriellen Standard. Die Entwickler 
der Firma Miele werden die Steuerungsprogramme für ihre Waschmaschinen 
wohl kaum in Basic schreiben. Das ist dann also der nächste Schritt. 
Lern C erst am PC (dafür gibt es genug Literatur und Open-Books) oder 
gleich am µC (Viele Tutorials). Da fängst Du dann wieder mit den 
einfachen Dingen an. Taster abfragen, LED's blinken lassen, etc.

Wenn Du dann noch etwas näher an der Hardware drann seien möchtest, 
musst Du Assembler lernen. Damit lernst Du dann auch gleich wie ein µC 
von der elektronischen Seite her aufgebaut ist und arbeitet. Das hilft 
dir zum Beispiel bei der Codeoptimierung.

Aber das musst Du dann selbst entscheiden, wie tief Du gehen und wie 
weit Du deine Fähigkeiten professionalisieren möchtest.

von Timex90 (Gast)


Lesenswert?

Also ich habe alles mit myAVR gelernt. ASM mit bücher etc. ging sehr 
gut.
Allerdings etwas höhere kosten aber hält sich in grenzen.
Mit dem ganzen pollin zeugs habe ich als anfänger gar kein erfolg 
gehabt...

was ist ISP & RS232 etc.... muss man ja alles erst wissen...

www.myavr.de

von Martin S. (sirnails)


Lesenswert?

Ja, das Pollinboard ist eigentlich Spielzeug. Ich hatte es auch mal 
gekauft, einmal benutzt, und dann mehr oder minder in die Tonne 
getreten.

von Sam .. (sam1994)


Lesenswert?

quadral schrieb:
> Bascom ist schon ein ganz guter Einstieg. Am Anfang -und das hast Du
> richtig erkannt- wirst Du mit Bascom sehr schnell Erfolgserlebnisse
> haben, die dann auch die Langzeitmotivation stärken.

Naja, da hatte ich genau umgekehrte Erfahrungen. Alle 2 Minuten googlen, 
weil ich die Syntax von Bascom nicht blickte (ich finde sie immernoch 
unlogisch). Meine Erfolge hatte ich dann bei C (allerdings konnte ich c# 
vorher).

von Zisterne (Gast)


Lesenswert?

Servus!

Such Dir doch als Einstieg einen netten Prozessor aus und bau ein 
Demonstation Board! Ein paar LED's hier, ein Poti da, ein paar 
DIP-Schalter, eine RS232, CAN...
Wenn Du das Board "frei genug" planst kannst Du auch mal einen anderen 
Prozessor dafür nutzen (z.B. durch Postenstecker).

Ich würde auch gleich mit C anfangen... da gibt es genügend 
Demo-Material und gute Bücher!

Viel Spaß!!!

Grüße!

von Skittler B. (skittler)


Lesenswert?

Eigentlich ist ja auch schon alles gesagt.
Meine Erfahrungen beim Neuanfang, oder auch beim Umstieg auf einen 
anderen Prozessortyp(Hersteller) waren immer recht Positiv in dem du ein 
kleines Demoboard hast. (Pollin AVR z.B.)
Bei den meisen Evolutionkits ist auch schon alles nötige zum 
Programmieren dabei. Öffne ein Example und schau einfach wie die das 
gemacht haben. Lass was Blinken, Reagier auf eine Taste. Schritt für 
schritt geht das dann weiter.

Als Programmiersprache kann ich (auch für den Einstieg) C wärmstens 
empfehlen. Wenn du das ein paar Tage machst, dann liest sich das auch 
wie von selbst.

von NopNop (Gast)


Lesenswert?

Würde auch erst mal ein Demoboard kaufen.
Wie oft hab ich schon im fliegenden Aufbau nach irgendwelchen 
Wackelkontakten, falsch angeschlossenen Leitungen u.ä. gesucht.

Ich finde mittlerweile dass die 50 Euro für so ein Board gut investiert 
sind weil man sich einfach viel Ärger vom Hals hält.

Wenn man dann mal ein eigenes Projekt hat...kann man das immernoch auf 
nem Steckbrett oder auf ner Platine aufbauen.

Grüße

von NopNop (Gast)


Lesenswert?

Achso...hab mit C angefangen.
Mit nem guten Buch oder I-Net durchgearbeitet.
Später dann noch Assembler...ferdisch.

von Falk B. (falk)


Lesenswert?

@  Samuel K. (sam1994)

>weil ich die Syntax von Bascom nicht blickte (ich finde sie immernoch
>unlogisch).

Jaja, Handbuch lesen ist im Googlezeitalter ja auch nicht mehr Mode . . 
.

Meine Herrn.

@Op

BASCOM ist ein guter EInstieg, da kann man stündlich Erfolde feiern, und 
das ist gut so. Wenn man nicht total rumschampt, kann man auch mit 
BASCOM gut Programme schreiben.

C ist nicht anfängertauglich, viel zuviele Stolperfallen.

ASM ist was für Insider und Fans.

Meine Empfehliung. Nimm BASCOM. Wenn du dort fit bist und wirklich mehr 
Leistung brauchst, steig auf C um. Und wie bereits mehrfach geschrieben, 
besorg dir für dein Anfang ein fertiges Demoboard, nichts 
selbstgebautes, denn sonst kämpfst du an zu vielen Fronten mit der 
Fehlersuche (Hardware und Software).

MfG
Falk

von (Gast) (Gast)


Lesenswert?

Ich finde BASCOM etwas zu hässlich, um es zu empfehlen... :)
Ich werfe einfach mal den Arduino ein :)
Einfach an USB anschließen, IDE gibts dazu.
Es ist letztlich C (avr-gcc) mit ein paar Libraries, die den Einstieg 
erleichtern. Ist nicht umsonst recht erfolgreich geworden :)

von yxz (Gast)


Lesenswert?

Es gibt ja nicht nur Bascom sondern auch noch andere wie
Mikrobasic usw. Selbst da gibt es genug Libraries im Netz.
Für den Hobbybereich ist es sehr gut. Aber muß jeder selber wissen.

von ET-Tutorials (Gast)


Lesenswert?

Wenn Du "C" lernen möchtest, ist vielleicht mein Video-Kurs etwas für 
Dich.
http://et-tutorials.de/mikrocontroller/

von Marcel F. (d0um)


Lesenswert?

Hallo Allerseits und danke für die vielen Antworten,

Ich denke für den ersten Einstieg ist dann Bascom wohl doch das Beste.
Zu mindest hat man dort sehr schnell Erfolgserlebnisse.
Leider bin ich in der Beziehung ein ungeduldiger Mensch und ohne solche 
Erfolge würde das Board wohl schnell wieder in der Versenkung landen, so 
wie damals.

Warscheinlich würde Bascom, wenn man es richtig beherrscht, für meine 
Zwecke ein Leben lang ausreichen.
Es sind ja alles nur Spielereien und vor allem soll es ja Spaß machen.


Ich werde einfach nochmal ein bisschen "spielen".
Ich habe heute dieses Pollin Spiel bekommen mit ISP-Buchse und wenn ich 
mir einen Adapter gebastelt habe werde ich mal probieren ein bisschen 
mit dem Display zu spielen.
Es ist ja nicht so, dass man sich die Programme bei Bascom nur per 
Mausklick zusammenstellt wie bei irgendeinem Lego-Auto.
Möglichkeiten gibt es ja auch dort genug, wenn es nicht auf absolute 
Geschwindigkeit oder perfekte Platzausnutzung kommt.
Am Anfang kann man da wohl verschwenderisch alles auf dem Mega32 
draufbraten, auch wenn man nur eine Hand voll Leitungen benötigt.

Schönes Wochenende,

Marcel

von Thomas Kiss (Gast)


Lesenswert?

Also ich habe mit dem Pollin Board angefangen ( günstig, reicht für den 
Anfang dicke ) benutze ich heute noch und schreibe meine Programme mit 
Bascom.

Wie die Leute gesagt haben, kommt man schnell zum erfolg. Wenn Du Null 
Kenntnisse hast und ich gehe von mir aus, und fängst mit etwas 
schwieriges an, dann bleibt das Zeug schnell in der Ecke...

Machmal eine LCD oder 7 Segment Uhr, Thermometer, RGB Fader..solche 
Sachen. Wenn die alle gut funzen, dann kannst weiter machen. Hast die 
grundsteine begriffen...

Habe auch lange mit Timer, ADC Werte herumgekämpt...

Es gibt viele nette Leute hier die Dir dann helfen. Ganz klar, keiner 
schreibt Dir die Programme..

Schaue nach " Halvar"

http://halvar.at/elektronik/kleiner_bascom_avr_kurs/

von Marcel F. (d0um)


Lesenswert?

Hallo allerseits,

Ich möchte keinen neuen Beitrag verfassen, daher hier.

Jedenfalls wollte ich das Display des Pollin Boards ansteuern mit 
Bascom.

Die Pins E und RS hängen an A0 und A1.
Bei dem Tiny 2313 sind diese doppelt vergeben als Port oder Xtal.
Nunja, jedenfalls läuft ja der intere RC-Oszillator.

Bei Bascom bekomme ich dennoch einen Fehler.

Ich habe mich schon wund gegooglet...wie kann ich Bascom erklären, dass 
diese Ports "zur Verfügung stehen".

An den Datenpins meckert es ja nicht rum...aber ich kanns eben nicht mal 
eben umstecken auf dem Board..

Marcel

von oldmax (Gast)


Lesenswert?

Hi
Ich glaube nicht, das es zur Debatte Steht, Pollin oder ... denn es ist 
bereits im erten Beitrag vom STK 500 die Rede. Hier geht es wohl eher 
darum, den Draht zur µC - Welt zu bekommen. Bascom ist sicherlich ein 
Weg, wenn man "0" Ahnung hat, aber "C" oder "ASM" ist für einen Anfänger 
wohl der selbe Stolperstein. Es gilt doch zu begreifen, wie ein Programm 
entwickelt werden muß. Welcher Syntax letztlich vom Programmierer 
gefordert wird ist doch zweitrangig. Wie hab ich es gelernt, hmmm... es 
gab eine Aufgabe für mich und ich hatte eine Programmiersprache. Nun 
erste Schritte, also vorgegebene kleine Beispielprogramme ausprobiert 
und versucht, nach und nach auf meine Aufgabe umzuschwenken. Immer 
wieder nachgelesen, welche Befehle anwendbar sind, probiert, verworfen, 
usw....
Klar, ein weiter weg, aber mit der Zeit prägt sich dann so nach und nach 
etwas ein. Dann hört man von "Struktur", "Ereignissen", "Objekten" und 
was es sonst noch so alles gibt und plötzlich ist auch diese Welt 
erschlossen. Nee.., nicht, weil man noch mal von vorn beginnt, sondern 
weil man das Verständnis für die Programmierung erarbeitet hat. Ich ahb 
hier irgendwo gelesen "Assembler ist leicht und deshalb schwer... ". Na 
ja, ich lass es mal beim Zitat.
 Es ist viel geschrieben worden, aber bei Programmierung von µC is eine 
Grundkenntnis der Elektrotechnik unumgänglich. Wer die einfachen 
Grundlagen von Stromkreisen nicht kennt, der wird nicht sehr glücklich 
werden. Ach noch was, die Tutorials n diesem Forum bieten viele 
Beispiele, die wenn man sie nacharbeitet, einiges erklären können.
Gruß oldmax

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.