Bascom – AVR-Entwicklungsumgebung

Ein moderner Basic-Compiler mit integrierter Entwicklungsumgebung, geeignet für alle gängigen AVR Boards und Projekte. Auch ideal geeignet  für Arduino kompatible Boards. Bascom erfreut sich nicht nur bei Einsteigern sondern auch bei Entwicklungsprofis immer größerer Beliebtheit und stellt inzwischen schon fast einen Basic Standard bei Mikrocontrollern der Atmel AVR Familie da.

Viele Problemstellungen die früher zeitaufwendig in Assembler oder C gelöst werden mussten, können durch diesen modernen Compiler blitzschnell mit wenigen Befehlen erledigt werden.


Beispielsweise genügt ein einziger Befehl um aus einem Port eine RS232-Schnittstelle, I2C-Bus oder einen Servoanschluss zu machen. Solche Dinge erfordern in anderen Programmiersprachen oft einen enormen Aufwand.
Aus diesem Grund liegen findet man auf dieser Seite zu fast allen Projekten Quellcode Beispielprogramme  die mit diesem Compiler entwickelt wurden.

Dieser Compiler erzeugt optimierten Maschinen-Code. Es werden alle AVR RISC Controller mit internem RAM der Serien AT90S , ATMEGA und ATTINY unterstützt. Mit einigen Einschränkungen sind jetzt auch ATTINY-Controller ohne SRAM mit BASCOM-AVR programmierbar. Dazu steht die $TINY-Funktion zur Verfügung. Nähere Hinweise sind in der zum Compiler mitgelieferten HELP-Datei enthalten.

BASCOM-AVR ist aber mehr als nur ein Compiler. Es ist eine vollständige Entwicklungsumgebung mit Simulator und Übertagungssoftware (Programmer).

Dieser Compiler ist auch für den Einstieg in die Controller-Programmierung geeignet. Er ist trotzdem sehr leistungsfähig und garantiert auch optimierte komplexe Softwareentwicklung mit professionellen Anforderungen. Ein großer Vorteil ist auch das diese Entwicklungsumgebung in hohen Tempo weiterentwickelt wird und die meisten Updates kostenlos sind.

Einige wesentlichen Vorzüge von BASCOM-AVR  sind:

  • kurze Einarbeitungszeit (BASIC versteht fast jeder)
  • leistungsfähiger Befehlssatz
  • Unterstützung aller Interruptmöglichkeiten des Controllers
  • zusätzliche hardwarespezifische Befehle
  • Hochsprache und Assembler-Maschinencode mischbar
  • Unterstützung von I2C-Bus, 1-Wire-Bus, SPI-Bus und alphanumerische sowie grafische LCD’s durch spezielle Befehle
  • Zeicheneditor für LC-Displays
  • Bit, Byte, Integer, Word, Long, Single and String Variables
  • Variablennamen mit 32 Zeichen
  • Datums und Zeitfunktionen
  • Floating-Point-Arithmetik mit trigonometrischen und logarithmischen Funktionen
  • das getestete Programm kann direkt aus der Entwicklungsumgebung mit unserem ISP-Kabel in den Controller geladen werden
  • integrierter Simulator
  • Passende Bascom Beispiele schon bei vielen Boards im Quelltext enthalten
  • Arbeitet unter 32 und 64 Bit Windows Version
  • Unterstützt zahlreiche Programmer, auch den Arduino Bootloader (durch Einbindung des von uns mitgelieferten avrdude).
  • Unterstützt TCP/IP und UDP-Protokoll
  • Unterstützt SRAM Filesystem
  • Unterstützt Compactflash-Cards
  • Unterstützt Magnetkartenleser
  • Unterstützt mehrere IR-Fernbedienungssysteme (RC5, RC6, SONY) sowohl vom Empfang als auch von der Sendeseite
  • Unterstützt DTMF-Sender
  • Unterstützt Emulation einer PS/2-Mouse
  • Unterstützt DCF Funkuhrempfang
  • Unterstützt USB-Programmer

 

Bascom Compiler Screenshot

Durch einfach Programmer Einstellung können auch Arduino kompatible Boards
blitzschnell per normalem Arduino Bootloader programmiert werden! Dazu benötigt man die frei downloadbaren Tools  avrdude & lib sowie Arduino kompatible Bascom Programme.

Arduino mit Bascom programmieren

 

Beispielprogramm

 $regfile = "m32def.dat" 'Die Anweisung bestimmt Controllertyp, hier AVR Mega 32
 $framesize = 32 'Stackanweisungen, die eigentlich nur bei größeren Programmen 
 $swstack = 32 'wirklich nötig werden
 $hwstack = 32
 $crystal = 16000000 'Die Frequenz des verwendeten Quarzes

 $baud = 9600 'Die Baudrate für RS232 Ausgabe.'Sie muss auch bei PC Terminalprogramm identisch sein

 Config Pinc.0 = Output 'Ein Pin wird als Ausgang konfiguriert PC0 (also Pin0 von Port C)

 do
   Portc.0 = 1 'Pin wird auf High, also 5V geschaltet
   Waitms 100
   Portc.0 = 0 'Pin wird auf Low, also 0V geschaltet
   Waitms 100
 loop

Weblinks zum Thema

Bezugsquelle

oder als Lernpaket

Letzte Aktualisierung am 2024-11-20 / * Affiliate Links 

Empfehlenswerte Bücher zu Bascom

Letzte Aktualisierung am 2024-11-20 / * Affiliate Links 

 

 

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

scroll to top