MAXLCD.C2 - Hilfe


Beschreibung

Einfügen als Gemeinsames Modul

Funktionen:

define()
define()
init()
cmd()
defineChar()
defineCharString()
clear()
home()
delline()
line()
goto()
cursorleft()
cursorright()
setcursor()
put()
print2()
print()
printlength()
fill()
printlines()
zahlf()
time()
date()
def_bargraph()
bargraph()
def_sanduhr()
def_arr_up()
def_arr_down()

portGet()
portGetn()
portSetDDR()
portSetDDRn()


Beschreibung   Nach oben

Das Modul maxlcd.c2 ist ein Treiber für Standard-LC-Display (HD44780) am I²C-Bus-Portexpander MAX7311.



Einfügen als Gemeinsames-
Modul
   Nach oben

Die Datei maxlcd.c2 in das Verzeichnis .\CControl2\UserLib kopieren und
in der Datei modules.txt die Zeile maxlcd.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.


Funktionen:

define()   Nach oben

    function define(byte device, byte Addr, byte Size)

Mit der Funktion define() wird ein Display definiert und einer Displaynummer zugeordnet
Die maximale Anzahl an LCDs wird durch die Konstante maxDevices festgelegt.
Dem angegebenem Display (0 bis maxDevices-1) wird eine Subadresse (0-63) des MAX7311,
sowie eine Displaygröße zugeordnet.
Durch die Angabe der Displaygröße kann zwischen LCDs mit 16 und 20 Zeichen pro Zeile unterschieden werden.
Diese Angabe wird für die Funktionen line(), goto(), delline(), und printlines() benötigt.

device Display-Nr.; 0 bis  maxDevices-1
addr Subadresse des MAX7311 0-63
Size Displaygröße.
0= 16 Zeichen pro Zeile
1= 20 Zeichen pro Zeile
 

setlight()   Nach oben

    function setlight(byte device, int light) returns int

Mit dieser Funktion wird die Displaybeleuchtung geschaltet.

device Display-Nr.; 0 bis  maxDevices-1
light 0 : Beleuchtung aus
!=0 : Beleuchtum ein
 

init()   Nach oben

    function init(byte device) returns int

Die Funktion init() initialisiert das LCD.
Der Cursor wird wird dabei abgestellt.(Dieser kann mit setcursor() auf Unterstrich oder blinkender Block gesetzt werden.)
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
 

cmd()   Nach oben

    function cmd(byte device, byte cmd) returns int

Mit der Funktion cmd() wird ein Kommando-Byte an das LCD gesendet.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
cmd Kommando-Byte entsprechend des LCD-Befehlssatz  
 

defineChar()   Nach oben

    function defineChar(byte device, byte CharAddr, byte char[]) returns int

Mit der Funktion defineChar() können bis zu 8 benutzerdefinierte Zeichen
erstellt werden. Die Bit-Daten werden als Bytearray mit 8 Byte Größe übergeben.
Jedes Byte repräsentiert eine Pixelzeile. Die Bits 0 bis 4 entsprechen den 5 Bildpunkten pro Zeile.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
Charaddr Zeichen 0 bis 7  (=ASCII-Code)
char[] Bytearray mit den zeichendaten (Größe 8 Byte)

defineCharString()   Nach oben

    function defineCharString(byte device, byte CharAddr, byte chardef) returns int

Mit der Funktion defineCharString() werdend wie mit defineChar() Zeichen definiert.
Die Zeichendaten werden hier als String übergeben. So können z.B. Stringkonstanten
für die Zeichendefinition übergeben werden.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
Charaddr Zeichen 0 bis 7  (=ASCII-Code)
chardef String mit Zeichendaten. Die ersten 8 Byte entsprechen der
Zeichendefinition.


clear()   Nach oben

    function clear(byte device) returns int

Mit clear() wird der Inhald des Displays gelöscht.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
 

home()   Nach oben

    function home(byte device) returns int

Mit home() wird der Cursor auf die Anfangsposition gesetzt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
 

delline()   Nach oben

    function delline(byte device, byte line) returns int

Mit delline() wird die angegebene Zeile gelöscht.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
line Zeile 1 bis 4
 

line()   Nach oben

    function line(byte device, byte line) returns int

