Majestix hat geschrieben:Die Programmierung von Microchip-Microcontrollern ist in der Tat nicht so einfach, wie die Programmierung bspw. im Arduino-Umfeld. Die Entwicklungsumgebung und das Programmiergerät (In-Curcuit-Debugger) kosten etwas mehr.
Bei Microchip weiß ich es nicht, aber bei ARM in der Firma kosten die IC-Debugger, die von den entsprechenden Programmierern als sinnvoll angesehen werden, schon sehr viel. Auf jeden Fall zuviel für einen Hobbybastler. Ich hab sogar mal einen PIC benutzt vor Jahren - 16F84. Dann die AVRs direkt mit Programmer und einigen eigenen Libs. Allerdings ist der Aufwand beträchtlich höher, wohingegen Arduino einem die Sache (gerade bei LIBs) sehr erleichtert.
Mir macht es jedenfalls Spaß auf der Bitebene dem IC eine von mir gewünschte Funktionalität abzuringen. Im Arduino-Umfeld arbeitet man eher auf einer Meta-Ebene und muss sich so mit manchen Einschränkungen abfinden. Bei zeitkritischen Anwendungen kommt man hier schnell an seine Grenzen.
Meta-Ebene paßt hier nicht so. Es ist immer noch C(++) Code und man kann auch auf ASM zurückgehen. Nur braucht man sich um den Startup nicht kümmern und hat z.B. für PIN IO Funktionen, die das ganze etwas einfacher machen. Natürlich kostet das ein wenig Zeit. Dafür kann man flexibel auf einen anderen Prozessor wechseln ohne erst haufenweise Bitmasken ändern zu müssen oder gänzlich andere Zugriffe für die Pin Steuerung zu benötigen.
Für die meisten Aufgaben (zumindest, die die ich mir privat vornehme) spielt Highspeed keine Rolle. Es kommt eben immer auf die Anforderungen an. Beruflich habe ich mal einen ARM Startupcode programmieren müssen (in ASM), bei dem Cyklenzählen, Taktswitchen u.ä. nötig waren um die letzten paar usec rauszuholen. Sowas ist halt weit entfernt von Arduino. Dort kann man dafür ein Board (das man überall billig bekommt) einfach an USB anschliessen, lädt die IDE, ein paar Bibliotheken für Sensoren und ist schon fast fertig.
RK