|
|
|
|
| .. Beispiel .. EA-Kit IDE |
|
|
|
Das nachfolgende Beispiel kann über
den Simulator des EA-Kit IDE ausprobiert werden. Hierzu muss ..
1.
.. die EA-Kit IDE von
2. .. in der zu bearbeitenden Makro-Projektdatei.KMC die SIMULATION freigegeben wird. Dies geschieht, indem das Semikolon (Kommentierungszeichen) vor SIMULATION entfernt wird und vor den COMx: -Zeilen gesetzt wird. 3. .. die benötigten Dateien des Bitmap-Bildes.BMP und der Fontdateien.FXT in bekannten Verzeichnissen abgelegt werden und deren Namen in der zu complierenden Datei.KMC eingetragen werden |
|
Die
Projektdatei: Beispiel.KMC
Die Datei kopieren und in einem Verzeichnis mit dem Namen beispiel.kmc ablegen. Dann mit der EA-Kit IDE aufrufen und die Kommentare der Datei lesen. |
|
|
; Beispiel einer Makrodatei
; für eDIP 240-7
; ======================================
; 11.06.2007 www.GoBlack.de, D.Schwarzer
eDIP240-7 "Beispiel" ; Definition der Anzeige eDIP240-7 + "Projektname"
SIMULATION ; entweder simulieren oder zur Anzeige übertragen .. durch
;COM6: 115200 ; COM6 mit 115200 Baud (muss an der Anzeige gejumpert sein)
;COM1: 9600 ; COM1 mit 9600 Baud (muss an der Anzeige gejumpert sein)
;VERIFY ; Programm nach d. Übertragung verifizieren
; Einen Touch kann man bei der Simulation durch einen Mausklick erreichen.
; Definitionen von Literalen, Fonts und Bilder zur Anzeige hochladen
;------------------------------------------------------------------------------
; Sonder-Zeichencodes definieren, falls diese Zeichen in den Makros vorkommen
; und im Zeichensatz vorhanden sind
'' = 128 ; Euro-Zeichen -Code-Angabe dezimal
'äöüÄÖÜß' = $84,$94,$81,$8E,$99,$9A,$E1 ; Umlaute -Code-Angabe hexadezimal
;------------------------------------------------------------------------------
; Definition von Schlüsselworten für Konstanten, wenn diese in Makros benötigt
; werden. Man kann entweder das Wort oder die Zahl verwenden. (Beispiele)
Xmax = 239 ; max. X-PixelGrösse der Anzeige (angenehm bei Grafiken ..
Ymax = 127 ; max. Y-PixelGrösse der Anzeige (.. wird hier nicht benutzt)
AUS = 0 ; AUS steht für 0
EIN = 1 ; EIN steht für 1
; .. FONTS (Zeichensätze)
;------------------------------------------------------------------------------
; Fonts einbinden max. 15 eigene Fonts (FontNummern 1..14) Font 0 ist immer
; vorhanden. Er ist der einzige Font im reinen Textmodus (Terminalmodus)
; 1. Mann kann den Fonts anstelle von Nummern, Namen zuordnen. Der eigene Font
; meinFont erhält z.B. die Nummer 9 (anstelle der Namen kann auch die
; Nummer verwendet werden => diese Zeilen sind kein MUSS)
FONT8x8 = 0 ; interner Font, immer vorhanden
; für Grafik- und Terminalmodus
FONT4x6 = 1 ; nur für den Grafikmodus
FONT6x8 = 2 ; sind bei der IDE im Verzeichnis
FONT7x12 = 3 ; \FONT als ASCII-Texte.FXT abgelegt
GENEVA10 = 4
CHICAGO14 = 5
SWISS30B = 6
BIGZIF57 = 7
Times = 8
meinFont = 9 ; siehe Datei beispielFont.FXT weiter unten
; 2. Die Fonts befinden sich (als ASCII-Textdateien.FXT) in einem Verzeichnis
; des Massenspeichers (bei den Originalen IDE-Dateien ist dies das
; Verzeichnis \FONTS. Dieser Pfad kann absolut (vollständig) oder relativ
; zum Pfad der IDE angegeben werden.
PATH: <..\FONTS\> ; Pfadangabe zu den Font-Dateien der IDE
; 3. Die Fontdateien werden vom Massenspeicher geladen und ihren Namen
; zugeordnet anstelle der Namen können auch die Nummern (1-14) verwendet
; werden, siehe oben.
Font: FONT4x6, <4x6.FXT> ; mono-Font (Pixelraster 4x6)
Font: FONT6x8, <6x8.FXT> ; mono-Font ( 6x8)
Font: FONT7x12, <7x12.FXT> ; mono-Font
Font: GENEVA10, <GENEVA10.FXT> ; proportionaler Font (Höhe 10 Pixel)
Font: CHICAGO14,<CHICAG14.FXT> ; proportionaler Font ( 14 Pixel)
Font: SWISS30B, <SWISS30B.FXT> ; proportionaler Font ( 30 Pixel)
Font: BIGZIF57, <BIGZIF57.FXT> ; dieser Font enthält nur Ziffern
PATH: <> ; Pfadangabe zur eigenen Fontdatei
; hier im gleichen Verzeicnis wie diese Datei.KMC
Font: meinFont, <BeispielFont.FXT> ; eigene Fontdatei laden
; ... Bild.bmp
; -----------------------------------------------------------------------------
; ein Bild vom Typ.BMP einbinden, dem kein Name zugeordet wurde. Es besitzt die
; Nummer 0 und befindet sich im gleichen Verzeicnis wie diese Datei.
; Die Bilddatei kann mit einem beliebigen Bild bearbeitungsprogramm betrachtet
; und verändert werden. Sollte jedoch nicht über 239 X 127 Pixel hinausgehen.
PATH:<>
Picture: 0 <GoBlack_de.BMP>
;
; Makros programmieren, complieren und simulieren
; -----------------------------------------------------------------------------
; Nachdem die Fonts und Bilder zur Anzeige hochgeladen wurden, sollte man etwas
; mit diesen anfangen. z.B zur Anzeige ausgeben. Hierzu gibt es die Möglichkeit
; ..
; 1. Programmblöcke (MAKROS) zu bilden (x = 0-255)
; das anzeigeninterne Makros PowerOnMakro wird beim Einschalten der
; Anzeige automatisch ausgeführt (gut für den Start einer SIMULATION)
; die anderen Makros müssen durch eine Befehlssequenz (#MN x) aufgerufen
; werden (Dies kann von einem Steuerrechner aus geschehen oder aus einem
; anderen Makro heraus)
; 2. die Makros mit Befehlssequenzen zu programmieren (ESC-SEQUENZEN)
; in der IDE steht das Zeichen # für ESC, dann folgen die Parameter
; die Parameter sind im Datenblatt der Anzeige, oder bei GoBlack, einige
; Seiten zuvor aufgeführt.
; Makrotypen
; ----------
; 1. Die vier nachfolgend genannten anzeigeinternen Steuermakros
; 2. Die NORMAL-Makros (Makro:) zur Ausgabesteuerung der Anzeige
; 3. Die TOUCH-Makros (TouchMakro:) zur Steuerung der Druckfolie
PowerOnMakro: ; wird nach dem Einschalten ausgeführt
#MN 0 ; ruft hier NormalMakro 0 auf
ResetMakro: ; wird nach einem externen Reset ausgeführt
#MN 0 ; ruft hier NormalMakro 0 auf
WatchdogMakro: ; wird nach einem Fehlerfall/Timeout >500ms ausgeführt
#MN 0 ; ruft hier NormalMakro 0 auf
BrownOutMakro: ; wird nach einem Spannungseinbruch <4V ausgeführt
#MN 0 ; ruft hier NormalMakro 0 auf
; -----------------------------------------------------------------------------
; NORMAL-Makros (Makro:) (0-255) zur Ausgabesteuerung der Anzeige. Diese Makros
; können auch von einem evtl. Steuerrechner aufgerufen werden.
; -----------------------
Makro: 0
; -----------------------
#TA ; ESC TA -TerminalModus der Anzeige aus
#DL ; ESC DL -GrafikAnzeige löschen
#YS AUS ; ESC YS 0 -GrafikAnzeige Beeper 0=Aus, 1=Ein
#AS EIN ; ESC AS 1 -Touchfolie Beeper 0=Aus, 1=Ein
#AI AUS ; ESC AI 0 -Touchfeld invertieren
#ZF CHICAGO14 ; ESC ZF Fontnummer
#ZC 0,0,"Eigener Zeichensatz" ; ESC ZC x y "String" (Position in Pixeln)
#ZF meinFont ; ESC ZF Fontnummer (von dem eigenen Font
#ZC 180,40"+--+" ; Die Zeichen im eigenen Font ausgeben
#X 15 ; ESC X zSec -warten bis nächster Befehl
#MN 1 ; ESC MN Macronummer -Makro 1 starten
; -----------------------
Makro: 1
; -----------------------
#AT 00,00,239,127,33,0,"" ; ESC AT xa,ya, xe,ye, DruckCode,LoslassCode,
; "BeschriftungsText"
#YH 0 ; ESC YH hell - Licht auf 0% setzen
#X 15 ; ESC X zSec -warten bis nächster Befehl
#UZ 1,1 ; ESC UZ x,y -Zoom in die jeweilige Richtung
#DL ; ESC DL -GrafikAnzeige löschen
#UI 5,16, 0 ; ESC UI x,y Bildnummer -GoBlack-Bild ausgeben
#ZF Font6x8 ; ESC ZF Fontnummer
#ZC 120,84, "TouchDisplay" ; ESC ZC x y "String" (Position in Pixeln)
#ZF SWISS30B ; ESC ZF Fontnummer
#ZC 120,97, "TERMINAL" ; ESC ZC x y "String" (Position in Pixeln)
#YH 50 ; ESC YH hell - Licht auf 50% setzen
; TOUCH-Makros (TouchMakro:) (0-255) zur Steuerung der Druckfolie
; sie werden ausgeführt, wenn ein zuvor definierter Bereich gedrückt wird.
; siehe: #AT x,y, x,y, DruckCode,LoslassCode, "BeschriftungsText"
; Die Nummer des TouchMakros wird auch zu einem evtl. Steuerrechner gesendet.
; --------------------
TouchMakro: 33
; --------------------
#MN 0 ; ESC MN Macronummer - hier keine weiteren
; Befehle. Es wird bei Makro 0 neu gestartet
|
|
|
|
Die Fontdatei: BeispielFont.FXT Die Datei kopieren und in dem gleichen Verzeichnis ablegen, in dem sich die Datei beispiel.kmc befindet. |
|
|
; Definition eigener Zeichen mit Codenummern zwischen (32 - 255) ; First Nr : 43 ; Last Nr : 45 ; Typ : proportional (unterschiedliche Breite) oder ; mono (immer gleiche Breite) ; .. die Höhe bei beiden immer gleich ; max width : 18 ; height : 20 43 $2B '+' ; Codenummer dezimal, hexadezimal, als ASCII-Zeichen ################## #................# #....######......# #....########....# #...##########...# #..#####..####...# #..######..####..# #..###.....####..# #..#####.#######.# #.######.##.####.# #.###.......####.# #.####..##..####.# #..###..###.####.# #...###########..# #...####...####..# #....##########..# #....#########...# #..####..#######.# #................# ################## 45 $2D '-' ; Codenummer dezimal, hexadezimal, als ASCII-Zeichen ################## #................# #................# #..#..........#..# #..#..........#..# #...#........#...# #....#......#....# #.....#....#.....# #......#..#......# #.......##.......# #......#..#......# #.....#....#.....# #....#......#....# #...#........#...# #..#..........#..# #..#..........#..# #.....##..##.....# #.....##..##.....# #................# ################## |
|
|
|
Die Bilddatei: GoBlack_de.BMP Bildateien im BHL-Format lassen sich mit Hilfe der EA-Kit IDE nicht unmittelbar einbinden. Sie können nur von einem Steuerrechner als Datensatz übertragen werden. Deswegen hier die Bilddatei für obiges Projekt zum Herunterladen. Im Browser das Bild mit der rechten Maustaste anklicken und in dem Verzeichnis abspeichern, in dem sich die Beispiel.KMC-Datei befindet. Sie wird dort als GoBlack_de.BMP dort abgespeichert. Das Bild besitzt eine Größe von 229 x 60 Pixeln und sieht deswegen hier auf der HTML-Seite etwas kümmerlich aus. |
|
|
|
Beispiel.KMC -Quelltextdatei
compilieren und übertragen.
Nachdem die Elemente zusammengetragen
sind, kann die Datei Beispiel.KMC nun compiliert werden. Hierzu
wird im KitEditor der Menüpunkt [Compile] und dort das
einzige Untermenü [Compile F5] aufgerufen. F5 bedeutet,
dass man auch gleich die Funktionstaste [F5] hätte drücken
können um den Compiler zu starten.
Der Compiler bindet die Font-Dateien und das Bild ein und übersetzt die Datei Beispiel.KMC. Das Resultat seiner Arbeit wird auf dem Bildschirm des Simulators dargestellt. Treten Fehlermeldungen auf, diese lesen. Klickt man sie an verweisen sie auf den Ort des Fehlers. Im vorliegenden Fall können sich Fehler auf den Ort des Verzeichnisses für die Font-Dateien \FONTS beziehen. Dann muss die Pfadangabe entsprechend geändert werden. Bei relativen Pfadangaben bedeutet ..\ , vom momentanen Ort, ein Verzeichnis zurückgehen. |
![]() Das Bild zeigt ein Modell für Experimente mit dem EA eDIP240 Touchdisplay Quelle: GoBlack-Modelle |
|
|
.de