Mit line() wird der Cursor an den Anfang der angegebenen Zeile gesetzt
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
line Zeile 1 bis 4
 

goto()   Nach oben

    function goto(byte device, byte line, byte col) returns int

Mit goto() wird der Cursor an die Angegebene Zeile und Spalte gesetzt
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
line Zeile 1 bis 4
col Spalte 0 bis 19


cursorleft()   Nach oben

    function cursorleft(byte device) returns int

Mit der Funktion cursorleft() wird der Cursor um eine Stelle nach links geschoben.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.


cursorright()
   Nach oben

    function cursorright(byte device) returns int

Mit der Funktion cursorright() wird der Cursor um eine Stelle nach rechts geschoben.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.


setcursor()   Nach oben

    function setcursor(byte device, byte cursor) returns int

Mit der Funktion setcursor() wird die Art des Cursors bestimmt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
cursor 0= aus, 2= Unterstrich, 3= Block, blinkend


put()   Nach oben

    function put(byte device, byte char) returns int

Mit put() wird ein Zeichen auf das Display ausgegeben
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
char ASCII-Zeichen


print2()   Nach oben

    function print2(byte device, byte s[]) returns int

Mit dieser Funktion wird eine Stringvariable ausgegeben.
Wird anstelle einer Stringvariable ein Bytearray übergeben, so muß
an Byte 31 die Anzahl der Zeichen stehen.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
s[] Auszugebende Stringvariable


print()   Nach oben

    function print(byte device, string s) returns int

Mit dieser Funktion wird ein String ausgegeben.
Es können Strinvariablen, Stringkonstanten oder direkt Strings übergeben werden.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
s Auszugebender String


printlength()
   Nach oben

    function printlength(byte device, byte s[], byte len) returns int

Mit dieser Funktion wird eine Stringvariable oder der Inhalt eines Bytearrays ausgegeben.
Die Anzahl der auszugebenden Zeichen wird dabei übergeben.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
s[] String oder Bytearray
len Anzahl Zeichen (max. 255)


fill()
   Nach oben

    function fill(byte device, byte ASCII, byte len) returns int

Mit dieser Funktion wird das Display mit einer Anzahl gleicher Zeichen gefüllt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
ASCII ASCII-Zeichen
len Anzahl Zeichen (max. 255)


printlines()   Nach oben

    function printlines(byte device, string s[], byte count) returns int

Mit dieser Funktion wird ein Stringarray auf das Display ausgegeben.
Jeder String wird in einer Zeile ausgegeben. Angefangen inder ersten Zeile.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
s[] String-Array
count Anzahl der Zeilen/Array-Elemente

 

Zahlfunktionen   Nach oben

    function ziff(byte device, int num) returns int
    function zahl2(byte device, int num) returns int
    function zahl3p(byte device, int num) returns int
    function zahl3(byte device, int num) returns int
    function zahl4p(byte device, int num) returns int
    function zahl4(byte device, int num) returns int
    function zahl5(byte device, int num) returns int
    function zahl(byte device, int num) returns int


Mit diesen Funktion können Zahlen direkt ausgegeben werden, ohne diese
erst in Strings zu konvertieren. Jede Funktion besitzt eine andere Ausgabeform von Zahlen:

ziff() Einzelziffer: 0 bis 9
zahl2() Zweistellig: 0 bis 99
zahl3p() Dreistellig positiv: 0 bis 999
zahl3() Dreistellig: -99 bis 999
zahl4p() 4-stellig positiv: 0 bis 9999
zahl4() 4-stellig: -999 bis 9999
zahl5() 5-stellig positiv: 0 bis 32767
zahl() 6-stellig: -32768 bis 32767

Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).
device eine durch define() definierte Display-Nr.
num Zahl im Integerbereich

 

zahllf()   Nach oben

    function zahlf(byte device, long num, byte cnt, byte dec) returns int

Mit dieser Funktion wird eine Zahl in dem angegebenen Format ausgegeben.
Die Zahl kann max. vom Typ long sein. Die übergebene Zahl wird als Festkommawert
ausgegeben, wenn mit dec eine Anzahl an Dezimalstellen definiert wird.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
num Zahl (byte, int oder long)
cnt Anzahl Vorkommastellen, mind 1
dec Anzahl Nachkommastellen, 0= keine Nachkommastellen


