Einfügen als Gemeinsames Modul
Funktionen:Beschreibung Nach oben
Das Modul ramhs4.c2 ist der Treiber für das CCTools-RAM-Device HS
4MBit
für den I²C-Bus. Die Funktionsweise entspricht dem Modul eeprom.c2.
Alle Funktionen des Moduls sind über das I²C-Capture gecaptured.
Einfügen als Gemeinsames-Modul
Nach oben
Die Datei ramhs4.c2 in das Verzeichnis .\CControl2\UserLib
kopieren und
in der Datei modules.txt die Zeile ramhs4.c2 einfügen.
Ein zusätzliches Ausrufezeichen unmittelbar nach einem Modulnamen in modules.txt
bestimmt,
daß das Modul in jedem neuen Projekt von Anfang an aktiviert wird.
Konstanten Nach oben
const Addr[] = 0xD0,0xD2,0xD4,0xD6,0xD8,0xDA,0xDC,0xDE,
0xE0,0xE2,0xE4,0xE6,0xE8,0xEA,0xEC,0xEE;
const AddrR[]= 0xD1,0xD3,0xD5,0xD7,0xD9,0xDB,0xDD,0xDF,
0xE1,0xE3,0xE5,0xE7,0xE9,0xEB,0xED,0xEF;
Schreib-und Leseadressen.
Funktionen:
Schreibfunktionen für einzelne Werte Nach oben
function writebyte(byte addr, long ramaddr, byte data)
returns int
function writeint(byte addr, long ramaddr, int data)
returns int
function writelong(byte addr, long ramaddr, long data)
returns int
function writefloat(byte addr, long ramaddr, float data)
returns int
Mit diesen Funktionen werden einzelne Werte in das RAM-Device geschrieben.
Bei der Adressierung muß beachtet werden, daß die verschiedenen
Variabeltypen eine unterschiedliche Anzahl an Bytes belegen.
(Byte: 1Byte, Integer: 2Byte, Long: 4Byte, Float: 8Byte)
Alle Werte werden mit MSB first gespeichert. (Ausnahme Float)
Kommt es beim Schreibvorgang zu einem Fehler, so wird FALSE (0) zurückgegeben.
Bei erfolgreichem Schreiben der Daten wird True(-1) zurückgegeben.
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
data | zu speichernder Wert |
Schreibfunktionen für Arrays Nach oben
function writebytearray(byte addr, long addr, byte data[], int
len) returns int
function writeintarray(byte addr, long addr, int data[], int
len) returns int
function writelongarray(byte addr, long addr, long data[], int
len) returns int
Mit diesen Funktionen können Arrays (Byte, Integer und Long) in das
RAM-Device
geschrieben werden. Werte zwischen -32768 und -1 für len werden
als 32768 bis 65536 interpretiert.
Alle Werte werden mit MSB first gespeichert. (Ausnahme Float)
Kommt es beim Schreibvorgang zu einem Fehler, so wird FALSE (0) zurückgegeben.
Bei erfolgreichem Schreiben der Daten wird True(-1) zurückgegeben.
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
data | zu speicherndes Daten-Array |
len | Anzahl zu speichernder Array-Elemente |
Schreibfunktion für Strings(Zeichenketten) Nach oben
function writestring(byte addr, long ramaddr, byte s[]) returns int
Mit dieser Funktionen wird der Inhalt einer Stringvariable in das RAM-Device
geschrieben. Ein String belegt im immer 32 Byte.
Kommt es beim Schreibvorgang zu einem Fehler, so wird FALSE (0) zurückgegeben.
Bei erfolgreichem Schreiben der Daten wird True(-1) zurückgegeben.
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
s[] | Referenz für String-Variable |
Lesefunktionen für einzelne Werte Nach oben
function readbyte(byte addr, long ramaddr) returns byte
function readint(byte addr, long ramaddr) returns int
function readlong(byte addr, long ramaddr) returns long
function readfloat(byte addr, long ramaddr) returns float
Mit diesen Funktionen werden einzelne Werte aus dem RAM-Device gelesen und zurückgegeben.
Bei der Adressierung muß beachtet werden, daß die verschiedenen
Variabeltypen eine unterschiedliche Anzahl an Bytes belegen.
(Byte: 1Byte, Integer: 2Byte, Long: 4Byte, Float: 8Byte)
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
Lesefunktionen für Arrays Nach oben
function readbytearray(byte addr, long ramaddr, byte data[], int
len)
function readintarray(byte addr, long ramaddr, int data[], int
len)
function readlongarray(byte addr, long ramaddr, long data[], int
len)
Mit diesen Funktionen können Arrays (Byte, Integer und Long) aus dem
RAM-Device
gelesen werden.Werte zwischen -32768 und -1 für len werden als 32768 bis 65536 interpretiert.
Es muß darauf geachtet werden, daß das Zielarray mindestens so viele
Elemente enthält, wie für len angegeben.
Kommt es beim Lesevorgang zu einem Fehler, so wird FALSE (0) zurückgegeben,
andernfalls True(-1).
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
data | Ziel-Array für gelesene Daten |
len | Anzahl zu lesende Array-Elemente |
Lesefunktion für Strings(Zeichenketten) Nach oben
function readstring(byte addr, long ramaddr, byte s[]) returns byte
Mit dieser Funktionen wird ein String aus dem RAM-Device ausgelesen und
in der angegebenen Stringvariabel gespeichert.
Es werden immer 32 Byte aus dem RAM-Device gelesen.
Es wird die Stringlänge zurückgegeben.
Bei einem Fehler wird 0 zurückgegeben.
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
ramaddr | Speicheradresse 0x00000-0x7FFFF (0-524287) |
s[] | Referenz für String-Variable |
Firmwareversion auslesen Nach oben
function getVersion(byte addr) returns byte
Mit dieser Funktionen wird die Firmwareversion der CCTools-RAM-Device HS 4MBi
ausgelesen. Der zurückgegebene Wert ist ein Festkommawert mit einer
Nachkommastelle.
Der Rückgabewert 10 entspricht der Version 1.0
Wenn kein Baustein unter der angegebenen Adresse angeschlossen ist, wird
der Wert 0 zurückgegeben.
addr | Baustein-Adresse 0-15 (entsprechend A3,A2,A1,A0) |
Autor: André Helbig Mail: mail@cc2net.de
Erstellt: 11.6.2006 ©www.CC2Net.de