uBasic - eine kleine plattformunabhängige Basic-Interpreter-Bibliothek ---------------------------------------------------------------------- Man kann so viel Funktionalität in eine Anwendung packen, wie man will, aber es wird immer noch Dinge geben, an die man im Vorfeld nicht gedacht hat bzw. die der Anwender später gern noch selbst, teilweise als Speziallösung, dazu haben möchte. Natürlich könnte man diese Funktionen irgendwie in sein Programm einbauen, aber wozu der Aufwand? Es ist doch viel einfacher gleich eine Schnittstelle vorzusehen, die die Möglichkeit bietet, Funktionalität in Form von Script-Texten „nachzuladen“ und innerhalb der Anwendung ausführen zu lassen. In diesem Sinne ist die kleine, in C geschriebene Basic-Interpreter-Bibliothek uBasic zu verstehen, welche leicht in eigene Programme integriert werden kann. Der Interpreter versteht in der jetzigen Form Basic-Programme mit dem ungefähren Sprachumfang des bekannten TinyBasic. Also solche Syntaxelemente wie for-next, if-then-else, goto, gosub-return, print, Variablenzuweisungen (vom Type signed integer), logische und arithmetische Operation sind im Sprachumfang enthalten. Dabei ist das Modul so ressourcenschonend, dass es sogar in die Firmware von Atmel-Mikrocontrollern mit weniger als 16kByte Programmspeicher und 1 kByte dynamischen Speicher integrierbar ist. Gerade im Hinblick auf Mikrocontroller sind im uBasic auch solche Befehle implementiert, die die Ansteuerung der vorhandenen Hardwarekomponenten ermöglichen (ADC, I/O-Ports, EEPROM). Als weitere Besonderheit von uBasic ist zu erwähnen, dass mit Hilfe spezieller Basic-Befehle Funktionen und Variablen der einbettenden Applikation angesprochen werden können und somit sehr flexibel in eigene Anwendungen integriert werden kann. Innerhalb des Vortrages soll die Funktionsweise und Anwendung von uBasic aufgezeigt werden. Ein kleiner, aber mit Sicherheit nicht umfassender Ausflug in die Geschichte von Basic und die Grundlagen des Interpreter-/Compiler-Baues wird dabei nicht ausbleiben können…. Der Vortrag wird durch eine kleine Live-Vorführung des Basic-Interpreters auf einer Mikrocontroller-Plattform abgerundet. Dieser Vortrag ist vor allem für Zuhörer mit Programmierkentnissen geeignet, die schon immer mal wissen wollten, wie man einen kleinen Interpreter selbst implementiert und in eigene Applikationen integrieren kann. Zusätzliche Informationen zu diesem Projekt sind u.a. hier zu finden: - http://www.sics.se/~adam/ubasic/ - http://www.mikrocontroller.net/topic/177030 - http://www.mikrocontroller.net/articles/AVR_BASIC - http://www.mikrocontroller.net/svnbrowser/avr-basic/