Hallo zusammen, ich habe eine Frage und zwar : Elektor bietet viele Bücher zum Thema Microcontroller. Ich weiss allerdings nicht wo ich am besten anfangen muss? Es gibt viele Bücher über die Familie 8051er ( Atmel AT90S53 ..) Es gibt aber auch ein Board von Reneseas RC8/13. Andere hersteller wie Mikroe bietet unterschiedliche Boards für AVR-Atmel, PIC-Microchip. ARM, DsPIC etc.. Es ist mir auf einmal zuviel geworden und fühle mich überfordert schon nur vom Lesen! Welche Sprache? das hat sich mittlerweile erledigt, ich habe mich für C entschieden, ich will mich mit Assembler nicht quälen. Aber auch kein BAsic oder Pascal. Nun das problem bei vielen Evaluationsboard, dass man die passende Compiler dazu kaufen muss!! hier ist der Hacken, diese Compiler kosten sehr viel Geld. An für sich ich habe damals mit dem PIC16F84A gearbeitet und fand ich cool. Ich wollte ein PIC18f oder 16F877 testen. Die meisten Entwicklungsumgebung sind aber kostenpflichtig! Bei AVR habe ich Interesse an dem Atmega 16 oder 32. Es gibt auch ein fertiges Board von Mikroe dafür. ich weiss allerdings nicht ob mit dem AVR-Studio den Atmega 32 programmieren kann!! Kann mir jemanden irgendwie helfen zu erklären wie ich mich für eine Microcontroller-Familie entscheide und wo gibt es kostenlose tools dafür? wie habt ihr angefangen? muss ich wirklich den 8051 erstmal beherrschen? vielen dank
m.Kai schrieb: > ich weiss allerdings nicht ob mit dem > AVR-Studio den Atmega 32 programmieren kann!! Mit AVRStudio/WINAVR kannst Du alle 8Bit-AVRs programmieren: - ATtiny - ATmega - AT90 Peter
Häh! Seit wann ist denn die Entwicklungsumgebung für PIC kostenpflichtig! Du kannst MPLAP von Microchip runterladen und auch die Kompiler dafür...kostenlos... Und Du kannst jeden Pic in C programmieren...
m.Kai schrieb: > Welche Sprache? das hat sich mittlerweile erledigt, ich habe mich für C > entschieden, ich will mich mit Assembler nicht quälen. Aber auch kein > BAsic oder Pascal. C ist sicher ne gute Wahl. Und da der Compiler auch ASM Listings erzeugen kann, kannst du lose mal in die ASM Welt reinschnuppern um die Zielmaschine besser zu verstehen. > Nun das problem bei vielen Evaluationsboard, dass man die passende > Compiler dazu kaufen muss!! hier ist der Hacken, diese Compiler kosten > sehr viel Geld. Es gibt auch viele Eval-Boards von Drittherstellern ohne "bundling" mit kostenpflichtiger SW. Für die gängigen Plattformen gibt es einen frei verfügbaren C Compiler/Crosscompiler (avr-gcc, arm-gcc), oder frei verfügbare IDEs wie das avrstudio für AVR Entwicklung unter Windows. > An für sich ich habe damals mit dem PIC16F84A gearbeitet und fand ich > cool. > Ich wollte ein PIC18f oder 16F877 testen. Die meisten > Entwicklungsumgebung sind aber kostenpflichtig! Meine sehr subjektive Meinung: Mir gefallen die PICs nicht so gut, weil ich Mühe mit deren Assembler habe. Ist einfach anders als was ich sonst so kenne. 8051 ASM ist mein Albtraum. ;) Da bin ich wohl noch 65xx ASM verwöhnt. ;) > Bei AVR habe ich Interesse an dem Atmega 16 oder 32. Es gibt auch ein > fertiges Board von Mikroe dafür. ich weiss allerdings nicht ob mit dem > AVR-Studio den Atmega 32 programmieren kann!! Mit avrstudio kannste praktsich (für) alle 8bit AVR proggen. > Kann mir jemanden irgendwie helfen zu erklären wie ich mich für eine > Microcontroller-Familie entscheide und wo gibt es kostenlose tools > dafür? Meine sehr subjektive Empfehlung: AVR, solange 8 bit Power reicht. Für mehr Schub dann etwas mit ARM. Wenn dir die PICs gefallen, bleib dabei. Was gefällt lernt sich leichter. :) > wie habt ihr angefangen? muss ich wirklich den 8051 erstmal beherrschen? Mein erster MC war der 8051. Den hab ich allerdings als Krampf in Erinnerung behalten... 8) Nicht totzukriegen diese Plattform hehe... Viel Spass! :)
Hi, ich würde mir das da besorgen: http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_%28MSP-EXP430G2%29 Konkurrenzlos billig und der MSP430 ist ein vernünftiger Controller mit von-Neumann-Architektur und orthogonalem Befehlssatz - sehr schön, wenn man mal in Assembler coden will. Nur braucht TI recht lange, bis sie liefern - offenbar ist die Nachfrage nach diesem Board recht hoch.
danke schonmal :-) @Jax (Gast) : warum PIC32?? ich weiss nicht mal wie die PICs 16Bit, 24Bit aufgebaut sind!! ist es nicht zuviel aufeinmal mit dem 32Bit anzufangen? Mein Plan wäre : mit PIC anfangen und irgendwann zu AVR und ARM umswitschen, aber ich weiss nicht ob ich dann direkt mit dem AVR anfangen soll!
Was man IMHO auch nicht ausser acht lassen sollte: Gibt es für den Zielprozessor eine Online-Community? Hier im Forum dreht sich zu ca. 90% alles um die 8-Bit AVR. Du findest hier ein Tutorial und bei Fragen wird dir schnell geholfen. Wenn du etwas ähnliches für die PIC an der Hand hast (ich kenne nur Sprut als Informationsquelle für die PIC), dann ist das durchaus ok. Aber als Einzelkämpfer im stillen Kämmerlein hat man es doppelt schwer.
> Nun das problem bei vielen Evaluationsboard, dass man die passende > Compiler dazu kaufen muss!! hier ist der Hacken, diese Compiler kosten > sehr viel Geld. Bei Renesas kannst du den gcc verwenden und er ist dann genauso kostenlos wie fuer andere Controller auch, oder du kannst den Compiler von Renesas verwenden. Er ist dann beschraenkt auf maximal 64kByte Codegroesse. Also mehr als die kleinen Controller ueberhaubt an Flash haben. > warum PIC32?? ich weiss nicht mal wie die PICs 16Bit, > 24Bit aufgebaut sind!! ist es nicht zuviel aufeinmal mit dem 32Bit > anzufangen? Du willst in C programmieren. Da merkst du normalerweise nicht wieviel Bit dein Prozessor hat. Es ist lediglich so das auf 8Bit Prozessoren dann Programme die 32Bit Variablen verwenden deutlich langsamer laufen. Fuer dich als Anfaenger ist die Qualitaet des Buches (ja richtig, echtes Buch, echtes Papier, echter Lernerfolg) wichtig. Der Prozessor ist eigentlich relativ unwichtig. Solltest du noch kein C koennen waere es noch klueger die Sprache erstmal auf dem PC zu lernen. Olaf
Mach keinen Quatsch ! Fang mit AVR an und bleibe dabei, bis Du irgendwann einen ARM (ich weiss, wahrscheinlich hast Du zwei) wirklich benötigst. Das funktioniert auch mit Microchip - nur hier schlechter. Auch das launchpad (TI)ist eine kostengünstige Schnuppermöglichkeit. Die Frage ist wozu Du das möchtest. Fröhliches LED-Blinken aus Interesse? Studium? Beruf? Im Beruf musst Du wechseln, wenn das gefordert wird. Privat entscheidest Du. Gruss Dietmar
Ich würde mich freuen wenn mein LaunchPad, welches ich vor ewigen Zeiten bei TI bestellt habe, endlich mal ankommen würde. Ich halte den auch für eine super Einstiegsmöglichkeit, aber dazu muss das Ding endlich mal vernünftig verfügbar sein. Der Liefersupport bei TI selbst ist auch etwas undurchsichtig, wenn man nicht telefonieren kann. Ansonsten, wer der englischen Sprache mächtig ist, kann sich mal in der Literatur z.B. zum MSP430 umschauen (z.B. John H. Davies). Ich finde diese Bücher zum Teil deutlich besser gestaltet und verständlicher um sich etwas Autodidaktisch anzueignen.
Bei uns ist das etwas anderes. Wir sind Industriekunden und werden von TI direkt unterstützt. Die schmeissen uns mit den Dingern zu. Gerade noch auf der electronica abgelehnt mit so einem Karton duch die Gegend zu laufen. Privat scheint es etwas schleppend zu laufen.
Picler, du meinst mit "den Dingern" die LaunchPads? Ist ja mal extrem ätzend, wenn damit die LaunchPads gemeint sind, dann haben die also wohl doch genug auf Lager.
Hallo m.Kai schrieb: > danke schonmal :-) > > @Jax (Gast) : warum PIC32?? ich weiss nicht mal wie die PICs 16Bit, > 24Bit aufgebaut sind!! ist es nicht zuviel aufeinmal mit dem 32Bit > anzufangen? > PIC32 basiert auf der MIPS-Architektur, während die anderen Popel-PICs nicht mal was haben, was man als Architektur bezeichnen könnte... Und PIC<PIC32 Assembler machen nur Masochisten. MIPS ist eine einfache und geradlinige Arch., ob 8 oder 32 Bit spielt da keine grosse Rolle. Bei Microchip gäbe es auch ein Low-Cost-Board. > Mein Plan wäre : mit PIC anfangen und irgendwann zu AVR und ARM > umswitschen, aber ich weiss nicht ob ich dann direkt mit dem AVR > anfangen soll! > Das halte ich für unnötig. Wer AVR, MSP430 oder ARM kennt, lässt vom PIC < PIC32 die Finger... Ein Cortex wäre für den Einstieg sicher etwas zu komplex, aber mit AVR oder 430 macht man nix falsch. Aber nimm´was Dir gefällt. Jax
@A.F. Ja- meine ich. TI benutzt die Teile als Kugelschreiberersatz für seine Kunden. Finde ich auch besser. Ich hatte früh so ein Teil in den Fingern und würde die Mini-MSPs in der Serie einsetzen für kleine Dinge- wenn sie denn nur lieferbar wären ; ) Die Verteilwege für Shop und interne Verwendung ist wohl stark getrennt. Herr Baumann kennt das noch, so ähnlich ; )
Also ich habe mit AVR angefangen. Nicht so lange her. Gefällt mir gut und der Einstieg war nicht so schwer, zumal ich von der Elektrinikecke ja komme. Ich stand vor der Wahl zwischen AVR und PIC. Hier findet man sehr viele Hilfreiche Informationen und Tutorials zum AVR. Von Kollegen habe ich gehört das sie eher zu PIC tendieren, weil Atmel Lieferprobleme mit den Controllern hat. Also nicht zuverlässig ist. Kenne viele Freischaffende die PIC gegenüber den AVR aus diesem Grund verbauen.
ich finde alle Tips wirklich lesenswert. Ich danke euch alle. Ich habe noch eine Frag bezüglich gute Bücher. Es wurde oben folgendes geschrieben : "Fuer dich als Anfaenger ist die Qualitaet des Buches (ja richtig, echtes Buch, echtes Papier, echter Lernerfolg) wichtig." Welche Bücher würdet ihr mir dann empfehlen? Ich habe einige Bücher aufgeschrieben wie : - I/O Projekte für den PC - Basiskurs R8C/13 - Visual Basic ohne Stress Mein Problem ist nämlich : ich weiss nicht wo ich anfangen soll! OK AVR8 und C? Ich will ein Home-Alarm Anlage bauen. da brauche ich schon einiges an I/O. Sind die Tutorials vom Atmega8 auch auf dem Atmega16 oder 32 übertragbar? dann kann ich vielleicht direkt mit dem Atmega32 oder atmega644 anfangen? Dann kommt noch die andere Welt und zwar GUI!! ich will mein Microcontroller über ein GUI ansteuern und das ganze am besten übers Internet! Ein Freund von mir meint : lass die Finger vom Visual Basic! ok aber warum? soll ich dann lieber C++ lernen? oder Java? Also wie ihr sieht, einerseits ist die Microcontroller Welt, andereseits ist die Steuerung und GUI Programmierung! Was benutzt ihr konkret? Vielen Dank für jeden Tips .
@Picler scheint so zu sein mit der Trennung. Der zahlende Privatkunde scheint bei TI trotz allen Beteuerungen sich gegenüber "Amateuren öffnen zu wollen"(siehe z.B. LaunchPad Wiki etc.) immer noch so eine Art notwendiges Übel zu sein. Kommt zumindest so rüber, wenn die tatsächlich LaunchPads kostenlos und gleich Kistenweise an Industriekunden verteilen sollten. @m.Kai Sachte, sachte. Fang erstmal klein an, bevor du solch recht große Projekte stemmen möchtest. So wie du dir es denkst funktioniert das nicht. Ich neige sogar dazu dir zu Prophezeien, dass du dieses Projekt "Alarmanlage" nie durchführen wirst und irgendwann ein Fertigprodukt käufst. Die Planlosigkeit die du an den Tag legst und die überschwengliche Ambitioniertheit des Projektvorhabens lässt dies leider vermuten. Deine willkürliche Literaturauswahl stützt diese Vermutung zusätzlich. Wenn du es aber wirklich ernst meinst. Dann bring dir erstmal C Grundlagen bei. So ganz abseits aller Mikrocontroller und GUIs. Wenn die da sind, kann man weiter denken und sich mit GUIs beschäftigen usw. usf.
Vielleicht hast Du ja auch Lust mit meinem kostenlosen Video-Kurs anzufangen. http://ET-Tutorials.de/Mikrocontroller
@ Wolfgang Bengfort : vielen Dank . Ich habe mich abonniert und fange an direkt die ersten Lektionen zu lesen. Und danke an alle, die auch Kritik geübt haben. Ja es ist Hart aber wahr! wenn man aber keine Ahnung hat, man versucht vieles zu probieren. Oft bringt das nicht! und das ist der Fall bei mir. Jetzt habe ich mich für C entschieden und werde alles über C lernen und erfahren. Mit der Zeit weiss ich vielleicht welche Microcontroller für meine Bedürfnisse passt. Ich habe nur von anderen Erfahrenen User gesagt bekommen : 1-Fang bloß nicht mit 8051er und Assembler an! das ist grausam. 2-Ein Freund von mir : Ich arbeite mit PICs, weil sie in der Industrie oft eingesetzt werden und man hat keine Lieferungsprobleme beim Hersteller. 3-Ein Freund : Ja ich habe mit Atmega angefangen(Atmega8), aber du kannst nehmen was du halt magst! 4-Noch ein Freund, der sich diplomatisch ausgedruckt hat : im Prinzip sind alle Microcontroller gleich ( vom Prinzip her), such dir ein MicroController, der dein Projekt mit minimalen Aufwand löst und der viele Schnittstelle und Features bietet!! versteht ihr jetzt meine Problematik? ich habe keine klare Ansage bekommen nach dem Motto : Arbeiten Sie damit und schluß!! dann hätte ich mich in einem bestimmten Thema eingearbeitet und wäre ich glücklicher damit. Ich fühle mich einfach allein in dieser MicroController Welt gelassen und nach Dem Motto : Alle wege führen nach ROM!!
Mein Tipp an dich: Nimm dir einen Atmega8 mit einem EVAL-Board. Dort fängst du mit den einfachsten Dingen wie LED ein/aus, Interrupt, Timer oder UART an. Mach am besten die Tutorials die du hier findest durch. Die Sachen die du mit dem AVR lernst kannst du, wenn du eventuell später auf PIC umsteigst, wiederverwenden.
@ Max Headroom : kannst du mir ein Eval-Board empfehlen? ich habe eins von Mikroe gefunden : http://www.mikroe.com/eng/products/view/321/easyavr6-development-system/ Auch der ATmega8 wird unterstützt und andere AVR-MicroController. Der Preis ist ziemlich hoch! Ich bin bereit mein Eval-Board sogar als Kit zu kaufen und es selber zu löten. kennst du so ein Bausatz wo möglich LEDs, Schnittstelle usw drauf sind?
Hallo Kai, um Dir ein kleinen Überblick zu verschaffen, sollen einige Hinweise nur stichpunktartig wieder gegeben werden: - Persönliches Ziel: Hobby und/oder Beruf (Anforderungen an den MCU, siehe GUI, siehe Embedded OS) - Communitygröße (Support): Microship, Atmel, LPC, TI, NXP, STM, etc. - Verwendung von Libraries(vorhanden?): ja oder nein - Entwicklungssoftware: Compiler, Linker, Editor und Hardwareunterstützung: Programer bzw. Debugger, evt. MCUs (Library) - Wahl der Programer-Debugger-Hardware - fundierte C-Prorammierkenntnisse: Programmstruktur, Variablen, Operatoren (z.B. Bitmanipulation, u.v.), Funktionen, Strukturen, Speicherklassen (Register, static, etc.), Pointer und Ablaufsteurung http://www.tu-chemnitz.de/urz/kurse/unterlagen/C/index.htm - solide Grundkenntnisse in Analogtechnik und Digitaltechnik (berzüglich ihrer Anwendung): Bauteile: Kondensator (Filter,Stüzukondensatoren, etc.), Spulen, Widerstände, Dioden, Transistor (Beschaltung), Feldeffekttransistoren, Schaltungen, Spannungsregler aller Art, Relais (elektomagnetisches Feld zur Erzeugung einer Bewegung)... Digitaltechnik: Logik,Binär, Hex, etc. - Minimalwissen wie ein MCU funktioniert (Register,...) - Viel Motivation und Zeit mitbringen - Assembler-Programmierung dient nur dem Verständnis, wie ein MCU funktioniert; hat seinen Platz im Bereich der Echtzeitanwendung. Aufgrund der besseren Verständlichkei und Wartbarkeit des Codes (macht den größten Zeil der Arbeit aus) sowie hohe Sicherheitsanforderungen, z.B. im Bereich der Medizin- sowie Automobiltechnik (Programmiernormen IECxxx, MISRA), sind Projekte meist in C bzw. (advanced)embedded C++ geschrieben. ------------------------------------------------------------------------ --- MfG IsobarX
Hier eine kleine Übersicht: http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Fertige_Evaluations-Boards_und_Starterkits Ich habe mir das STK500 gekauft. Hat für den Anfang alles drauf was du brauchst. Ist halt nicht ganz billig aber mir war es Wert. Nachteil ist das noch immer eine RS232 Schnittstelle verbaut wird, statt USB zum Programmieren.
Also soooo wichtig is die Wahl der Prozessorfamilie nicht, wenn Du eh in C programmierst. (IMHO Assembler macht man heutzutage nur als Masochist, egal fuer welchen uC - fuer viele uCs gibt es grats-C-Compiler - oder fuer kleine, zeitkritische Routinen). Die Architektur ist dann sehr zweitrangig - darum muss sich der Compiler kuemmern. Ganz generell wuerde ich fuer den Einstieg eher einen 8-bit-Mikrocontroller empfehlen. Die sind tendenziell leichter ueberschaubar und bringen daher schnelleres Erfolgserlebnis. Wenn man spaeter wirklich mehr Rechenleistung braucht (das ist seltener als man glaubt), ist der Aufstieg zu 16- oder 32-Bit-Typen auch nicht so schwer. Schau auch, dass der uC in DIP-Packung erhaeltlich ist (da sieht z.B. die TI MSP430-Serie ganz schlecht aus). Zu PIC vs. Atmel kann ich nur sagen: Atmel ist in Westeuropa weiter verbreitet (vor allem im Hobbybereich), PIC dominiert ganz eindeutig hier in den USA (Atmel ist hier fast unbekannt und VIEL schwerer zu bekommen). Wenn Du also unbedingt Unterstuetzung auf Deutsch willst, ist Atmel eventuell besser. Wenn Du aber eh Englisch fliessend lesen kannst, gibt es fuer PIC mindestens(!) so viel Unterstuetzung und Literatur (oder eher mehr), auch fuer Hobby-Bastler. Die Atmel 8-Bitter sind mehr oder weniger gleich leistungsfaehig wie die PIC18-Serie (PIC16-Serie ist eher veraltet). Fuer beide gibt es Gratis-C-Compiler. Mircochip hat u.a. auch die dsPIC-Serie (16-bitter), die sind ganz schoen leistungsfaehig. Lass Dich nicht von den Taktfrequenzen verwirren - AVR barucht fuer (die meisten?) Befehle bloss einen Takt, PIC16F un 18F vier Takte, dafuer kann man letztere aber viel hoeher takten, damit gleicht sich auch der Unterschied weitgehend aus. Ich selber benutze hauptsaechlich PIC. Der PIC18F4520 (oder 18F2520) ist ein ziemlich gutes Einstiegsmodell. (Lass Dich nicht von den Unmengen an PIC-Modellen verwirren, viele sind bloss minimale Variationen; als Bastler, wo man bloss ein paar Stueck barucht, nimmt man dann meist einfach den besten einer Serie;). PIC18F4550 ist komplexer, aber sehr nett, weil er einen USB-Port bereits integriert hat. Wolfgang
@ IsobarX und MaxHeadroom : danke für die ausführliche Beschreibung. So was habe ich mir gewünscht. Eine grobe Übersicht damit ich Weiß was alles auf mich zukommt. Jetzt verstehe ich wie viel ich noch lernen muss und dass Microcontroller Lernen ist nicht mal eben so! aber ich frage mich: da brauche ich dann bestimmt 1Jahr oder mehr um mein Wissen in den oben beschriebenen Bereiche zu vertiefen. Das ist fast ein E-Technik Studium. Jetzt verstehe ich auch warum viele Anbieter Geld für ein Compiler verlangen! weil sie nämlich vieles als Librarys für den User geschrieben haben. Richtig? oder schreibt ihr wirklich alles allein? taugen dann die kostenlose GCC, AVR-Studio was? ich will halt momentan nur Geld für ein Eval-Board ausgeben. Ich muss auf jeden Fall dann ruhige Minute haben um ein die Zusammenhänge zwischen diesen Bereiche zu verstehen ( Microcontroller, Software, Digitaltechnik etc..) @ ISOBAR X : wobei ich immer noch nicht verstanden habe was das ganze mit Embedded C++ zu tun hat? Ich weiß nur dass man MicroController mit C oder Assembler programmiert werden. Die GUIs werden bei den meisten Firmen in der Industrie mit C++ programmiert. außer bei der reine Anwendungssoftware Firmen, die bevorzugen lieber Java, Visual Basic etc... Naja ich brauche dann viel Geduld, Kaffee, und Zeit. Respekt echt für alle, die sich mit dem Thema auskennen. das ist echt die Königsdisciplin! Ich bin weiterhin interessiert und dankbar für jeden Tipp, die ihr hier schreibt. Das wird bestimmt auch viele andere Anfänger helfen. Danke :-)
m.kai schrieb: Wenn ich nochmal meinen Senf dazugeben darf > alles auf mich zukommt. Jetzt verstehe ich wie viel ich noch lernen muss > und dass Microcontroller Lernen ist nicht mal eben so! Ich glaube herausgelesen zu haben, dass du auch bei C noch mit Neuland anfängst. In dem Fall würde ich dir raten, dieses Thema erst mal vorzuziehen. Besorg dir ein C-Buch und fang auf dem PC(!) an, deine ersten C Programm zu schreiben. Und wenn du dort dann ein wenig Sicherheit gewonnen hast, erst dann mach den Schritt zum µC. Für C-Programmierung auf dem PC findest du wesentlich besser geeignete Literatur, die dich an die Hand nimmt und dich Schritt für Schritt durch die C-Einstiegshürden führt. Wenn du dann auf einen µC wechselst, kommen dann auch noch die µC-spezifischen C-Hürden dazu. Aber da du dann schon auf einen einigermassen soliden C-Grundstock zurückblicken kannst, schreckt dich das dann viel weniger, als wie wenn du jetzt einen n-Fronten Krieg führst. Im Endeffekt bist du schneller unterwegs, auch wenn die ersten Erfolgserlebnisse auf dem µC erst mal auf sich warten lassen. > aber ich frage > mich: da brauche ich dann bestimmt 1Jahr oder mehr um mein Wissen in den > oben beschriebenen Bereiche zu vertiefen. Du beliebst zu scherzen. Nach 1 Jahr bist du bestenfalls fortgeschrittener Anfänger :-) Na, so krass ist es nicht. Aber die Lernkurve ist schon steil. 1 Jahr ist nicht viel Zeit. > Jetzt verstehe ich auch warum viele Anbieter Geld für ein Compiler > verlangen! weil sie nämlich vieles als Librarys für den User geschrieben > haben. Richtig? Du unterschätzt, wie viel Entwicklungszeit in die Entwicklung eines Compilers fliesst. Da kommen schnell mal ein paar zig Mannjahre zusammen. Die wollen bezahlt werden. Und natürlich auch das laufende Bug-fixing und die Weiterentwicklung. > oder schreibt ihr wirklich alles allein? In der µC-Szene, zumindest in der Größenklasse der µC von denen hier die Rede ist, wird eigentlich das meiste vom Anwendungsprogrammierer erledigt. Ist auch nicht weiter schwer, denn da kommen eher selten ausgefallene Dinge vor. Das meiste fällt in die Kategorie: Schnittstellen einlesen -> Daten bearbeiten -> auf Schnittstelle ausgeben. > taugen dann die kostenlose GCC, AVR-Studio was? natürlich > ich will halt momentan > nur Geld für ein Eval-Board ausgeben. > > Ich muss auf jeden Fall dann ruhige Minute haben um ein die > Zusammenhänge zwischen diesen Bereiche zu verstehen ( Microcontroller, > Software, Digitaltechnik etc..) Ich hab das Gefühl, du hast noch nicht so recht eine Vorstellung davon, was auf dich zukommt. Mit einer ruhigen Minute ist es nicht getan. > @ ISOBAR X : wobei ich immer noch nicht verstanden habe was das ganze > mit Embedded C++ zu tun hat? Ist auch nur eine Programmiersprache. Allerdings sind wir dann schon bei etwas leistungsfähigeren Prozessoren auf denen dann auch schon mal ein kleines Betriebssystem läuft. > Ich weiß nur dass man MicroController mit C oder Assembler programmiert > werden. Die GUIs werden bei den meisten Firmen in der Industrie mit C++ > programmiert. Kann sein. Muss nicht sein. C, C++, .... sind alles nur Programmiersprachen. Werkzeuge. > Respekt echt für alle, die sich mit dem Thema auskennen. das ist > echt die Königsdisciplin! Übertreib nicht. Bis zu einem gewissen Level können das fast alle lernen. Manche kommen über diesen Level nie hinaus und mache schaffen auch diesen Mindestlevel nicht. Aber der Großteil packt das schon. Allerdings: Geschenkt wird einem nichts. Die Frusttoleranz sei besser sehr hoch. Dafür sind aber auch die Erfolgserlebnisse umso schöner. Du siehst dann plötzlich die popelig vor sich hinblinkende LED auf dem DVD-Player mit ganz anderen Augen.
hallo nochmal. Ich habe ein Kurs bei der VHS gefunden, was c++ angeht. Ich bin am überlegen ob ich so ein Kurs buche oder ob ihr sehr gute Bücher über C und C++ kennt. https://dienste1.stadt-koeln.de/vhs/index.php?page=Kursinfo&kc=151083
m.Kai schrieb: > hallo nochmal. > > Ich habe ein Kurs bei der VHS gefunden, was c++ angeht. > Ich bin am überlegen ob ich so ein Kurs buche oder ob ihr sehr gute > Bücher über C und C++ kennt. > > https://dienste1.stadt-koeln.de/vhs/index.php?page=Kursinfo&kc=151083 Da ich selbst Einsteigerkurse gehalten habe: Dieser Inhalt > Variablentypen, Speicherklassen, Zeiger, Referenzen, Funktionen, > Verzwei-gungen, Logische Operatoren, Schleifen, Fallunterscheidung, > Arrays, Strukturen, Klassen, Zugriffsrechte, Konstruktoren, > Destruktoren, Objektorientierte Programmierung, Vererbung, Polymorphie, > Abstraktion, C-Strings, Dynamische Speicherverwaltung. in 5 Tagen. Das ist völlig unmöglich. Mach eher 5 Monate draus, bis der Großteil dieser Inhalte sicher sitzt. Für einige wie zb. Objektorientierte Programmierung, Vererbung, Polymorphie, Abstraktion sind eher Jahre angesagt, bis das alles sicher sitzt und du in der praktischen Anwendung nicht mehr allzuviele Böcke schiesst. Alleine über das Zusammenspiel "Konstruktoren, Destruktoren, Dynamische Speicherverwaltung" kann ich dir einen 7-Tage Kurs machen, bei dem du nachher ob der Informationsfülle mit den Ohren schlackerst. Und da setzt ich aber gute C++ Kentnisse voraus. Spar dir das Geld für den Kurs und kauf dir lieber einen Stroustroup im Buchhandel. Um das Geld kannst du dir 3 oder 4 Bücher kaufen und beim jeweiligen Thema dann eine 2te, 3te oder gar 4te Meinung einholen und nachlesen, was ein anderer Autor zum selben Thema zu sagen weiß.
Picler schrieb: > Privat scheint es etwas schleppend zu laufen. Nee wirklich? Lieferzeit für meine erste und letzte TI Bestellung 11 Monate. Ich hatte privat eine ez430 Chronos bestellt.
Hallo! Ich bin auch erst vor kurzem angefangen, mich privat für Microkontroller zu interessieren. Eigentlich vor allem, weil ich neue Herausforderungen gesucht hab, also nur aus Spaß an der Freude. Allerdings muss ich sagen, dass ich Programmierer von Beruf bin, allerdings auf dem PC und nicht mit Assembler oder C. Beides kannte ich also noch nicht (bzw. nur sehr rudimentär). Ich arbeite beruflich vor allem mit (im Moment) Delphi, hab aber früher auch schon mit anderen Sprachen gearbeitet (VB, 4GL, etc.) Viele haben hier empfohlen, mit C statt mit Assembler anzufagen. Ich habe mich genau zu der anderen Richtung entschieden. Obwohl für mich klar war, dass ich mit C arbeiten möchte, hab ich erst mal das Tutorial hier auf diese Homepage durchgearbeitet, das in ASM geschrieben ist. Einfach aus dem Grund, um zu verstehen, wie der µC funktioniert. Und das hilft mir auch, C-Beispiele besser zu verstehen, weil ich weiß "was dahinter steckt". Ich hab mir als Einstiegsprojekt übrigens einen Boardcomputer für mein Motorrad ausgesucht. Und ich bin auch guter Dinge, dass ich in diesem Winter eine vorzeigbare Version hinbekomme, da meine Teilkomponenten schon funktionieren. Dabei hab ich meine Aufgabe in Teilbereiche zerlegt: - Abfrage von Tastern -> klappt - Displaysteuerung -> klappt - Abfrage der ADC-Ports -> klappt - Umwandlung Drehzahl in Spannung -> klappt Ich muss die Teilaufgaben also nur noch zusammenbringen. Ich finde immer, wenn man sich in sowas einarbeitet, muss man sich kleine (Zwischen-) Ziele setzen, dann hat man mehr Erfolgsmomente. Und das würde ich Dir bei Deiner Alarmanlage auch raten. Erwarte nicht sofort in 2 Tagen ein fertiges perfektes Gerät. Jens
Wichtige Kriterien wären für mich als Hobbyist 1. Wo bekomme ich die µC her? Preiswert um die Ecke oder wenigstens in einem Shop aus meinem Heimatland oder mit langen Lieferzeiten und -kosten aus Übersee. Neben dem Chip selbst, auch die Software (Toolchain) betrachten. Gibt es da was in Open Source, als Studentenversion o.ä. oder nur sauteures? 2. Wie komme ich mit der Doku zurecht? Jeder µC Hersteller hat seinen eigenen Schreibstil. Der liegt einem mehr weniger. Dank Internet kann man sich vorher bei den meisten µC Herstellern die Datenblätter durchlesen. 3. Wer hilft mir? Was Karl heinz schon zur Community geschrieben hat. Das kann man noch auf Projektseiten/Sammlungen/Wikis/Tutorials erweitern.
Karl heinz Buchegger schrieb: > Du > siehst dann plötzlich die popelig vor sich hinblinkende LED auf dem > DVD-Player mit ganz anderen Augen. Stimmt. Wenn man erstmal weiß, wie es richtig geht, ärgert man sich oft, wie stümperhaft manche kommerziellen Geräte programmiert sind. Z.B. der Drehgeber bei meiner Kaffemaschine prellt jeden Tag mehr, schnelle Drehungen erkennt die Software garnicht mehr. Ich bin schwer am überlegen, nen ATtiny13 zwischen zu schalten, der dann richtig entprellt und die Signale wieder ausgibt. Peter
Obwohl ich mich für C entschieden habe, lese ich oft die Verwendung von C++ für leistungsfähigen Mikrocontroller oder GUI-Programmierung. viele behaupten dass C++ sehr schwer zu erlernen. Kann man C++ mit Visual C# vergleichen? gibt es Visual C++ eigentlich? Ab wann nutzt man solche Programmiersprache? Bei mir macht noch kein Klick was diese Programmierung angeht!! Deshalb beschränke ich mich auf C für MicroController und was später GUI-Programmierung betrifft ist ungewiss :-( Ich wünsche mir eigentlich kein Tutorial über C oder Assembler, sondern ein Übersicht wofür und wann ich eine Programmiersprache benutze, wo sind die Stärken und Schwäschen. Konkret zu meinem Projekt "Alarm-Anlage" : ich will schon irgendwann mal die Alarm über GSm oder Internet ein und ausschalten. Ein App fürs Handy wäre auch nicht schlecht, aber das sind viele Punkten,die ich abarbeiten muss! Vielleicht habe ich ein großes Ziel gesetzt ? :-( Ein Freund meint : wenn Sie über TCp-IP was steuern müssen, vergessen Sie schonmal Visual Basic 6!! mmhh ok kann C++ das? oder C#? muss ich Java fürs handy noch lernen?? Man man man, warum gibt kein Buch wo ein Projekt von A bis z beschrieben und realisiert ist? wer kann mein Projekt in eine logische Reihenfolge sortieren? Ziel : Alarm Anlage einbauen und dies über TCP-IP steuern. Ziel 1 : Controller suchen : Atmega8,16,32 oder PIC? Ziel 2 : Programmiersprache : C und kein Assembler Ziel 3 : welche Bibliotheken und Entwicklungsumgebung??? mmhh keine Ahnung!! AVR-Studio, AVR-Workpad, Gcc-win??? Ziel 4: Die Schaltung und Relais-Platine einbauen : OK das ist Elektronik, und kriege ich hin . Ziel 5: Die Relais und Eingänge über Internet abfragen und steuern : mmmhh?? HTML, C++, Visual C# ??? muss ich hier schon ein GUI-Programmieren? Ziel 6 : ein App entwickeln und die Software über Smartphone steuern! Android,iPhone?? etc... was schlägt ihr vor? habe ich was vergessen? wäre das die logische reihenfolge für mein Projekt Besten Dank für alle, die hier ausführliche Infos schreiben und Geduld haben mir mehr Licht in dunkel zu schenken. WEIL ICH MOMENTAN EHER MEHR DUNKEL IM LICHT SEHE :-(
Wenn du nur das eine Projekt realisieren willst, bezahl jemanden der das für dich macht. Ansonsten ist das meiner Meinung nach verschwendete Zeit. Falls nicht, wurde alles andere bzw die Reihenfolge hier schon erwähnt.
Warum Zeitverschwendung? verstehe ich nicht! muss man sich nur mit einer Sache beschränken? Ich will auch keinem bezahlen und habe ganz brav mit C angefangen. Naja danke .. ich werde nicht aufgeben und weiter machen.
m.kai schrieb: > Warum Zeitverschwendung? verstehe ich nicht! muss man sich nur mit einer > Sache beschränken? Ich will auch keinem bezahlen und habe ganz brav mit > C angefangen. Naja danke .. ich werde nicht aufgeben und weiter machen. Fang erst mal einfach nur an. Und zwar am Anfang. Und deine Alarmanlage. Stell sie zurück, bis du die Grundlagen intus hast. Sonst hat das nänmlich keinen Sinn. Dein Weg ist lang bis dorthin. Und genau deswegen meint Bastian auch: such dir jemanden. Wenn es dir nur darum geht eine Alarmanlage zu bauen, dann ist das overkill. Du musst viel lernen, viele Vorstudien machen, viel lesen und noch mehr üben üben üben, ehe du auch nur in die Nähe kommst deine Alarmanlage wie angedacht zu programmieren.
Karl heinz Buchegger schrieb: > m.kai schrieb: >> Warum Zeitverschwendung? verstehe ich nicht! muss man sich nur mit einer >> Sache beschränken? Ich will auch keinem bezahlen und habe ganz brav mit >> C angefangen. Naja danke .. ich werde nicht aufgeben und weiter machen. > > Fang erst mal einfach nur an. > Und zwar am Anfang. Muss ich zustimmen, was Du Dir vornimmst ist fuer den "Direkteinstieg" zu viel. Ich hab auch etliche Monate gebraucht, bis ich sinnvolle Projekte angehen konnte -- und ich hab mich rangehalten an die Materie. Vor allem wenn Du noch nicht einmal C kannst(?) hast und auch sonst wenig Programmiererfahrung hatte ich Dir sicherlich einiges voraus. Greets, Michael
Hi Ich hab zwar nicht alles gelesen, aber allgemein scheint es dir u.a. um Hinweise zu Programmiersprachen zu gehen. Dein Projekt, eine Alarmanlage ? Warum nicht. So lernst du es gleich mit der Analyse zu beginnen: "Was soll sie können." Erst danach ist doch die Frage nach: "Wie setze ich das um". Und nun sind wir bei µC und deren Programmierung. Also, hier mal einen Tip: warum nicht in den Tutorials lesen. Ich hab auch damit angefangen und muß sagen, sie sind gut. So lernst du den Einstieg. Und die Sprache? Es ist eigentlich egal auf welcher Ebene du anfängst, aber meine Meinung ist: "beginne mit Assembler im Bereich der Controller und mit einer Hochsprache wie Delphi, C++ oder Visual Basic bei PC-Programmen". Warum? Nun, bei einem PC machst du keine Hardware und bei Controllern keine Datenbank. Die Eigenheiten der Systeme wirt du dann wiederfinden, wenn du deine ersten Programme ausprobierst. Wenn im PC die Formel x= (1/(a/(C-B)))-y überhaupt keine Probleme bereitet, kann die gleiche Anweisung in BASCOM z. B. durchaus Schwierigkeiten machen. Zumindest bin ich bei ähnlichen Formeln jedesmal hängengeblieben und mußte ein par Klimmzüge einbauen. Dies ist für mich auch ein Grund, niht unbedingt einem µC mathematische Höchstleistungen abzufordern. Aber als Schnittstelle zur Außenwelt leistet er gute Arbeit. Oft besteht der Wunsch, mit einem PC irgendwas ein- oder auszuschalten, zu überwachen und zu protokollieren. Die notwendige Information einzulesen, da ist wiederum der Controller ideal. Er bedient die Hardware und kommuniziert mit übergeordneten Systemen. Also, wirf nicht die Programmierung von PC's und µC's durcheinander. Es sind völlig unterschiedliche Systeme mit entsprechenden Anforderungen an den Programmierer. Hier geht nix schnell, hier mußt du sehr viel lernen und verstehen, wie Programme arbeiten. 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.