Forum: /dev/null Vom blutigen Anfänger zum Freak! (Leipzig)


von Michael Voigt (Gast)


Lesenswert?

Hallo,

ich selbst bezeichne mich als blutigen Anfänger, ich weis was ein
Widerstand, Kondensator ist, das ist natürlich etwas dürftig.

Bis jetzt war ich nur im bereich Softwareentwicklung (Webentwicklung)
tätig, denke das ich da genügent Erfahrung an Logik mitbringe.

Nun aber mal zum eigentlichen Thema, wie muss ich beginnen? Bis jetzt
habe ich mir noch keine Hardware zugelegt. Es gibt ja 100 und eine
Entwicklungsplatine. Was benötige ich alles so das ich kleine
Beispielprogramme testen kann und später selber welche schreiben kann.

Mein Lernziel:
- Zu Beginn einfache Schaltungen erstellen und verstehen lehrnen.
- Mit deren Programmierung auf Ereignisse zu reagieren.
- Das große Endziel ist es mit Radio Frequency Identification (RFID),
ein kleines Testprojekt um zusetzen. Welches die Transponder-ID auslist
und diese einer ID zuordnet. Diese wiederrum einer Person zugeordnet ist
und diese dann in einem Windwosprogramm (C++) anzeigt.

Hoffe ich habe mir meine Ziele nicht zuhoch gesteckt!

Ich persönlich komme aus Leipzig, vielleicht gibt es noch andere User
mit dem gleichen Hobby die ebenfalls aus Leipzig kommen.

Würde mich über jede Art von Unterstützung freuen.

Was muss ich kaufen somit ich alles Testen kann, was hier im
AVR-Tutorial beschrieben ist.

Atmel Starterkit STK500 -> Diese Starterkit sieht sehr umfangreich aus
, aber ist da auch schon LCD, LEDs usw. Dabei? Was könnt Ihr mir
empfehlen.

Vielen Dank schon mal für Eure zahlreichen Antworten,
Michael

von Andreas B. (blue-corsa)


Lesenswert?

Hallo Michael

Also wenn du mit den Atmels arbeiten willst, kann ich dir das STK500
entfehlen, es sind Taster und LED´s dabei 8 stück jeweils wenn ich mich
jetzt nicht täusche.

Ein LCD ist nicht dabei, das sollte aber auch nicht das Problem sein,
die bekommt man ja für low. Noch dazu musst du ja auch wissen wie gross
dein Display demensioniert sein soll!

Was du sonnst noch brauchen tust, kann man so nicht sagen kommt darauf
an was du alles vor hast. EEprom, Chipkarten, Mp3 Decoder usw...

Mit dem STK500 bist auf jedenfall für den Start bestens gerüstet!

Mfg Andreas

von Michael Voigt (Gast)


Lesenswert?

Hallo Andreas,

>Was du sonnst noch brauchen tust, kann man so nicht sagen kommt
darauf
>an was du alles vor hast. EEprom, Chipkarten, Mp3 Decoder usw...

- Zu beginn erst mal ein paar LED's zu blinken/leuchten bringen ->
Wenn ich das hin bekommen habe verschiedene Blinksignale, der wechsel
erfolgt über Taster!

Zweck: Kennenlernen der Syntax usw. eben die ersten Versuche.

- Ein LCD ansteuern, aus gabe eines Textbeispiel.

Zweck: Was geht heut schon ohne LCD? Lernen des Umganges mit LCD's

- Temperaturfühler ansteuern, ausgabe auf einem LCD. -> Dann erweitern
um Max/Min Temp zuspeichern. Dies dann abrufen und auf LCD darstellen.

Zweck: Ansteuern von einem Sensor mit dem zusammenspiel LCD, sprich
Daten aufnehmen->weitergeben->ausgeben. Dann noch das Speichern von
Daten und das Auslesen von Daten (Min/Max-Wert!)

Das sind so meine Vorstellungen um mich langsam in das Geschehen zu
Tasten.

Hoffe Du hast nun eine bessere Vorstellung und kannst mir Tipps zur
Hardware geben die ich mir kaufen sollte/muss! Habe mir bis jetzt noch
nichts zugelegt!

Vielen Dank für die rasche Antwort,
Michael

