- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: AVR-Assembler, das wahre Basic!

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    02.05.2005
    Ort
    Bremen
    Beiträge
    35

    AVR-Assembler, das wahre Basic!

    Anzeige

    E-Bike
    Endschuldigt bitte die kleine Provocation. Es drückt aber in etwa aus, was für einen Eindruck ich nach den ersten Monaten ASM-Lernen habe.
    Nun gut, ich bin schon etwas älter und Elekronic ist schon lange mein Hobby. Die AVRs sind aus dieser Sicht ideal und so preiswert, daß man wirklich fast jeden Sensor oder Aktor mit einem eigenen Controller ausrüsten kann.
    Aber nun zum Thema Assembler. Ich kenne natürlich die oft verlinkten Einsteigerseiten und habe da (wie auch hier) schon viel gelernt und einen erstmal ausreichenden Überblick gewonnen. Jetzt kommen die Details. Da wäre z.B. die Frage nach einem guten Programmierstil, der allgemein besten Programmstruktur und sonstige Fragen, die ich gern klären möchte. Eure Gedanken hierzu....?

    MfG
    Georg

    PS: Von wegen dem 'Basic': Bin VB-Fan und liebe Klassen (Hab sogar schon eine ATtiny15-Klasse

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Gleich die Provokation zurück: EINE Klasse ist ein bißchen mickrig.
    Das gibt ja Kraut und Rüben.
    Etwas Hierarchie und Vererbung hat sich der kleine Sch...er schon verdient.

    Der beste Programmierstil ? harhar.

    Im Forum ist schon lang kein Blut mehr geflossen. Offenbar eine gute Gelegenheit, das Ganze ein wenig aufzumischen
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    36
    Beiträge
    2.624
    Hallo Georg!
    Leider hast Du mit dem Vergleich (ASM <=> Basic) auch gleich die Nachteile von jener Programmiersprache auf ASM abgewälst! *lol*
    Nein, im Ernst:
    Bitte lasst uns nicht wieder den 3. Weltkrieg in Sachen Programmiersprachen ausrufen, das tut meinem unserem Gemüt nicht gut ... ;o)
    Ich kann als guten Programmierstiel in ASM auf jeden Fall die Verwendung von Bibliotheken empfehlen, damit das ganze übersichtlich bleibt.
    Desweiteren habe ich immer die selben Abstände gemacht, das macht den Code auch lesbarer:
    Code:
    ldi   temp    , 0xFF
    out   PORTB   , temp
    Außerdem sind Kommentare ganz wichtig, sie erleichtern das Lesen eines Codes enorm, auch wenn man länger braucht, um die ganzen Kommentar-Texte zu lesen! *g*

    Ich hoffe damit habe ich geholfen die eigentliche Frage (exkl. Provokation) zu beantworten! ;o)

    Viele Grüße
    Florian



    PS: Ich bin überigens mittlerweile bei C gelandet! *lol*

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    02.05.2005
    Ort
    Bremen
    Beiträge
    35
    Zitat Zitat von PicNick
    Gleich die Provokation zurück: EINE Klasse ist ein bißchen mickrig.
    Das gibt ja Kraut und Rüben.
    Etwas Hierarchie und Vererbung hat sich der kleine Sch...er schon verdient.

    Der beste Programmierstil ? harhar.

    Im Forum ist schon lang kein Blut mehr geflossen. Offenbar eine gute Gelegenheit, das Ganze ein wenig aufzumischen

    Hallo,
    woher willst du wissen, daß ich nur EINE Klasse habe?
    Im Ernst. Ich packe alle harten Fakten zu den ATtinys in ein Programm. Das heißt ich veriefe so das Gelernte. Im Laufe der Zeit sind so sämtliche Befehle, I/O Register und anderes als blanke Info in Klassen gelandet. So habe ich jetzt schon einen brauchbaren Editor, der mir alle Befehle und Register/Bits in Listen präsentiert und so jede Programmzeile in Assembler meistens mit drei Mauscklicks erledigt ist. Außerdem hab ich das Ganze noch mit einer Datenbank für Beispielcode ausgestattet, in dem ich bei Bedarf blättern kann. Und für kurze Initialisierungen oder öfter benötigte Code-Stücke fülle ich derzeit EINE eigens dafür geschaffene Klasse - ein Mauscklick und z..B. der Stapel ist eingerichtet.

    So lerne ich gut!
    Gruß!

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    02.05.2005
    Ort
    Bremen
    Beiträge
    35
    Zitat Zitat von Florian
    [....]
    Ich kann als guten Programmierstiel in ASM auf jeden Fall die Verwendung von Bibliotheken empfehlen, damit das ganze übersichtlich bleibt.
    [....]
    PS: Ich bin überigens mittlerweile bei C gelandet! *lol*
    Bibliotheken - so was gibt es? Klar, für C, aber Assembler? Wo sind welche?

    Und zu C würd ich sagen, daß das für mich irgendwann vielleicht relevant wird, wenn mir meinen kleine Projekte gelingen und ich größere anvisieren kann. Man bekommt ja schon allein aurch die Lektüre der Datenblätter einiges von C mit - ich nehms mit.

    Danke für die Antwort!

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    36
    Beiträge
    2.624
    Hallo rungo!
    Bibliotheken - so was gibt es? Klar, für C, aber Assembler? Wo sind welche?
    Selber erstellen! ;o)
    Ansonsten findet man ab und zu mal (auch im RN) ein paar Include-Bibliotheken für ASM!
    Und zu C würd ich sagen, daß das für mich irgendwann vielleicht relevant wird, wenn mir meinen kleine Projekte gelingen und ich größere anvisieren kann.
    So war es bei mir auch, irgendwann kommt man mit ASM nicht mehr effektiv weiter, also schnell zum Ziel. *meine Meinung*
    Ich bleibe aber dabei, ASM ist eine sehr schöne Programmiersprache! ;o)

    Viele Grüße
    Florian

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.07.2005
    Beiträge
    569
    Zitat Zitat von Florian
    So war es bei mir auch, irgendwann kommt man mit ASM nicht mehr effektiv weiter, also schnell zum Ziel. *meine Meinung*
    Hmm, Ansichtssache ... das schöne bei Assembler ist ja, das man es eben nicht auf den Compiler schieben kann

    Wenn das Programm sch... läuft, muss man sich schon selbst an die Nase packen.

    Im übrigen: Die einzig wirklich brauchbaren Bibliotheken sind nun mal die, die man selbst geschrieben hat. (zumindest in Assembler)

    So, und nun noch nen kleinen Text zum Quote:
    Sicherlich wird man für eine Programmentwicklung in Assembler immer etwas länger brauchen. allerdings, wenn man ökonomisch denkt rechnet sich auch dieses irgenwann einmal. (z.B. dann benn sich bei Stückzahlen auf einmal ein kleinerer AVR bemerkbar macht.)

    Grüße,

    da Hanni.

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    36
    Beiträge
    2.624
    Hallo Hanni!
    Im übrigen: Die einzig wirklich brauchbaren Bibliotheken sind nun mal die, die man selbst geschrieben hat. (zumindest in Assembler)
    Jap! *lol*
    Sicherlich wird man für eine Programmentwicklung in Assembler immer etwas länger brauchen. allerdings, wenn man ökonomisch denkt rechnet sich auch dieses irgenwann einmal.
    Damit hast Du wohl Recht, der Meinung bin ich auch, aber für mein Projekt ist es jetzt langsam entscheidend, dass ich schneller zum Schluss komme!
    Wenn das Programm sch... läuft, muss man sich schon selbst an die Nase packen.
    Ja, das ist in der Tat ein Vorteil bzw. Nachteil der Compiler und das hat mich auch schon des öfteren genervt, aber irgendwas muss man halt opfern ...

    Viele Grüße
    Florian

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    02.05.2005
    Ort
    Bremen
    Beiträge
    35
    Schön, mit dem Begriff 'Bibliotheken' hab ich Verständnisprobleme. Ich kann mir schon denken, daß ein teurer prof. Assembler einige Include-Dateien mitbringt, Routinen, Codeschnipsel, die der Assembler bei Aufruf einfügt. Sind das 'Bibliotheken'?
    Daß ich gelungene Codeteile aufhebe ist klar. Daß ich an einem eigenen Editor in VB bastele, der mir dann diese Routinen auf Click einfügt, das schrieb ich schon. Wäre so eine Sammlung von Code das, was ihr mit Bibliothek meint?

    Gruß

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    36
    Beiträge
    2.624
    Hallo rungo!
    Natürlich ist der Begriff der "Bibliothek" hier nicht ganz korrekt, eigentlich sind diese ja Teil einer hohen Sprache! ;o)
    Ich denke aber, dass man sie trotzdem mit Vorsicht als solche bezeichnen kann, denn im Prinzip machen die Includes nichts anderes.
    Ich hatte damals z.B. immer für die passenden Controller eine "Bibliothek" für den Stack und brauchte dann nur noch die Passende einfügen [.include "m8stack.inc"].

    Ich hoffe ich habe das ganze verständlicher gemacht?

    Viele Grüße
    Florian

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen