BASCOM Einsteiger Kaufentscheidung

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • BASCOM Einsteiger Kaufentscheidung

      Hallo erstmal,
      aktuell programmiere ich meine Arduino UNO und MEGA Boards in C++ mit der Arduino IDE.
      Anfänglich empfand ich die Einfachheit der IDE und der vielen fertigen Libs als sehr entgegenkommend.
      Das ganze wird mir aber langsam doch etwas langweilig. Ich empfinde das Coden mit der Arduino IDE irgendwie auch nicht als "richtiges" programmieren.

      Okay, da BASCOM nicht kostenlos ist hier ein paar fragen.

      Lässt sich mit BASCOM alles realisieren was mit C++ möglich ist?
      Ist der der erzeugte Code eher größer oder kleiner als der der Arduino IDE?
      Muss ich einen neuen Bootloader aufspielen, also benötige ich weitere Hardware?
      Wird BASCOM vom Entwickler gepflegt, gibt es regelmäßig Updates?

      Grüße
      MichaelS
    • Hallo MichaelS,
      BASCOM wird immer weiterentwickelt und es gibt eine für Dich kostenlose BASCOM-Version mit voller Funktionalität und lediglich einer gewissen Beschränkung bezuglich der möglichen Programmgröße.
      Lade Dir doch die Version einmal herunter und erstelle ein paar Programme mit BASCOM - mit dem vorhandenen Bootloader - und Du wirst ein Gefühl für die Programmierung mit BASCOM und für die Größe der erzeugten Programme bekommen. Du wirst staunen, was alles machbar ist und wie gut so ein Programm lesbar ist. Die Kosten für eine Vollversion sind übrigens lächerlich niedrig. Und Du bekommst lebenslang kostenfreie Updates.
      Viele Grüße
      Stefan
    • MichaelS wrote:

      Lässt sich mit BASCOM alles realisieren was mit C++ möglich ist?
      Grundsätzlich ja! Allerdings hat man den Umfang an Libs nicht wie bei C. Oft muss man selber was zusammen stricken. Aber dann ich alles möglich was in C auch geht.

      MichaelS wrote:

      Ist der der erzeugte Code eher größer oder kleiner als der der Arduino IDE?
      Der Code ist kleiner. Arduino hat vieles an Ballast dabei was oft nicht gebraucht wird.

      MichaelS wrote:

      Muss ich einen neuen Bootloader aufspielen, also benötige ich weitere Hardware?
      Wenn du einen Controller hast, der den Bootloader von Arduino enthält, kannst du den auch über Bascom programmieren. Ansonsten gibt es günstige Programmer, man kann auch selber einen bauen.

      Was ich an Basom besser finde ist der Inline-Assembler.
      Ich habe damit schon einen Bildmustergenerator gebaut, der Testbilder liefert.
      In C (Arduino) ist das aufwendiger.

      Nachteil an Bascom.
      Objektorientiertes Proggen geht nicht und auch Type-Strukturen gehen nicht.
      Ebenfalls nachteilig die aufbröselung von Gleichungen mit Klammern und Punkt vor Strich.

      Ich kenne beides, also Arduino und Bascom.
      Beides hat seine Vorzüge.

      Ich möchte Bascom trotz allem nicht missen.

      Achso.


      MichaelS wrote:

      Wird BASCOM vom Entwickler gepflegt, gibt es regelmäßig Updates?
      Naja. Die letzten paar Jahre gab es immer zu Weihnachten ein Update.
      Letzte Weihnachten allerdings nicht. Es ist auch nicht bekannt, wann es Updates herausgegeben werden.
      Kaum macht man es richtig - und schon geht's!
    • Danke an alle für die zahlreichen Antworten.
      Übrigens sehr schön das es diese deutsche Community gibt. a_42_02cc30b2

      Einmal bezahlen, dann lebenslang Updates gratis, das ist mehr als fair. :thumbsup:

      Ich lade mir jetzt mal die Demo.

      Danke!
    • Mitch64 wrote:

      Objektorientiertes Proggen geht nicht und auch Type-Strukturen gehen nicht.
      Ebenfalls nachteilig die aufbröselung von Gleichungen mit Klammern und Punkt vor Strich.
      Das finde ich jetzt persönlich nicht als Nachteil.
      Die Type-Struktur macht aber auch nur dann Sinn, wenn man sie an eine Sub übergibt und in der Sub auswertet.
      In Pascal gibt das auch und ich nutze es recht wenig.

      Als einen Nachteil finde ich allerdings, dass nur eine Rechenoperation pro Zeile zulässig ist.
      Aber auch damit kann man leben :)
      Eine Lösung habe ich nicht, aber mir gefällt Ihr Problem.
    • Habe jetzt mal ein wenig mit der Demo rumgespielt.
      Die Syntax und die IDE gefallen mir ganz gut. Auf jeden Fall schnell erlernbar.

      Nun würde ich aber mal gerne Code zum Arduino Mega übertragen.
      Gibt es hier vielleicht einen hilfreichen Thread bezüglich der Einstellungen?

      Ich weis, die Frage ist OT, man möge mir verzeihen.

      Grüße
    • Du kannst deine Arduinos auf zwei Arten programmieren.
      Entweder über einen extra Programmer mit ISP oder über den USB-Anschluss.
      Wenn du den USB vom Board nutzen willst sollte in den EInstellungen -> Programmer Arduino eingestellt werden.
      Und natürlich auch der richtige Com-Port an dem dein Arduino hängt.
      Eine Lösung habe ich nicht, aber mir gefällt Ihr Problem.
    • Es geht auch direkt, ohne externes Zeugs. Für den arduino mega muss ein anderer Programmer gewählt werden und die Geschwindigkeit ist anders, im Vergleich zum uno. Ich bin jetzt leider 'behindert' (meine Katze hockt auf mir) und kann jetzt grad' keine genaueren Angaben machen. Ich hole es nach. :/
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • @MichaelS mit der obigen Einstellung geht es. Es kann aber sein, dass du nach dem Einstellen des Programmers bascom neu starten musst, damit es auch funktioniert. Bei mir ist es zumindest so, dass ein Umschalten des Programmes, ohne Neustart von bascom, nicht immer klappt.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • @djmsc:
      Danke!
      Mit diesen Einstellungen funktioniert der Upload. a_22_9ac28a82
      Ich habe jetzt einfach mal dieses Beispiel hochgeladen:

      BASCOM Source Code

      1. '-------------------------------------------------------------------------------
      2. ' ARDUINO-MEGA.BAS
      3. ' (c) 1995-2016, MCS Electronics
      4. ' This is a sample file for the Mega2560 based ARDUINO board
      5. ' Select Programmer 'ARDUINOV2' , 57600 baud and the proper COM port
      6. '-------------------------------------------------------------------------------
      7. $regfile = "m2560def.dat" ' used micro
      8. $crystal = 16000000 ' used xtal
      9. $baud= 19200 ' baud rate we want
      10. $hwstack = 40
      11. $swstack = 40
      12. $framesize = 40
      13. 'config clockdiv=1 ' either use this or change the divider fuse byte
      14. '-------------------------------------------------------------------------------
      15. Config Portb = Output ' make portb an output
      16. do
      17. toggle portb ' toggle level
      18. Waitms 1000 ' wait 1 sec
      19. print "MEGA" ' test serial com
      20. Loop
      Display All
      Anstatt "MEGA" erscheinen allerdings nur wirre Zeichen im Terminal.
      Ich benutze die Einstellungen: 19200,N,8,1
    • Der Titel dieses Threads bezieht sich ja auf "Kaufentscheidung".
      Mir gefällt BASCOM und mir gefällt die deutsche Community weshalb ich gekauft habe. :)

      So, werde die nächsten Tage erst mal was lesen, mich mit den Grundzügen der Sprache vertraut machen.

      Danke an alle für die schnelle und freundliche Hilfe!
    • Schau dazu mal in die bascom-Hilfe. Die ist, bis auf Kleinigkeiten, sehr gut. Hier einfach mal als Einstieg avrhelp.mcselec.com/language_fundamentals.htm
      Die kann man im editor auch mit F1 aufrufen, wenn man mit dem cursor auf einem Befahl steht, kommt in der Regel auch die Hilfe/Erklärung zum Befehl.

      Ach, noch was, wenn du den bootloader nutzt und print-Ausgaben im Programm hast, die über den USB an ein Terminal gehen, ein Tipp: schnelle print-Ausgaben, zum Beispiel in einer Schleife ohne wait, können beim nächsten Programmupdate über den bootloader den recht einbremsen. Ist mir oft genug passiert, das Programm gibt laufend was aus und ein neues flashen kommt wegen der print-Auslastung nicht so recht in Gang. Abhilfe schafft ein wait 1 ganz am Anfang des Programms. Dann hat man die Möglichkeit bein neuen Programmübertragen die reset-Taste zu drücken und der bootloader wird erstmal nicht durch prints gestört.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------

      The post was edited 1 time, last by tschoeatsch ().