Ich habe gerade gesehen, dass im Assembler Tutorium LCD Routinen in C eingefügt wurden. Ich finde es natürlich gut, wenn meherer Leute am Tutorium mitarbeiten, jedoch sollte schon ein bischen auf Zusammenhänge geachtet werden. Das Assembler Tutorium ist ausdrücklich ein Tutorium für Assembler und nicht für C. Für C gibt es das C-Tutorium und dort gehören diese Funktionen auch hin!
Mea Culpa - Ich habe es verbrochen! Warum? Zu der damaligen Zeit gab es kein LCD Abschnitt im C Tutorial, aber es gab viele Anfragen im Forum, davon hatten einige die Probleme mit dem ASM Code und fragten nach C Code. Statt den guten, ausführlichen LCD Basisteil (Controller, Funktionen, Portleitungen...) aus dem AVR Tutorial 1:1 zu kopieren und damit eine 2. Baustelle aufzumachen, die auch gewartet werden will, hatte ich mich damals entschlossen, eine simple 1:1 Umsetzung ASM => C einzufügen. Ich gebe zu, dass ich den kleinen Hintergedanken hatte, den ASMlern die Furcht vor C und umgekehrt zu nehmen und einen weiteren Lerneffekt anzubieten ;-) Im Laufe der Zeit haben weitere Mitarbeiter im Wiki den C-Teil ergänzt und auch mit Makros portabler geschrieben. Möglicherweise ist dadurch die Ursprungsidee (Basiswissen + einfache Implementierungen) ausgeufert. Mit der Verschiebung in das C-Tutorial kann ich auch leben. Ich fände es schön, wenn "meine" Arbeit nicht ganz verloren wäre und z.B. im ASM-Tutorial ein Hinweis (Verlinkung) ala "Und so sähe es in C aus..." stehen würde.
Bitte unbedingt so lassen! Ich fand das Assembler-lernen viel leichter wenn man ein 1:1 Beispiel hat! Vor allem für mich als Umsteiger war das alles so viel leichter. Danke dir Stefan B.!
Warum nicht gleich die AVR-Tutorien zusammenschmeißen? - Beschreibung der Problemstellung bzw. Aufgabe - Realisierung in Worten und Zeichnungen für den Bastler - Realisierung in Formeln und Algorithmen für den Theoretiker - Realisierung in Assembler - Realisierung in C - Realisierung in Pascal - Realisierung in BASCOM ;-) ...
Das wäre gar nicht so schlecht, die Beispiele parallel in C und Assembler vorzustellen. Bei den meisten Themen geht es ja um den Controller, nicht um spezielle Assemblereigenheiten. Was meint Karl Heinz?
Da trollt man (ich) nun mal rum... Und dann?? Ich hatte das eigentlich als Provokation geschrieben, aber da ist wirklich was dran... ...
Andreas Schwarz wrote: > Das wäre gar nicht so schlecht, die Beispiele parallel in C und > Assembler vorzustellen. Bei den meisten Themen geht es ja um den > Controller, nicht um spezielle Assemblereigenheiten. Was meint Karl > Heinz? Find ich grundsätzlich ok. Das Problem ist doch folgendes: Man kann eine Programmiersprache nicht ohne Beispiele erklären. Und das Problem in der µC Welt, wie sie sich hier präsentiert, ist es nunmal, daß ohne Peripherie nichts geht. Der reine Prozessor ist nun mal relativ uninteressant. Es macht auch keinen Sinn, da jetzt alle Befehle einzeln durchzukauen ohne sie in einem halbwegs sinnvollem Kontext in Aktion zu zeigen. Dazu braucht es aber natürlich ausführliche Beschreibungen dieser Peripherie, sei es ADC oder LCD, sei es Tastenfeld oder Schieberegister oder ... Und genau hier drückt der Schuh: Der Peripherie ist es ja wieder völlig egal in welcher Sprache programmiert wird, da ist das Verständnis der Funktionsweise der Geräte viel wichtiger. Habe ich dieses Verständnis, dann kann ich das Ding in jeder Sprache programmieren. Das sog. Assembler Tutorial erfüllt zur Zeit, meinem Verständnis nach, 3 Aufgaben 1) zum einen natürlich sukzessive die Möglichkeiten im Befehlssatz der CPU aufzuzeigen 2) zum andern halbwegs sinnvolle Programme mit diesem Befehssatz zu schreiben und dadurch auch grundlegende Verfahren aufzuzeigen 3) und damit das auch in einen vernünftigen Kontext passieren kann, muss natürlich auch die Hardware zumindest in den wichtigsten Grundzügen angesprochen werden. Ich denke auch nicht, dass es sinnvoll ist in einem Tutorium diese 3 Bereiche zu trennen. Genauso wie es nicht sinnvoll ist einen Sprachschüler im ersten Jahr nur Vokabeln pauken zu lassen. D.h. wir haben jetzt 2 Tutorien, eines in C und eines in Assembler, die sich aber über weite Strecken den Inhalt teilen sollten. Nämlich genau dort, wo es im eigentlichen Sinne nicht mehr um die Programmiersprache an sich sondern um grundlegende Verfahren, Algorithmen und Funktionsweisen von Peripherie geht.
Hallo, ich hätte auch noch eine Frage zu dem Tutorial. Wie weit kann ich das Tutorial eigentlich mit dem STK500 bearbeiten und ab wo muss ich dann aufrüsten auf STK501 etc? Was heißt eigentlich MEA CULPA? War ja nicht auf dem Gymnasium.
Fallout-Boy wrote: > Hallo, > > ich hätte auch noch eine Frage zu dem Tutorial. Wie weit kann ich das > Tutorial eigentlich mit dem STK500 bearbeiten und ab wo muss ich dann > aufrüsten auf STK501 etc? Das STK500 unterstützt neben einer Reihe anderer AVRs auch den Mega8 im DIL-Gehäuse. Das Tutorial benutzt hauptsächlich den Mega8. Somit ist das gesamte Tutorial mit dem STK500 und einigen extern angeschlossenen Komponenten (z.B. LCD) realisierbar. Natürlich ist es nicht immer sinnvoll, alles mit 8 Tastern und 8 LEDs, jeweils über ein mitgeliefertes 10-poliges Flachbandkabel angeschlossen, realisieren zu wollen. Da braucht es schon ein paar zusätzliche Einzel-Strippen und ein paar externe Bauteilträger (Lochrasterplatine, Steckbrett). ...
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.