Hallo, Ich habe folgendes vor: Ich möchte wieder ein wenig mit meinen ATmega's 16/32 spielen. Dies habe ich vor Jahren schon in der Schule gemacht, immer in ASM. Sonst habe ich auch schon mal ein wenig in php gescriptet oder HTML und für die Schule natürlich VB und VBA. Jetzt meine Frage: welche Programmiersprache würdet ihr mir empfehlen für die uC's??? Wieder die ASM-Plagerei oder doch lieber Basic per Bascom, oder gar direkt ein C-Compiler?? C kann ich zwar nicht, aber ich denke, so lange wie ich nicht mehr programmiert habe, kann ich auch kein ASM oder VB mehr... Ich möchte einen analogen Eingang nutzen und einen LCD ansteuern. Zumindest vorerst... Das soll natürlich nicht das einzige Projekt sein... mfG Roy
Meine Empfehlung bei solchen Fragen: mit Assembler eine LED zum Blinken bekommen, dabei einen Timer verwenden, diese LED mit einem Taster (entprellt) ein- und ausschalten (ein-blinken-aus). Da bekommst Du ein Gefuehl, was da eigentlich ablaeuft. Fuer weitergehende Dinge dann C. wendelsberg
Möchtest du ein schnelles Ergebnis wo dich der Hintergrund nicht juckt, dann Arduino als Hardware und C als Programmiersprache. Möchtest du ein ambitionierter Hobbyentwickler sein, dann der nackte Atmel und C als Programmiersprache. Möchtest du studieren (E-Technik, Informatik) dann KANNST du in Assembler schauen, MUSST es aber nicht. Ich bin mit meinem E-Technik Studium fast fertig und habe Assembler nur in der Theorie gelernt, es aber nie benutzt, obwohl ich sehr viel programmiert habe. Mittlerweile haben die Controller so viel Rechenpower, da lohnt sich Assembler meiner Meinung nach nicht mehr zu lernen. Alles was trotzdem sehr schnell sein muss habe ich mit FPGA + VHDL gelöst. Ist natürlich auch eine Kostenfrage. Assembler war ganz okay um zu lernen wie man mit Speicher umgeht. Das konnte uns aber der Prof. anhand von C/C++ auch gut erklären. Grüße
:
Bearbeitet durch User
Lerne die Sprache, die der Controller spricht... Assembler...
Hallo, Danke für die schnellen und vielen Antworten. Ich konnte ja bereits ASM, VB, VBA, PHP und HTML. Also ich bin kein blanker Neuling. Ich habe das alles in der Schule benutzt als ich meinen Techniker in der Kommunikationselektronik gemacht habe. Ich wollte jetzt lediglich wissen was ihr empfehlen könnt. Für die Hardware wird erstmals NUR ATmega benutzt. Und es ist ja nur Spasseshalber also muss es auch nicht schrecklich schnell gehen, aber mal ehrlich, wer kann den schon lange darauf warten das fertige Projekt zu sehen? :-P Wenn ich C ausprobieren will, welchen Compiler kann man da empfehlen und gibt es evtl. einen Freeware-C-Compiler? mfG Roy
Roy T. schrieb: > Wenn ich C ausprobieren will, welchen Compiler kann man da empfehlen und > gibt es evtl. einen Freeware-C-Compiler? http://www.mikrocontroller.net/articles/AVR-GCC wendelsberg
guest schrieb: > Lerne die Sprache, die der Controller spricht... Assembler... Der Controller spricht nicht, schon gar nicht Assembler. Der Controller versteht nur binäre Daten, und da ist es egal, ob der Ursprung Assembler oder C oder Basic war.
Ich will Erfolge sehen und "C" verstehen. Habe dort 2 MEGA2560 und andere Sachen drauf auf meinem Bastelbrett. Arduino-IDE und es geht ab, auch mit eigenen Headern kann man es erweitern und ist nicht nur auf das Gelieferte angewiesen. Gruss
Genau, Luna wollte ich auch gerade schreiben. Es gibt auch PASCAL für Atmega's, eine sehr saubere Sache. Dann ist da noch BASCOM. Hat Ähnlichkeiten mit Java und Standard Basic. Erlaubt aber auch jeden Registerzugriff, hat keinen Nachteil gegenüber C.
Thomas P. schrieb: > Möchtest du ein schnelles Ergebnis wo dich der Hintergrund nicht juckt, > dann Arduino als Hardware und C als Programmiersprache. > > Möchtest du ein ambitionierter Hobbyentwickler sein, dann der nackte > Atmel und C als Programmiersprache. > Warum immer so schwarz/weiß? Was spricht dagegen ein Arduino Board mit z. B. Atmel Studio zu verwenden?
:
Bearbeitet durch User
Joe schrieb: > Dann ist da noch BASCOM. > ... hat keinen Nachteil gegenüber C. Das ist mir neu, obwohl es für kleinere Dinge eine Alternative wäre.
Sauber! Full ACK, endlich mal einer der es ausspricht! Danke an c-hater! :)
c-hater schrieb im Beitrag #4501163: > Spannend wird es dann, wenn die Komplexität der Anwendung soweit steigt, > dass der Kram mit prozeduralen Mitteln allein nur noch schwer > beherrschbar ist. Spätestens dann ist der Umstieg auf das OO-Paradigma > angesagt. Das würde ich mal in Frage stellen. Soll das Ironie sein? c-hater schrieb im Beitrag #4501163: > C++ ist die OO-Sprache, die den meisten Fleiss erfordert, > weil sie nicht nur all den unsäglichen Scheiss von C mitschleppt, > sondern noch einiges drauf setzt... ... nämlich zu allererst den ganzen OO-Müll inkl. einer Runtime und einem komplett verkrüppelten Exception-Management. Thomas P. schrieb: > C Dem schließe ich mich mal an :p Ich finde es aber auch schon ziemlich sinnvoll wenigstens mal die Grundzüge von Assembler zu lernen und wie hier auch schon erwähnt, mal eine LED zum blinken zu bringen. Ohne C, ohne C++ und ja bitte erst recht ohne BASCOM. Hier gab es mal einen Thread da hat der Lothar das mal aufskizziert wie das aussehen kann: Beitrag "Re: ARM Cortex gegen AVR"
Black J. schrieb: > Thomas P. schrieb: >> Möchtest du ein schnelles Ergebnis wo dich der Hintergrund nicht juckt, >> dann Arduino als Hardware und C als Programmiersprache. >> >> Möchtest du ein ambitionierter Hobbyentwickler sein, dann der nackte >> Atmel und C als Programmiersprache. >> > > Warum immer so schwarz/weiß? Was spricht dagegen ein Arduino Board mit > z. B. Atmel Studio zu verwenden? Lies dir nochmal durch, was wenige Zeilen weiter oben steht: > Thomas P. schrieb: >> Möchtest du ein schnelles Ergebnis wo dich der Hintergrund nicht juckt, >> dann Arduino als Hardware und C als Programmiersprache.
?!? schrieb: > Lies dir nochmal durch, was wenige Zeilen weiter oben steht: Das gilt auch für dich ;) Ich habe nur geschrieben, dass man Arduino Board auch ohne Arduino IDE nutzen kann, weil es im Grunde nur eine Grundschaltung mit einem Atmega Chip ist (+ Bootloader) ist. Vor allem, wenn man keine Lust hat, die eigene Platine zu ätzen.
Zu aufgeblasen in der iDE , nur für größere Projekte geeignet, schwer erlernbar: ------------------------ ...Atmel Studio ------------------------- Für diesen Mann nicht geeignet: ----------------------------------------------- ....Ich möchte wieder ein wenig mit meinen ATmega's 16/32 spielen. ----------------------------------------------- Merke: ....ein wenig....
Hallo, Danke für die Antworten. Ich werde es also mit C versuchen. Ich habe nun WinAVR installiert und werde mir das mal ansehen... Erkennt WinAVR auch das alte STK500 von Atmel, oder muss ich zum übertragen auf den mega16/32 noch eine Soft von Atmel nehmen? mfG Roy
Hallo, Ich habe nun ein wenig rumprobiert in ASM so gut wie in C. Ich habe AS4 und AS6.2 mit meinem STK500. Mit AS4 schaffe ich es zumindest mal den ASM-Code auf den mega16 zu bekommen. Aber den C-Code bekomme ich weder mit AS4 noch mit AS6.2 drauf. Irgendwie scheine ich da was falsch zu machen. Ich habe nun auch WinAVR ausprobiert und da klappt es auch nicht auf Anhieb :-( Da jedoch der ASM-Code mit AS4 funktioniert hat, liegt es ja wohl eher nicht am STK500, dem uC oder der Software... Gibt es denn da kein Entwicklertool das alles macht? Also wo man den Code schreibt, dann auf einen Button drückt und das Tool compiliert und erstellt alle Dateien die man braucht?? Mit AS4 (irgendwie übersichtlicher und viel einfacher als AS6.2) habe ich zumindest eine Konkrete Fehlermeldung beim "Make" bekommen. Ich habe zwar das Make per Kommandozeile von Windows ausgeführt, aber zumindest kam ne Fehlermeldung... Und zwar vermisst er eine .o Datei. Was genau habe ich vergessen zu machen? Und wie bereits gefragt, geht das nicht simpler?? mfG Roy
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.