PCFKEYB.C2 V1.1 - Hilfe


Beschreibung

Einfügen als Gemeinsames Modul

Konstanten

Funktionen:

init()
getstate()
getbin()
getchar()
getstr()
released()


Beschreibung   Nach oben

Das Modul pcfkeyb.c2 ist ein Treiber für eine Matrixtastatur bis 4x4 an
einem PCF8574 Portexpander z.B. am I2C-Terminal von CCTools.
Alle Funktionen sind über das I²C-Capture gecaptured.


Einfügen als Gemeinsames Modul
   Nach oben

Die Datei pcfkeyb.c2 in das Verzeichnis .\CControl2\UserLib der IDE
kopieren und in der Datei modules.txt die Zeile pcfkeyb.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 IntPort=15;// Port für PCF-Interrupt (0 bis 15)
                 // Dieser Port benötigt einen Pull-Up Widerstand (z.B. 10k)

Dies ist der I/O-Port für die Interrupterfassung des PCF8574

const Char[]= 0x33,0x36,0x39,0x23, // rechte Spalte
              0x32,0x35,0x38,0x30, // mittlere Spalte
              0x31,0x34,0x37,0x2A, // linke Spalte
              'A' ,'B' ,'C' ,'D' ; // Nur für 4x4 Matrix
Das Array Char muß ggf. der verwendeten Tastatur angepasst werden.
Es beinhaltet die Rückgabewerte der einzelnen Tasten.


Funktionen:


init()   Nach oben

    function init(byte pcf, byte matrix) returns int

Mit der Funktion init() wird der verwendete PCF8574 initialisiert
und die Art der Matrixtastatur festgelegt.

pcf Baustein: 0-7 PCF8574, 8-15 PCF8574A
matrix 0 : 3x4 Matrix , !=0 : 4x4 Matrix


getstate
()   Nach oben

    function getstate() returns int

Die Funktion getstate() fragt alle Tasten der Tastatur ab und gibt
die Zustände als 16Bit Bitmuster zurück.
Diese Funktion wird von allen anderen Abfrage-Funktionen benötigt.
Sie sollte nicht direkt verwendet werden.

getbin()   Nach oben

    function getbin(byte delay) returns int

Mit der Funktion getbin() wird solange gewartet, bis eine oder 
mehrere Tasten gedrückt werden, und anschließend das16 Bit Bitmuster zurückgegeben.
Es kann mit dem Wert delay eine Verzögerung in ms angegeben werden, um
Fehler durch evtl. Tastenprellen zu unterdrücken.

delay Verzögerung in ms (0-255)


getchar()   Nach oben

    function getchar(byte delay) returns byte

Mit getchar() wird auf einen Tastendruck gewartet und anschließend
der Zeichencode entsprechend dem Konstantenarray char[] zurückgegeben.
Es kann mit dem Wert delay eine Verzögerung in ms angegeben werden, um
Fehler durch evtl. Tastenprellen zu unterdrücken.

delay Verzögerung in ms (0-255)


getstr()   Nach oben

    function getstr(byte delay, byte s[]) returns byte

Mit der Funktion getstr() wird solange gewartet bis eine oder mehrere
Tasten gedrückt wurden, und anschließend das Ergebnis als String zurückgegeben.
Im String werden so viele Zeichen nach dem Zeichencode char[] geschrieben,
wie Tasten gedrückt sind. Zusätzlich wird die Anzahl der Zeichen(=gedrückte Tasten)
zurückgegeben.
Es kann mit dem Wert delay eine Verzögerung in ms angegeben werden, um
Fehler durch evtl. Tastenprellen zu unterdrücken und zuverlässig das Drücken
mehrerer Tasten zu erfassen.

delay Verzögerung in ms (0-255)
s[] String-Variable für Zeichencodes der gedrückten Taste(n)

released()   Nach oben

    function released(byte warte) returns int

Mit released() wird abgefragt, ob noch eine Taste gedrückt ist, oder
alle Tasten losgelassen wurden. Es wird entsprechend True(-1)
zurückgegeben, wenn alle Tasten losgelassen wurden, andernfalls False(0).
Mit dem Parameter warte kann bestimmt werden, daß die Funktion solange
warten soll, bis alle Tasten losgelassen wurden.

warte >0 : es wird gewartet, bis alle Tasten losgelassen wurden
0 : es wird nicht gewartet 




Autor: André Helbig   Mail: andre.h@cc2net.de    Erstellt: 2.8.2003