Hallo ich habe schon einige einfache Programme in (mit ?) Bascom geschrieben, und kenne mich mit der Hardwareseite der AVR's recht gut aus, auch mit den Begriffen Register Variablen usw. und den lesen der AVR Datenblätter bin ich vertraut. Diese Grundlagen habe ich mir mit den wirklich guten "AVR Mikrocontroller Lehrbuch" der Homepage von Gerold http://halvar.at/ und einigen anderen Seiten beigebracht und natürlich durch Beispiele von fertigen Anwendungen / Programmen. Nun möchte ich aber doch gerne in C Programmieren lernen (die AVR Controller ), habe aber noch "Null Ahnung" bezüglich der Programmiersprache C. Ich habe mir natürlich das GCC Tutorial angesehen, wirklich gut vertändlich, aber wie dort beschrieben werden C Kenntnisse vorausgesetzt. Diese versuche ich mir mit den C-Kurs http://www.peacesoftware.de/ckurs.html beizubringen. Eigentlich nicht besonders schwer zu verstehen und auch anschaulich und gut verständlich beschrieben, aber halt auf dem Computer bezogen (wie alle C-Kurse die ich bisher im Netz oder auch in Büchern finden konnte). Gibt es keinen "absolut Beginner" C Kurs der gleich in Richtung AVR (und damit auch GCC) aufbaut ? Wobei der ganze "Hardwarekram" und die Grundlagen wie der AVR Mikrokontroller funktioniert als bekannt vorausgesetzt werden soll. Es geht auch "so" aber würde das gezielte Lernen (nicht nur mir ?) doch deutlich einfacher machen da es ja einige Besonderheiten bei der Mikrocontrollerprogrammierung gibt (z.B. Variablentypen bzw. Bezeichnung andere Headerfiles usw.) Es ist überigens kein Problem wenn der Kurs in englisch sein sollte. AVR Studio in Verbindung mit den STK 500 Board habe ich erfolgreich in Einsatz und fertige C-Programme auch erfolgreich gebrannt (und die Hex Files compilieren lassen). MFG C-Beginner
Empfehlung: Steinigt mich und lern bitte zunächst Grundlagen in Assembler. Wenn du dich tatsächlich mit der Hardware vertraut gemacht hast, ist das kein Problem für dich und du siehst, was und warum und wieso in C geht, schnell ist oder eben auch nicht. Nicht jeder Dreizeiler in C ist auf dem AVR auch 'günstig', in jeder Hinsicht.
Lass das mit dem Multiposting (Erklärung siehe Wikipedia), so etwas gehört sich nicht. Beitrag "C lernen wie am besten für AVR ?" C-Beginner schrieb: > habe aber noch "Null Ahnung" bezüglich der > Programmiersprache C. Durchsuche mal das Forum hier, da gab es schon sehr viele Threads zu, die meisten sind der Meinung, dass du erst C auf dem PC lernen solltest...
Sven P. schrieb: > Empfehlung: Steinigt mich Kannste haben. Warum sollte jemand, der C lernen und darin AVRs programmieren möchte, erst Assembler lernen? Das ist völlig sinnlos. Sven P. schrieb: > und du siehst, was und warum und > wieso in C geht, schnell ist oder eben auch nicht. Was man vor allem sehen würde, ist, das eigentlich alles, was der C-Compiler so macht, schnell genug ist. Wenn es dann irgendwann mal auf ein Byte Flash oder einen TaktzZyklus mehr oder weniger ankommen sollte, und sich das weder durch effizientere C-Programmierung, noch durch einen dickeren AVR, noch durch einen schnelleren Quarz erschlagen lässt, kann man immer noch mal ein paar Assemblerbefehle ansehen. Wie schon gesagt wurde, die Grundlagen von C lernt man am einfachsten am PC. Der Umstieg auf den AVR ist dann mit Hilfe des AVR-gcc-Tutorials nicht weiter schwierig. Oliver
Vielen Dank für die Info also "auf die harte Tour" - habe ich mir fast gedacht. Na dann werde ich so weiter machen wie ich jetzt angefangen habe. Denke das ich das meiste sowieso aus Beispielen herausholen werden (wie schon bei Bascom). Entschuldigung wegen des "Doppelpostings" aber nach mehreren Minuten Wartezeit kahm hier nach dem Absenden die Meldung das der Server nicht erichbar ist (wohl eine Falschmeldung). Insgesamt ist www.mikrocontroller.net (Forum)recht langsam im Seitenaufbau was man bei längeren Threads gut sieht (einige Bilder und etwas Text sollte doch etwas schneller gehen) aber das wird durch die "Mega-Schnelle" Reaktion auf Fragen durch die Nutzer mehr als ausgeglichen -Danke an alle -. MFG C-Beginner
Oliver schrieb: > Wie schon gesagt wurde, die Grundlagen von C lernt man am einfachsten am > PC. Das wäre auch meine Empfehlung. Wenn man dafür den GCC benutzt, hat man schon mal den gleichen Compiler, aber halt etwas mehr Komfort für die ersten Schritte (es gibt bereits einen Eingabe- und zwei Ausgabekanäle, es debuggt sich leichter). p.s.: Trau keinem Tutorial über den Weg, welches dir erklärt, dass C++ nur das "modernere C" sei. Auch, wenn sich ein C-Programm immer so schreiben lässt, dass es auch gleichzeitig ein gültiges C++-Programm ist, beide Sprachen sind verschieden und haben jeweils ihr Aufgaben- feld. Das soll natürlich nicht heißen, dass man C++ nicht auch auf einem AVR machen könnte, aber es ist gerade für einen Anfänger dann noch eine Runde komplexer, die Zusammenhänge zu verstehen.
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.