
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo! Ich sammel gerade meine ersten Erfahrungen mit einer M-Unit 2.0 und Basic++. Bin dann auch prompt auf die Notwendingkeit der Vergabe von Offsets bei der Definition von Variablen gestoßen .-) Doch ... Die M-Unit V 1.0/1.1 hatte 24 Byte User-Ram. Daraus folgen die Offsets: 1- 12 für Word 1- 24 für Byte 1-192 für Bit Die M-Unit V 2.0 hatt 64 Byte User-Ram. Daraus würden diese Offsets entstehen: 1- 32 Word 1- 64 Byte 1-512 Bit Der Basic++ Compiler läßt dann auch ein "Define bVal As Bit[512]" zu. Doch der Download zur Unit wird dann mit einem Fehler "ungültiger Token: 512]" zurückgewiesen. Tests ergaben, daß der maximale Wert für einen Offset bei 255 liegt (der Offset selber also Byte-orientiert) ist. Damit kann man nur die unteren 32 Bytes der User-Ram Bit-weise adressieren. Frage: Wie kann man die oberen 32 Bytes per Bit[x] ansprechen? PS: Der Compiler läßt übrigens auch unmögliche Offsets zu: zB "Define val As Word[7000]" ist kein Problem ... Da derselbe Compiler aber die Bytes[1 & 2] respektive Word[1] mit einem Fehler quittiert (dadieser Wert ja bekanntlich als Function-Return-Wert benutzt wird) sollte es doch kein Problem sein, auch einen Check "nach oben hin" einzubauen. Tschau Andreas |
| Antwort schreiben |