von Michael Voigt (Gast)


Lesenswert?

Zusatz:

Das einzige was ich mir gekauft habe ist ein Assemblerbuch und ein Buch
über Microcontroller, aber ein allgemeines. Das Assemblerbuch wollte ich
mir im Uhrlaub zugemüde führen.

Die MC's programmiert man doch mit Assembler/C, man beginnt doch mit
Assembler, oder habe ich da schon was falsch verstanden!

MFG
Michael

von Bri (Gast)


Lesenswert?


von Rupert (Gast)


Lesenswert?

Also Mikrocontroller sind eine ziemliche "low-level" Angelegenheit,
und spätestens wenn man im Datenblatt was nachgucken muss was einem
nicht in irgendeinem Tutorial vorgekaut wird, dann muss man halbwegs
verstanden haben wie so ein Ding funktioniert. Und das kann man
eigentlich nur, wenn man Assembler lernt. So eine Hochsprache wie C
versteckt einfach, was wirklich auf niedriger Ebene passiert.

Aber für spätere anspruchsvollere Projekte kannst Du Assembler getrost
vergessen; das ist einfach viel zu zeitintensiv. In C kann man relativ
mal schnell was ändern, aber in Assembler hast Du meist soviele
Abhängigkeiten und ekeligen Sphagetti-Code, dass das zu zeitaufwendig
ist.

Ich würd an Deiner Stelle ein paar einfache Progrämmchen in Assembler
schreiben (LED's blinken lassen). Wenn Du dann noch Lust hast, steure
ein LCD in Assembler an (Hallo ausgeben reicht ja). Dabei hast Du
soviel gelernt dass Du zu C wechseln kannst.

von Jochen (Gast)


Lesenswert?

@rupert
"Also Mikrocontroller sind eine ziemliche "low-level"
Angelegenheit,
und spätestens wenn man im Datenblatt was nachgucken muss was einem
nicht in irgendeinem Tutorial vorgekaut wird, dann muss man halbwegs
verstanden haben wie so ein Ding funktioniert. Und das kann man
eigentlich nur, wenn man Assembler lernt."
dem stimme ich nicht zu du kannst sehr wohl die meisten wenn nicht
sogar alle functions (timer,usart,...) eines µC verwenden auch wenn du
nur C kannst. Denn die entsprechenden register lassen sich bequem auch
in C setzten. Der nachteil von c code ist nunmal, dass er langsamer
ist, da er irgendwelche special befehle nicht berücksichtigt, und dass
man in C nich so einfach einzelne bits setzten und löschen kann.
(BitMasken, oder Bitfelder - wobei bitfelder in c nicht so genau
festgelegt ist, wie sie auszusehen haben)

Gruß
Jochen

von Jochen (Gast)


Lesenswert?

Nachtrag:
natürlich schadet es nie wenn man den µC auch in asm programmieren kann
:)

von Thomas K. (thkais)


Lesenswert?

Eine interessante Alternative, gerade für Anfänger, ist Basic. Dieser
Compiler nimmt einem vieles ab, bringt schnelle Erfolge, z.B. ist der
Anschluss eines LCD bei Basic ein Klacks. Allerdings ist da dann auch
vieles in einer Blackbox verkapselt. Es gibt eine kostenlose
Testversion, es lohnt sich sicher, da mal hineinzuschauen.
Wenn es nicht gerade Programme werden, bei denen Timing wichtig ist,
würde ich eher zu Basic tendieren.

Das STK-500 ist m.E. nicht unbedingt notwendig. Wenn man das Geld hat,
O.K., aber mit einem Breadboard, einem Programmierkabel und PonyProg
ist man genauso gut gerüstet.

von SuperGrobi (Gast)


Lesenswert?

Ich würde Dir empfehlen, einen Mikrocontroller zu nehmen, der nicht
schon hundertfach in allen Foren "durchgekaut" wurde. Denn erst wenn
man selbst bei den Programm-Routinen gefordert wird, lernt man auch was
dabei.
Mir persönlich bringt es nicht viel, wenn ich mir den Code aus dem
internet runterlade und in mein Programm implementiere. Das Programm
läuft dann wahrscheinlich, aber ich habe dann nicht verstanden, warum.
Was auch sehr wichtig ist, sind gute englisch Kenntnisse...

gruß
Thomas

von Thorsten (Gast)


Lesenswert?

> Ich würde Dir empfehlen, einen Mikrocontroller zu nehmen,
> der nicht schon hundertfach in allen Foren "durchgekaut"
> wurde. Denn erst wenn man selbst bei den Programm-Routinen
> gefordert wird, lernt man auch was dabei.

Nein, gerade als Anfänger stößt man oft auf scheinbar unlösbare
Probleme hinter denen sich allerdings meißt nur Kleinigkeiten
verbergen. Wenn man einen "durchgekauten" Controller nimmt, kann man
sicher sein, daß man in Foren wie dieses hier schnell kompetente Hilfe
erhält.

Gruß
Thorsten

von Peter D. (peda)


Lesenswert?

"Wenn man einen "durchgekauten" Controller nimmt, kann man
sicher sein, daß man in Foren wie dieses hier schnell kompetente Hilfe
erhält."

Na aber ganz genau !

Und lernen muß man trotzdem ne Menge, langweilig wirds auf keinen
Fall.


Nur als Profi kann man sich auch an Exoten wagen, wenn man denn
genügend Freizeit hat.

Allerdings sage ich mir auch, lieber einige wenige richtig gut kennen,
als viele nur schlecht und dann haufenweise Bugs zu produzieren.


Peter

von Michael Voigt (Gast)


Lesenswert?

DANKE^∞ (Danke für Eure zahlreichen Tipps!)

Ich habe mich nun entschieden mir diese Atmel Starterkit STK500
zukaufen!
http://shop.mikrocontroller.net/csc_article_details.php?nPos=0&saArticle[ID]=35
Hoffe das ich damit alles nötige bestitze um loszulegen, ausser das
Wissen. :-)

Folgende Bücher habe ich mir zugelegt!
Mikrocontroller Experimentierbuch
http://www.buecherbillig.de/product/Mikrocontroller_Experimentierbuch.html
Messen, Steuern und Regeln mit PIC-Mikrocontrollern
http://www.buecherbillig.de/product/Messen,_Steuern_und_Regeln_mit_PIC-Mikrocontrollern.html
C Programmierung
http://www.buecherbillig.de/product/C_Programmierung.html
C fuer Mikrocontroller
http://www.buecherbillig.de/product/C_fuer_Mikrocontroller.html
Assembler Programmierung
http://www.buecherbillig.de/product/Assembler_Programmierung.html

Puh mit welchem Buch beginne ich am besten?

Na ja nun geht es erstmal mit meiner Freundin für 3 Wochen und ein paar
Freunden nach Lanzarote (am 8.Aug), mal schauen wie es die Zeit zulest
das man ab und an was liest!

Das Starterkit STK500 kaufe ich mir dann wenn ich wieder im Lande bin,
da ist ja alles dabei um loszulegen? (panische Nachfrage:-))

Vielen Dank noch mal für Eure hilfe. Vielleicht sind ja auch einige die
gern mal über ICQ Quatschen, oder auch Skypen. Dann schickt mir eichfach
eine E-Mail mit Eurer ICQnummer, oder dem Skypename, oder einfach
beides.

Danke,
Michael

von Marco K. (Gast)


Lesenswert?

Servus Michael,

die Bücher

-Messen, Steuern und Regeln mit PIC-Mikrocontrollern
-Mikrocontroller Experimentierbuch
-Assembler Programmierung

würd ich erstmal zur Seite legen, da sie nicht für AVRs geeignet sind.
Das Buch "C-Programmierung" könnte gut für die Grundlagen der
C-Syntax sein.
Im Buch "C fuer Mikrocontroller", solltest du dir die Beispiele für
die AVR-Familie anschauen.
Beim Buch "Assembler Programmierung" würd ich aufpassen, AVRs haben
einen anderen Befehlssatz als 8051er und PCs.

Gruß Marco

von see4far (Gast)


Lesenswert?

