-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Welche Sprache (Basic oder C)

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.12.2007
    Ort
    Heidelberg
    Beiträge
    156

    Welche Sprache (Basic oder C)

    Anzeige

    Hallo

    Ich möchte mich nun endlich mal mit dem AVR beschäftigen.
    Nun wollte ich mal Fragen mit welcher Sprache ihr am liebsten Programmiert.Mit welcher Sprache habt ihr angefangen und warum.
    Was meint ihr welche Sprache ist für den Anfang besser.Welche Sprache ist zukunftsorientierter.

    lg

    Andy

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111
    Für den Anfang empfehle ich Assembler. Danach kann man mit C weitermachen, weil C sehr verbreitet und ein Art "Grundsprache" ist. Andere Sprachen bauen darauf auf, zB Java, C++.
    Basic ist zwar sehr einfach, aber mit modernen Programmiersprachen hat es nicht viel gemein.
    Es kommt letztendlich darauf an, was Du vor hast...
    Gruß

  3. #3
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    38
    Beiträge
    642
    Wie Gock schon sgte kommt es darauf an was du vorhast.
    Ich selber Programmiere mit Bascom weil ich durch den Syntax und die ganzen Sonderzeichen von C nicht durchblicke, aber das ist mein persönlicher Geschmack. Assembler ist natürlich das Urgestein aller Programmiersprachen, erfordert aber das du dich mit dem zu Programmierenden Controller sehr genau beschäftigen musst. Besonders für den Anfang ist das nicht gerade ermutigend wenn man viele Zeilen schreiben muss um eine LED zum blinken zu bringen. Das geht mit Basic und C doch wesentlich schneller. ASM hat noch den Nachteil das Jeder Controller Hersteller einen eigenen Befehlssatz verwendet.
    Was hast du denn da ao für Anwendungen vor Augen?

    MfG
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    1.892
    Auch ich würde Vorschlagen, das Du dich erstmal mit dem Aufbau des Controllers beschäftigst und das musst Du ohnehin, wenn Du mit Assembler beginnst.
    Deshalb ist Assembler zwar ein etwas schwieriger Einstieg, der aber hinterher sehr viel bringt.
    Ich selber hab mit Assembler angefangen und progge jetzt in "C". Ich habs Anfangs auch mal mit Bascom versucht, sobald aber die Aufgaben etwas abseits vom Schema liegen wird das schnell kompliziert.
    Ausserdem find ich die Einbindung von inline Assembler in Bascom nicht besonders gut gelungen.

    Wenn man sich an die etwas seltsame Syntax von "C" gewöhnt hat, programmiert sichs damit recht flott.

    Ich selber benutze CodeVision AVR, eine kostenlose Demoversion kannst Du Dir bei http://www.hpinfotech.ro/ runterladen. Die kann bis zu 2k Code generieren.

    Wenn Du denkst, dich mit einer Hochsprache nicht mehr in die Hardware des entsprechenden Controllers einarbeiten zu müssen, bist Du bei allen Controllertypen auf dem Holzweg.

    Das schöne an den AVR Controllern ist, das zumidest der Prozessorkern bei allen Typen gleich ist.

  5. #5
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Hallo

    Basic ist zwar sehr einfach, aber mit modernen Programmiersprachen hat es nicht viel gemein.
    Das stimmt bei Bascom nicht, es ist genauso modern wie GCC.

    Assembler ist für Einsteiger zäh und tückisch, mit Bascom dürften sich die schnellsten Erfolge einstellen (bis man an die 4kb-Grenze stößt). Bei C verwirrt zuerst die flexible Syntax, darunter leidet die Lesbarkeit der Programme. Trotzdem ist es wohl der Standart und als Programmiersprache für Mikrokontroller weit verbreitet.

    Bascom dürfte die einfachste Installation haben, kennt keine PN2- oder Makefile-Probleme, hat eine umfangreiche Doku und wird hier gut unterstützt. Obwohl ich inzwischen meist in C programmiere würde ich einem totalen Anfänger eher zu Bascom raten.

    Gruß

    mic

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    1.892
    Bascom dürfte die einfachste Installation haben, kennt keine PN2- oder Makefile-Probleme, hat eine umfangreiche Doku und wird hier gut unterstützt. Obwohl ich inzwischen meist in C programmiere würde ich einem totalen Anfänger eher zu Bascom raten.
    PN2 und makefile gibts bei CodeVision auch nicht.
    Der Einstieg mag in Bascom einfacher sein als bei "C". Im Prinzip muss man aber dann beim Umstieg auf "C" zwei mal von vorne anfangen.

    Ich selber halte Bascom für einen sehr ausgereiften und einfach zu bedienenden Compiler. Trotzdem würde ich eher zu "C" raten, weil die Sprache flexibler ist und meistens auch kleineren und schnelleren Code generiert als BASCOM. Zudem gibt es für fast alle Aufgaben fertige Librarys.

    Ich hab auch schon AVR GCC probiert, aber das war mir dann doch zu tückisch. So bin ich dann bei CodeVision gelandet und bis jetzt sehr zufrieden damit. Vor allem der Automatic Programm Generator kann einem einge Stunden Datenblattstudium ersparen. Vorausgesetzt man kennt den entsprechenden Controller ein wenig.

    Ich habs damit geschafft ( obwohl ich absolut kein Freak bin ) innerhalb von 3 Stunden einen funktionsfähigen AVR Dimmer ( ATtiny2313 ) mit Drehimpulsgeber Abfrage und LED Anzeige zu proggen.
    Das muss man erstmal in einer anderen Programmiersprache schaffen.

    @AndyTrendy
    Die Frage nach dem richtigen Einstieg wurde hier schon oft gestellt.
    Eine letztgültige Antwort wurde darauf aber meines Wissens noch nie gefunden.
    Aber schau Dir die entsprechenden Threats ruhig mal selber an.
    Letztlich hängt es von den Vorkenntnissen und Vorlieben des Programmierers ab, für welche Sprache er sich entscheidet.

    Da viele Compiler als kostenlose Demoversionen zu bekommen sind, würd ich einfach mal ein paar ausprobieren und dann schauen, womit Du am Besten zurecht kommst.

  7. #7
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Hallo

    Zudem gibt es für fast alle Aufgaben fertige Librarys.
    Dafür hat Bascom für viele Standartaufgaben umfangreiche Befehle eingebaut die alle über eine einheitliche Schnittstelle zum Programm verfügen.

    Bei C-Libraries, die es auch für alle denkbaren Aufgaben schon gibt, muss man sich selbst erarbeiten wie man die Lib verwendet. Wenn man dann nicht gerade einen Quasistandart wie bei den LCD- oder MMC/SD-Libraries verwendet steht man ziemlich einsam da. Es kann dann schon reichen wenn die Lib für einen anderen Kontroller geschrieben wurde und niemand zu finden ist der das anpassen kann.

    Im Prinzip muss man aber dann beim Umstieg auf "C" zwei mal von vorne anfangen.
    Im Prinzip kann man (fast) alle Aufgaben mit Bascom lösen, ein Umstieg ist nicht zwingend nötig.

    Was noch ein Pluspunkt für Bascom sein könnte: Es spricht deutsch.

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111
    Zitat Zitat von wkrug
    So bin ich dann bei CodeVision gelandet und bis jetzt sehr zufrieden damit. Vor allem der Automatic Programm Generator kann einem einge Stunden Datenblattstudium ersparen. Vorausgesetzt man kennt den entsprechenden Controller ein wenig.

    Ich habs damit geschafft ( obwohl ich absolut kein Freak bin ) innerhalb von 3 Stunden einen funktionsfähigen AVR Dimmer ( ATtiny2313 ) mit Drehimpulsgeber Abfrage und LED Anzeige zu proggen.
    Das muss man erstmal in einer anderen Programmiersprache schaffen.
    Hi!
    Ich kenne nur eine alte Version von CodeVision, ohne Codegenerator. Habe mal hier (http://www.hpinfotech.ro/html/cvavr_features.htm) nachgelesen, aber kann mir das nicht so gut vorstellen.
    Wie bringt man den Compiler dazu, den entsprechenden Code zu erstellen? Wie wählt man die Funktionen aus?
    Gruß

  9. #9
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    38
    Beiträge
    642
    Schau dir doch mal die entsprechenden Unterforen für Bascom und C an da erkennst du vielleicht was dir besser liegen wird. Auch ein Blick ins Wiki in die Tuorials kann hilfreich sein.
    Selber hatte ich bei Bascom schon nach weingen Stunden arbeit die
    ersten "Progrämmchen" die funktionierten.
    Für Bascom gibt es auch noch das " Bascom AVR Mikrocontroller Forum" das wirklich sehr gut ist.
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.09.2004
    Ort
    Heilbronn
    Alter
    34
    Beiträge
    153
    Hallo Andy,

    das kommt ganz darauf an was du damit machen möchtest.

    Wenn du Robotik und Programmieren als Hobby betreibst reicht dir sicherlich eine einfach zu erlernende Sprache wie Bascom.

    Wenn du vor hast in der Richtung auch beruflich was zu machen (ich kenne deine Ausbildung nicht) würde ich dir auf jeden fall C empfehlen. Das ist numal eine der Standard-Sprachen für uCs in der Industrie. Außerdem ist C, wie Gock schon sagte, die beste Grundlage wenn du später auf die aktuellen "In-Sprachen" C++, C# oder Java umsteigen willst.

    Zu Thema Assembler: Das ist sicherlich ganz hilfreich für ein gutes Verständniss der Vorgänge im uC. Allerdings würde ich jedem Einsteiger empfehlen erst mal mit C anzufangen. Ich hab die Erfgahrung gemacht, dass Leute die sich am Anfang mit ASM rumärgern schnell die Lust verlieren. Wenn du einige Grundkenntnisse besitzt kannst du mit Hilfe von ASM immer noch tiefer in die Materie einsteigen.

    Just my two cents...

    Marco
    It is a job that is never started that takes the longest to finish - J.R.R. Tolkien

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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