10.10.2013 Aufrufe

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

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!