Also ich hab vor kurzem auch ohne irgendein Starter-Kit einen ganz guten
Start hingelegt. Meiner Meinung nach reichen ein Steckboard, ein
ISP-Progger, ein simpler AVR, ein Quarzoszillator, ein paar
Widerstände, Kondensatoren und LEDs um loszulegen. Und wenns einem auf
dem Steckboard zu unübersichtlich wird, kann man sich auch eben eine
Platine selber ätzen. Anleitungen dazu gibts reichlich im Netz und bei
mir hat's auch gleich ohne Probleme geklappt. Ein Starter-Kit für 100€
finde ich leicht überteuert.

von Daniel R. (Gast)


Lesenswert?

@Michael Voigt

>"Bis jetzt war ich nur im bereich Softwareentwicklung
(Webentwicklung)
tätig, denke das ich da genügent Erfahrung an Logik mitbringe."

Sei dir da mal nicht so sicher!!!!!
Webentwicklung hat mit Mikrocontrollern und Assembler wohl gar nichts
zu tun!

Die Logik, die ich meine, ist eine ganz andere als die, die du meinst.
Aber das wird dir dann schon noch auffallen, dass Assembler viel mehr
Grips erfordert als PHP oder HTML(welche sich ja von selbst erlernen).

Ich wünsch dir trotzdem viel Spaß mit dem STK500! Es ist echt
ausgezeichnet!

Daniel

von Marco K. (Gast)


Lesenswert?

Also ich bin der Meinung 100 € für ein Entwicklungskit mit diesem
Umfang, ist fast schon geschenkt.
Original Entwicklungsumgebungen und Software für andere µ-Controller
kosten meist mehrere Tausend Euro und sind oft so umständlich, dass man
erstmal Wochen braucht um damit ordentlich arbeiten zu können.

von Peter D. (peda)


Lesenswert?

"ich weis was ein Widerstand, Kondensator ist, das ist natürlich etwas
dürftig."

Das stimmt.

Man solte schon wissen, wie z.B. ein Flip-Flop aus 2 Transistoren
funktioniert. Astabiler Multivibrator, Schmitt-Trigger wäre auch nicht
schlecht.
Und wie einfache Logikschaltkreise (7400, 7402, 7447, 7474, 7475, 7493,
74164) funktionieren.


Peter

von André K. (andre-)


Lesenswert?

"Sei dir da mal nicht so sicher!!!!!
Webentwicklung hat mit Mikrocontrollern und Assembler wohl gar nichts
zu tun!"

Das ist ja nicht wirklich der Punkt. Dadurch, dass er bereits
programmieren kann (wenn auch "nur" in PHP und HTML) kennt er
schonmal die Grundstrukturen wie Schleifen, Verzweigungen und diesen
ganzen Kram und kann sich im Kopf auch einen ungefaehren Plan machen,
wie sein Programm aufgebaut sein muss, damit es eben das Gewuenschte
macht. Ich fand es schon grausam, als ich in der Schule mit einigen
Maedels im Kurs Delphi gelernt hab. Denen wurde eine Aufgabe gestellt
und sie hatten meistens einfach ueberhaupt keine Ahnung, wie sie das
ganze angehen sollen (soll keine Verallgemeinerung sein, traf auch fuer
einige Herren der Schoepfung zu), weil sie an die Vorgaenge einfach
nicht gewoehnt waren.

Die bisherigen Kenntnisse sollten jedenfalls von Vorteil sein :).

Wohn uebrigens ca. 7km von Grimma entfernt, vllt laufen wa uns
irgendwann mal ueber den Weg :D.

MfG

von Taylor (Gast)


Lesenswert?

Hi,
kann dir für den Einstieg in C den Kernighan/Ritchie empfehlen. Ist
einfach DIE C-Bibel. Gibts mittlerweile auch schon als deutsche
Übersetzung glaub ich. Als späteres Nachschlagewerk habe ich das Buch
"C für PCs" von Prinz. Habe bis jetzt noch kein besseres
Nachschlagewerk gefunden.
Für alle allgemeinen Sachen empfehle ich "Taschenbuch
Mikroprozessortechnik" von Beierlein/Hagenbruch. Kann am Anfang auch
recht nützlich sein.

gruß Taylor

von takeshi (Gast)


Lesenswert?

"Man solte schon wissen, wie z.B. ein Flip-Flop aus 2 Transistoren
funktioniert. Astabiler Multivibrator, Schmitt-Trigger wäre auch nicht
schlecht.
Und wie einfache Logikschaltkreise (7400, 7402, 7447, 7474, 7475, 7493,
74164) funktionieren."

