C Control I Unit-M 2.0 BASIC 5 Vdc Inputs / outputs 16 x digital I/Os/8 x analog or digital I/Os/2 x analogue outputs (s 198822 Data Sheet
Product codes
198822
Benutzer Variable externer Speicher, vom Compiler verwaltet
Benutzer Variable externer Speicher, vom Anwender verwaltet
KONSTANTEN
Mit Konstanten werden Zahlen, implementierte Konstanten und durch den Benutzer erstellte Konstanten
bezeichnet. Konstanten (außer in BASIC++ schon vorimplementierte Konstanten) können nur während der
Entwicklungsphase verändert werden. Während der Laufzeit ist der Wert im Gegensatz zu Eigenschaften
fest definiert.
bezeichnet. Konstanten (außer in BASIC++ schon vorimplementierte Konstanten) können nur während der
Entwicklungsphase verändert werden. Während der Laufzeit ist der Wert im Gegensatz zu Eigenschaften
fest definiert.
Numerische Konstanten werden in BASIC++ in der Regel im Dezimalsystem angegeben. Zusätzlich
unterstützt BASIC++ auch das Binär- , Oktal- , und Hexadezimalsystem. Um eine solche Zahl zu markieren
muss die Zahl entweder durch Endung "b", "o" oder "h" hervorgehoben werden
unterstützt BASIC++ auch das Binär- , Oktal- , und Hexadezimalsystem. Um eine solche Zahl zu markieren
muss die Zahl entweder durch Endung "b", "o" oder "h" hervorgehoben werden
POINTER
INTERRUPT VECTOR
Die M 2.0 / M ADV Units haben einen INTERRUPT-Vektor der auf einen Programmteil zeigt, dessen Aufgabe
es ist, unmittelbar auf eine externe Anforderung (eben das Interrupt Signal am Port IRQ) zu reagieren.Der
IRQ Eingang ist auf fallende Flanke getriggert. Der Interrupt ist abgeschaltet, wenn kein Interrupt Vektor
definiert wurde.
es ist, unmittelbar auf eine externe Anforderung (eben das Interrupt Signal am Port IRQ) zu reagieren.Der
IRQ Eingang ist auf fallende Flanke getriggert. Der Interrupt ist abgeschaltet, wenn kein Interrupt Vektor
definiert wurde.
Wahlweise zum Interrupt IRQ, kann der Interrupt auch durch den internen 20 ms Systemtimer ausgelöst
werden, oder auch wenn vom IR-Objekt oder vom RF-Objekt gültige Daten empfangen wurden. Die
Definition des INTERRUPT Vektors ändert sich dabei nicht, Es wird nur ein entsprechendes Bit im CONFIG
Register gesetzt. Im Kapitel CONFIG REGISTER finden Sie weitere Informationen zu diesem Thema.
werden, oder auch wenn vom IR-Objekt oder vom RF-Objekt gültige Daten empfangen wurden. Die
Definition des INTERRUPT Vektors ändert sich dabei nicht, Es wird nur ein entsprechendes Bit im CONFIG
Register gesetzt. Im Kapitel CONFIG REGISTER finden Sie weitere Informationen zu diesem Thema.
ACHTUNG:
Als Anwender müssen Sie dafür sorgen, dass Ihre INTERRUPT-SERVICE ROUTINE kein OBJECT aktiviert,
öffnet ohne ein anderes aktives Objekt vorher deaktiviert zu haben.
Ausserdem müssen Sie sich bewusst sein, dass ein Interrupt zu jedem x-beliebigen Zeitpunkt (- beliebige
Stelle im Programm) auftreten kann. Interrupts können sehr vorteilhaft sein, müssen aber mit viel Sorgfalt bei
der Programmierung des Anwenderprogrammes eingesetzt werden
Als Anwender müssen Sie dafür sorgen, dass Ihre INTERRUPT-SERVICE ROUTINE kein OBJECT aktiviert,
öffnet ohne ein anderes aktives Objekt vorher deaktiviert zu haben.
Ausserdem müssen Sie sich bewusst sein, dass ein Interrupt zu jedem x-beliebigen Zeitpunkt (- beliebige
Stelle im Programm) auftreten kann. Interrupts können sehr vorteilhaft sein, müssen aber mit viel Sorgfalt bei
der Programmierung des Anwenderprogrammes eingesetzt werden
VARIABLEN POINTER
Die Control Units erlauben dass auf Variablen mittels Pointer (Zeiger) zugegriffen werden kann
Pointer sind eine spezielle Art von Variablen. Alle Pointervariablen sind ein Byte groß. Mit Ihnen kann
genauso umgegangen werden wie mit normalen Bytevariablen.
Pointer sind eine spezielle Art von Variablen. Alle Pointervariablen sind ein Byte groß. Mit Ihnen kann
genauso umgegangen werden wie mit normalen Bytevariablen.
Mit einer Pointervariable kann variabel auf den Speicher zugreifen werden. Über bestimmte Operatoren kann
man mittels einer solchen Variable den Inhalt einer Speicherstelle, auf die der Pointer zeigt auslesen und
verändern. Durch Pointer kann man Strukturen wie Arrays und Zeichenketten programmieren.
man mittels einer solchen Variable den Inhalt einer Speicherstelle, auf die der Pointer zeigt auslesen und
verändern. Durch Pointer kann man Strukturen wie Arrays und Zeichenketten programmieren.
Definiert eine Variable welcher der Inhalt einer anderen Variablen zugewiesen wird. Diese andere Variable
wird mit einem Pointer adressiert
wird mit einem Pointer adressiert
1
const MyConstant = 122
INTERRUPT MyInterruptService
DEFINE ^p AS WORD
Define MyByte as CHIPRAM
Define MyByte as CHIPRAM[1]