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
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
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
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
http://www.mikrocontroller.net/tutorial http://www.mikrocontroller.net/tutorial/equipment http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial PS: Assembler zu können ist schon von Vorteil, du solltest aber besser mit C anfangen
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.
@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
Nachtrag: natürlich schadet es nie wenn man den µC auch in asm programmieren kann :)
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.
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
> 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
"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
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
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
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.
@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
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.
"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
"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
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
"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.
>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.....
@takeshi (Gast), mal aufs Datum des Postings geschaut? Glaubst du das Thema ist nach mehr als zwei Jahren noch aktuell? Leichenfledderer.....
>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???
....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
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.
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 ;-)
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 ...
>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!).
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.
>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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.