Selten so einen ausgemachten Unsinn gelesen. Seit wann muss man 
elektrotechnisches Wissen haben, um die grundsätzliche Logik von 
Assembler oder gar C zu verstehen? Nicht umsonst sind "Elektriker" und 
"Fachinformatiker" zwei komplett verschiedene Berufe, mein Freund ;-)

Ich selbst hatte zwar das Glück, rudimentär in Sachen 
Installationstechnik, Digitaltechnik & co ausgebildet zu werden aber 
ziehe nun beim programmieren der Controller absolut keinen Nutzen 
daraus, das wäre nur hilfreich wenn ich einen Controller selbst bauen 
wollte.

Irgendwie verdrehst du hier massiv die Welt. Im übrigen kann ich nur 
lachen, wenn ich sehe dass es hier tatsächlich Leute gibt, die einen 
µController mit ner Hochsprache steuern! Ihr Jungens verfehlt das Thema, 
solch Gerätschaften wurde für Assembler entwickelt, alles andere ist 
Zweckentfremdung und zudem wenig effizient.

von Kuen (Gast)


Lesenswert?

>Irgendwie verdrehst du hier massiv die Welt. Im übrigen kann ich nur
>lachen, wenn ich sehe dass es hier tatsächlich Leute gibt, die einen
>µController mit ner Hochsprache steuern! Ihr Jungens verfehlt das Thema,
>solch Gerätschaften wurde für Assembler entwickelt, alles andere ist
>Zweckentfremdung und zudem wenig effizient.

LOL, ich hab selten so einen Schwachsinn gelesen.....

von Martin (Gast)


Lesenswert?

@takeshi (Gast),

mal aufs Datum des Postings geschaut? Glaubst du das Thema ist nach mehr 
als zwei Jahren noch aktuell?
Leichenfledderer.....

von Kai G. (runtimeterror)


Lesenswert?

>Zweckentfremdung und zudem wenig effizient.

Stimmt nur bedingt und wer interessiert sich schon für Effizienz - 
Effektivität zählt und da hat C ebenso seine Daseinsberechtigung.

by the way - warum zur Hölle gräbst du einen so alten Thread wieder 
aus???

von neuer (Gast)


Lesenswert?

....by the way - warum zur Hölle gräbst du einen so alten Thread wieder
aus???....


warum soll er das nicht machen? ich verstehe deine aufregung nicht.
oder hast du gerade deine haschpfeife ausgemacht oder du hast ein an der 
klatsche.

mfg

von Fragender (Gast)


Lesenswert?

neuer, weil es sinnlos ist. absolut sinnlos. und wie recht er damit hat 
zeigt dein posting, da du nur den namen ausgetauschst hast und sauer 
bist, daß du erwischt worden bist.

von takeshi (Gast)


Lesenswert?

aha ... Also nur Kindergebrabbel, Fachidioten (Effizienz ist unwichtig? 
Ohgott, deine Lehrer müssen nun einen stechenden Schmerz verspüren) und 
Paranoiker hier am Start.

Vermutest du eigentlich hinter jedem Text dieselbe Person? Hörst du 
nachts Stimmen oder fühlst dich in einsamen Gassen verfolgt? Geh zum 
Arzt ...

ich muss "neuer" zustimmen, es ist extrem sinnlos, gegen das Beantworten 
von alten Threads vorgehen zu wollen. Ihr habt wirklich einen an der 
Klatsche, denn wenn entsprechende Menschen nie wieder hier reinschauen, 
dann sind sie eh falsch im Forum/Board/wasauchimmer. Die anderen, die 
die wirklich an der Community teilnehmen wollen scheren sich einen Dreck 
darum, wann irgendeine Diskussion gestartet wurde, der Inhalt zählt. 
Aber ich merk schon --> es wieder die Jahreszeit der Trolle ;-)

von takeshi (Gast)


Lesenswert?

noch einer: Du bist dir aber schon im klarem darüber, dass das 
allermeisste Wissen der Welt uralt ist und gerade die kontinuierliche 
Diskussion über alles mögliche neues Wissen generiert bzw. alte Fehler 
korrigiert? Anscheinend nicht ...