time()
   Nach oben

    function time(byte device, byte format) returns int

Mit dieser Funktion wird die aktuelle Zeit auf das Display ausgegeben.
Es sind dabei mehrere Formate möglich.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
format 0= h:m:s
1= hh:mm:ss
2= h:m 
3= hh:mm


date()
   Nach oben

    function date(byte device, byte format) returns int

Mit dieser Funktion wird das aktuelle Datum auf das Display ausgegeben.
Es sind dabei mehrere Formate möglich.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
format 0= d.m.yyyy
1= dd.mm.yyyy
2= d.m. 
3= dd.mm.
4= d.m.yy
5= dd.mm.yy


def_bargraph()   Nach oben

    function def_bargraph(byte device)

Die Funktion defbargraph() definiert Zeichen für die Bargraph-Funktion und legt diese
im Display-RAM als ASCII-Zeichen 0 bis 3 ab.

device eine durch define() definierte Display-Nr.



bargraph()
   Nach oben

    function bargraph(byte device, byte len, byte maxlen) returns int

Mit der Funktion bargraph() können Balken ausgegeben werden.
Es muß vor dem ersten Verwenden dieser Funktion die Funktion def_bargraph()
aufgerufen werden.
Die Maximale Balkenlänge bei 2x16 und 4x16 LCDs beträgt 80 und bei
2x20 und 4x20 100.

device eine durch define() definierte Display-Nr.
len Länge des Bargraph 0 bis maxlen
wenn größer als maxlen, wird maxlen ausgegeben
maxlen Maximallänge


Sonderzeichen   Nach oben

    function def_sanduhr(byte device, byte ascii)
    function def_arr_up(byte device, byte ascii)
    function def_arr_down(byte device, byte ascii)

Mit diesen Funktion können die Sonderzeichen "Sanduhr", Pfeil nach oben und
Pfeil nach unten erstellt und im RAM des Displays abgelegt werden.
Die jeweilige Funktion muß vor dem ersten Verwenden des Zeichens aufgerufen werden.

device eine durch define() definierte Display-Nr.
ascii ASCII-Code, den das Zeichen verwenden soll (0 - 7)



portSetDDR()
   Nach oben

    function portSetDDR(byte device, byte Port, int DDR) returns int

Mit dieser Funktion wird die Datenrichtung der 4 freien I/O-Ports festgelegt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
Port Port 12 bis 15
DDR =0 => Ausgang,  !=0 => Eingang


portSetDDRn()
   Nach oben

    function portSetDDRn(byte device, byte DDR) returns int

Mit dieser Funktion wird die Datenrichtung der 4 freien I/O-Ports als Datennibble festgelegt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
DDR Bitmuster der Portkonfiguration.
Bit 0 bis 3 entsprechen den Ports 12 bis 15
Lowbit= Ausgang
Highbit= Eingang



portGet()
   Nach oben

    function portGet(byte device, byte Port) returns int

Mit portGet() wird ein als Eingang definierter Port ausgelesen.

device eine durch define() definierte Display-Nr.
Port Port 12 bis 15


portGetn()
   Nach oben

    function portGetn(byte device) returns byte

Mit dieser Funktion werden die als Eingang definiertern Zusatzports ausgelesen,
und als Bitmuster zurückgegeben.

device eine durch define() definierte Display-Nr.



portSet()
   Nach oben

    function portSet(byte device, byte Port, int state) returns int

Mit portSet() wird ein als Ausgnag definierter Port gesetzt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
Port Port 12 bis 15
state 0: low, !=0: high


portSetn()
   Nach oben

    function portSetn(byte device, byte state) returns byte

Mit dieser Funktion wird die Ausgänge mit dem übergebenen Bitmuster gesetzt.
Die Funktion gibt True(-1) zurück, wenn sich an der angegebenen Adresse ein
Baustein befindet, andernfalls False(0).

device eine durch define() definierte Display-Nr.
state Bitmuster der Portkonfiguration.
Bit 0 bis 3 entsprechen den Ports 12 bis 15



Autor: André Helbig   www.cc2net.de     Erstellt: 25.12.2011