Advanced Light Controller Instruction Code

Über ALIC
Das Prinzip
So funktioniert die Code-Verarbeitung
Vorgaben und Definitionen
Assembler Syntax
Befehls-Referenz
Beispiele
ALIC Implementation für Microchip PICs
Links
Kontakt

Das Funktionsprinzip:

Der ALIC Controller arbeitet im Prinzip wie ein "gewöhnlicher" Microcontroller, d.h. er holt sich einen Befehl nach dem anderen aus dem Programmspeicher, decodiert ihn und führt die entsprechende Operation aus. Allerdings hat jeder der vorhandenen Ausgänge virtuell seine eigene Ausführungs-Einheit, so daß die Programme für die verschiedenen Ausgänge unabhängig voneinander im Multitasking-Betrieb ablaufen. Der Programmspeicher ist aber nicht nach Ausgangskanälen aufgeteilt, es kann also für verschiedene Ausgänge auch derselbe Programmcode verarbeitet werden.   

(Blockschaltbild)

Zur Beeinflussung des Programmablaufs von außen stehen eine gewisse Anzahl von logischen Schaltern ("Switches") zur Verfügung, sowie ggf. auch ein Satz von Variablen. Die Steuerschalter können lediglich den Zustand "ein" oder "aus" annehmen, die Variablen jeweils einen Wert zwischen 0 und max. 255. Die Schalter- und Variablenwerte können über Befehle im ALIC-Programm abgefragt werden und dadurch der Programmlauf beeinflusst werden. Eine direkte Verbindung zwischen der Implementations-spezifischen Firmware und dem ALIC-Interpreter gibt es nicht. Die Kommunikation zwischen beiden findet ausschließlich über das Setzen/Löschen von Switches oder die Übergabe von Steuerwerten statt.

In der Praxis, z.B. bei einem RC-Interface mit zwei Eingängen, werden dann die Stellungen der entsprechenden Schieber am Sender von der RC-Interface Firmware als Zahlenwert in zwei verschiedenen Steuer-Variablen abgelegt. Vom ALIC-Programm aus können diese dann mit bedingten Sprungbefehlen (Ausführung wenn Wert größer bzw. kleiner, als...) ausgewertet werden und entsprechend in den gewünschten Programmteil verzweigt werden, z.B. Blitzer "aus" bei Werten unterhalb 30% Schieberwert, Einfach-Blitzer bei Werten bis 70%, darüber ein Doppel-Blitz.
Ebenso könnte die RC-Interface Firmware auch eine Multiswitch-Auswertung beinhalten und 8 Steuerschalter entsprechend ein- oder ausschalten.
 

 



counter