von takeshi (Gast)


Lesenswert?

>Leichenfledderer.....
Forentroll-Kind-Hybrid, s. oben, fang an zu denken und hör auf mit 
impulsivem Verbal-Auswurf. Deine ekelhafte Fantasie auf normale Menschen 
zu übertragen ist nicht nur geschmacklos, sondern zeugt auch von dem IQ 
einer Zentralheizung (das ist ein Kompliment!).

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Enough already...

von Peter D. (peda)


Lesenswert?

takeshi wrote:

> Selten so einen ausgemachten Unsinn gelesen. Seit wann muss man
> elektrotechnisches Wissen haben, um die grundsätzliche Logik von
> Assembler oder gar C zu verstehen?

Was nützt Dir Dein C oder Assembler, wenn Du zu doof bist, Hardware an 
den MC dranzupappen?

MC-Programme dienen ja gerade dazu, irgendwelche Hardware zu steuern.

Wenn Du z.B. Ausgangspins per Schieberegister erweitern willst, mußt Du 
wissen, wie es funktioniert.
Bzw. wenn Du mehr Strom/Spannung brauchst, als Dein MC ausspuckt, ist 
die Kenntnis der Transistorgrundschaltungen äußerst nützlich.


Aber wenn Du nicht weißt, was die Hardware macht, kannst Du nicht deren 
Ansteuerung programmieren.
Deine super-duper Assemblerprogramme versauern unnütz in Deinem MC und 
niemand kann sehen, wie gut sie sind.


> Nicht umsonst sind "Elektriker" und
> "Fachinformatiker" zwei komplett verschiedene Berufe, mein Freund ;-)

Sowas nennt man wohl zu recht Fachidiot.

Es kommt jedoch viel mehr dabei heraus, wenn man einschätzen kann, 
welche Aufgabe einfacher und kostengünstiger in Hardware oder in 
Software zu realisieren ist. Man muß dazu aber seinen Horizont etwas 
weiter aufschrauben.


> Ich selbst hatte zwar das Glück, rudimentär in Sachen
> Installationstechnik, Digitaltechnik & co ausgebildet zu werden aber
> ziehe nun beim programmieren der Controller absolut keinen Nutzen
> daraus, das wäre nur hilfreich wenn ich einen Controller selbst bauen
> wollte.

Und hast Du überhaupt schon mal irgendein funktionierendes Gerät 
aufgebaut und programmiert?


> Irgendwie verdrehst du hier massiv die Welt. Im übrigen kann ich nur
> lachen, wenn ich sehe dass es hier tatsächlich Leute gibt, die einen
> µController mit ner Hochsprache steuern! Ihr Jungens verfehlt das Thema,
> solch Gerätschaften wurde für Assembler entwickelt, alles andere ist
> Zweckentfremdung und zudem wenig effizient.

Träum weiter und programmier Dich mit Assembler tot, wärend andere in C 
derweil 100-mal mehr Projekte fertigstellen.


Peter


P.S.:
Manchmal überkommt es mich einfach und ich muß nen Troll füttern.

von takeshi (Gast)


Lesenswert?

>Aber ich merk schon --> es wieder die Jahreszeit der Trolle ;-)

>P.S.:
>Manchmal überkommt es mich einfach und ich muß nen Troll füttern.

Schön, wenn man fremde Worte einfach kopieren kann, oder?

>Und hast Du überhaupt schon mal irgendein funktionierendes Gerät
>aufgebaut und programmiert?

Ja? Und jetzt?

>Sowas nennt man wohl zu recht Fachidiot.

Hihi! Du nennst hochqualifizierte, meist akademisch gebildete Menschen 
Fachidioten, nur weil sie nicht deinen berufspezifischen Blick der Dinge 
haben? Armes Menschlein ...

>Träum weiter und programmier Dich mit Assembler tot, wärend andere in C

Ja, gigantische Libs kopieren kann ich auch in RIDE oder ähnlichem ... 
dazu is kein C nötig. Manche erfinden gerne das Rad neu, um dann Dinge 
zu schaffen die von einigen nichtmal verstanden werden, andere verlassen 
sich grundsätzlich auf jeden Scheiss von Unbekannten. DAS (letzteres) 
ist Fachidiotie

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.