Manual des MIDI RS-232/RS-422 Converter - Cinetix.de
Manual des MIDI RS-232/RS-422 Converter - Cinetix.de
Manual des MIDI RS-232/RS-422 Converter - Cinetix.de
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Der programmierbare Standalone Kommandointerpreter:<br />
Der programmierbare Kommandointerpreter wird nur in <strong>de</strong>r Drehschalter-Stellung E<br />
aktiviert. Einstellung <strong>de</strong>r seriellen Baudrate siehe oben bei "Inbetriebnahme".<br />
Aufgrund <strong>de</strong>r Komplexität können hier nur die Haupteigenschaften ange<strong>de</strong>utet wer<strong>de</strong>n. Die<br />
komplette Dokumentation <strong><strong>de</strong>s</strong> in <strong>de</strong>r Firmware enthaltenen programmierbaren<br />
Kommandointerpreters fin<strong>de</strong>n Sie auf <strong>de</strong>r mitgelieferten CD-ROM o<strong>de</strong>r auf <strong>de</strong>r Webseite<br />
"www.as-control.<strong>de</strong>".<br />
Die Steuerung und Programmierung <strong><strong>de</strong>s</strong> Kommandointerpreters erfolgt grundsätzlich über<br />
die <strong>RS</strong>-<strong>232</strong>/<strong>RS</strong>-<strong>422</strong> Schnittstelle. Bei entsprechen<strong>de</strong>r Programmierung ist es aber möglich,<br />
auch mit <strong>MIDI</strong>-Nachrichten Funktionen <strong><strong>de</strong>s</strong> Interpreters auszuführen.<br />
Abgesehen von diesen - für ein Gerät mit <strong>MIDI</strong>-Schnittstelle notwendigen Spezialfunktionen -<br />
erfolgt die Programmierung mittels einer Syntax, die einem sehr vereinfachten "C" bzw.<br />
"Java" entspricht. Hierbei han<strong>de</strong>lt es sich um einen schnellen komplett in Assembler<br />
programmierten Kommandointerpreter. An<strong>de</strong>rs als bei ähnlichen Projekten erfolgt die<br />
Kompilation von Anwen<strong>de</strong>rprogrammen nicht mit einem Spezialprogramm vorab auf <strong>de</strong>m PC,<br />
son<strong>de</strong>rn direkt im AS-Control Interpreter.<br />
Vereinfachungen und Modifikationen <strong>de</strong>r C-Syntax wur<strong>de</strong>n vor allem vorgenommen um<br />
Speicher zu sparen und um ein möglichst effizientes experimentelles interaktives Arbeiten zu<br />
ermöglichen. Z.B. gibt es keine Funktions-Prototypen und kein "main" Programm. Der<br />
Interpreter läuft permanent in <strong>de</strong>r "main" Schleife: situationsabhängig wird er vom<br />
ausführen<strong>de</strong>n in <strong>de</strong>n kompilieren<strong>de</strong>n Modus versetzt und danach zurück in <strong>de</strong>n<br />
Ausführungsmodus. Je<strong>de</strong> Funktion kann je<strong>de</strong>rzeit für sich von <strong>de</strong>r <strong>RS</strong>-<strong>232</strong>/<strong>RS</strong>-<strong>422</strong><br />
Schnittstelle (z.B. PC Terminalprogramm o<strong>de</strong>r SPS) aufgerufen wer<strong>de</strong>n.<br />
Dazu einige einfache Beispiele. Zum genaueren Verständnis muss allerdings auf die<br />
komplette Dokumentation verwiesen wer<strong>de</strong>n:<br />
--- Mit <strong>de</strong>m Befehl "ops" wird eine Liste <strong>de</strong>r internen Operatoren <strong><strong>de</strong>s</strong><br />
Interpreters und <strong>de</strong>rzeit gespeicherten anwen<strong>de</strong>r-programmierten Funtionen über die<br />
serielle Schnittstelle ausgegeben. Intern wer<strong>de</strong>n alle Operatoren- und Funktions-<br />
Namen ausschliesslich in Grossbuchstaben verwaltet. Die Eingabe ist aber - im<br />
Gegensatz zu 'C' -beliebig in Gross- o<strong>de</strong>r Kleinschreibung möglich.<br />
--- Die Operatoren und Funktionen können spontan per Terminal-Eingabe zu<br />
temporären Funktionen verknüpft wer<strong>de</strong>n, Beispiel: " p ( 2 + 3 ) " gibt 5 auf<br />
<strong>de</strong>m Terminal aus.<br />
Hier wird eine wesentliche Einschränkung gegenüber einem PC-üblichen C-Compiler <strong>de</strong>monstriert: die<br />
einzelnen syntaktischen Elemente ("Token") müssen mit einer Leerstelle voneinan<strong>de</strong>r abgesetzt<br />
wer<strong>de</strong>n.<br />
--- Die gleiche Operation kann aber auch zu einer Anwen<strong>de</strong>r-Funktion kompiliert<br />
wer<strong>de</strong>n: " : sum p ( 2 + 3 ) ret "<br />
und kann anschliessend mit <strong>de</strong>m Befehl "sum " ausgeführt wer<strong>de</strong>n.<br />
Das gleiche Verfahren kann auch auf I/O Prozesse angewandt wer<strong>de</strong>n, etwa wird mit<br />
" mtx3 (0xb0, 7 , u1 & 127 ) " ein Analogeingang als <strong>MIDI</strong><br />
Lautstärkeregler eingesetzt. Das kann mit etwas mehr Aufwand auch als<br />
Endlos-Schleife in einer Anwen<strong>de</strong>r-Funktion kompiliert wer<strong>de</strong>n.<br />
22