Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Maximal wie viele Variablen? Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 9.01.2019 18:19)
 Als Antwort auf Maximal wie viele Variablen? von Joachim - 9.01.2019 17:26
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini M-Unit, Open-Mini Station
Hallo Joachim,

auf den C-Control-I-Controllern, so auch auf der Open-Maxi, können maximal 256 Variablen jeden Typs (BIT, BYTE, WORD und LONG) definiert werden. Diese Begrenzung gibt der Tokencode vor, denn die Variablennummer wird intern in einem Byte gespeichert. Zu beachten ist allerdings, daß sich die verschiedenen Variablen den gleichen USER-RAM teilen, weshalb sie sich überschneiden können. Das ist aber kein Problem, solange der Anwender die Variablen vom Compiler automatisch positionieren läßt. Man sollte also auf die manuelle Vergabe von Speichernummern (z.B.: DEFINE var BYTE[1]) verzichten. Auf der OM ist es guter Programmierstil, alle Variablen vom Compiler OCBASIC automatisch zuweisen zu lassen. Mit der neuen "OF"-Syntax klappt das auch bei BIT-Variablen. Der Controller kann aber nur 256 BIT-Variablen ansprechen und diese müssen in den ersten 256/8=32 Byte des USER-RAMs liegen. Deshalb sollten die BYTE- oder WORD-Variablen, in denen die BIT-Variablen liegen, zu Beginn definiert werden.

Wie bereits erwähnt, liegen die 256 BIT-Variablen in den ersten 32 Bytes des USER-RAMs. Die 256 BYTE-Variablen liegen in den ersten 256 Bytes des USER-RAMs. Die 256 WORD-Variablen liegen in den ersten 512 Bytes des USER-RAMs. Und schließlich kommen die 256 maximal möglichen LONG-Variablen in den ersten 1024 Bytes des USER-RAMs zu liegen. Das ist, was der Tokencode maximal hergibt, und deshalb von der Open-Maxi unterstützt wird.

Nun stellt sich die Frage, wie viele Variablen maximal definiert werden können, ohne daß es zu Überschneidungen kommt: Es können 256 BIT-Variablen, 256-32=224 BYTE-Variablen, (512-256)/2=128 WORD-Variablen und (1024-512)/4=128 LONG-Variablen maximal definiert werden. Das sind also immerhin 256+224+128+128=736 Variablen!

Die Open-Maxi bietet dem Anwender über 1800 Byte freies RAM. Die Bereiche, die sich nicht per Variablen ansprechen lassen, kann der Anwender mittels PEEK und POKE adressieren. Außerdem gibt es auf der Infosite zu den OM-Mikrocontrollern ein Programmpaket für ein schnelles Bit-Feld mit über 10000 Elementen. Jedes Element des Bit-Feldes kann den Zustand ON oder OFF annehmen.

Noch ein Hinweis: Um die maximal mögliche Anzahl Variablen verwenden zu können, muß der Anwender im Programm zuerst die BIT-, dann die BYTE-, danach die WORD- und schließlich die LONG-Variablen definieren. Denn nur die Variablen mit der größeren Bitanzahl können die höheren Bereiche des USER-RAMs adressieren.

Viel Spaß und Erfolg mit den OM-Mikrocontrollern!

Dietmar

Passender Link: Bedienungsanleitung zur Open-Macro und Open-Maxi

Meine Homepage: http://ccintern.dharlos.de

 Antwort schreiben

Bisherige Antworten:

Re: Maximal wie viele Variablen? (von Joachim - 9.01.2019 19:28)