Pollin Display TG12864B-03

Gast #2089424
Lesenswert?

Hallo

Nachdem ich als passiver Mitleser schon des öfteren von diesem Forum 
profitiert habe, dachte ich es wäre Zeit mich einmal anzumelden und 
vorzustellen.

Ich heiße Christian bin 42J. u. wohne in NÖ.

Nachdem ich gerade an einer kleinen Bastelei mit einem TG12864 Display 
v. Pollin arbeite, und zu diesem Zweck ein kleines Programm geschrieben 
habe mit dem man aus Bitmaps mit 128x64 Pixeln Größe und zwei Farben 
eine Liste von Hex-Werten generieren kann, die sich über Copy&Paste 
direkt in ein AVR-Assemblerprogramm einbinden lassen, dachte ich 
vielleicht kann das ja auch jemand anderer einmal brauchen.

Eine kleine Datei zum testen (550.bmp) ist auch dabei.

Deshalb stelle ich das Progrämmchen gern hier zur Verfügung.
Fragen, Anregungen u.dgl. sind natürlich gern gesehen.

Schöne Grüße
Christian
Angehängte Dateien:
Gast #2089471
Lesenswert?

Gar nicht so schlecht das Teil. Paar kleine Macken aber besser
als die Bitmap von Hand in HEX umzuwandeln.

In welcher Sprache ist das programmiert?

Es läuft jedenfalls noch unter W98;)

Magst du den Sourcecode rausgeben?

Eine C-Code Ausgabe wäre nett.
Also:

0x30, 0x40,

statt .db und $ also 0x und Komma am Ende.

Wie sind die Pixel in den Bytes angeordnet?
#2089530
Lesenswert?

@Spess

Ist das Programm von Dir oder gibt es das irgendwo im Web ?

@All

Gibt es sowas schon fertig, darf auch was kosten, wuerde mich auch mal 
interessieren.
Wenn Ihr doch sowas schreibt, warum stellt ihr es dann nicht zur 
Verfuegung, dass alle was davon haben ? Finde ich echt schade.
Gast #2089808
Lesenswert?

holger schrieb:
> Gar nicht so schlecht das Teil. Paar kleine Macken aber besser
> als die Bitmap von Hand in HEX umzuwandeln.

Danke. Wenn Du mir die Macken sagst, kann ich's evtl verbessern.

> In welcher Sprache ist das programmiert?
> Es läuft jedenfalls noch unter W98;)

Lazarus (Freepascal) eine freie Delphinachbildung.

> Magst du den Sourcecode rausgeben?

Nicht im Augeblick. Aber nicht weil er ein Geheimnis wäre, sondern weil 
ein Tool für den Eigenbedarf weder sauber noch strukturiert programmiert 
ist, und somit schlechtlesbar. Aber ich werde daran denken.

> Eine C-Code Ausgabe wäre nett.

Das läßt sich machen, glaubst Du die Intel-HEX Ausgabe braucht überhaupt 
jemand?

> Wie sind die Pixel in den Bytes angeordnet?

Eigentlich so wie der Prozessor im Display weiterzählt. Es beginnt bei 
Y0 Page0, zählt Y bis 63 ehe es die Page erhöht. Das erst für die linke 
und anschließend für die rechte Bildschirmhälfte.
(Ich hab den Rumpf des AVR-Programms angehängt der die Ausgabe macht)
Angehängte Dateien:
Gast #2090001
Lesenswert?

Hi

>Lazarus (Freepascal) eine freie Delphinachbildung.

Endlich mal jemand der eine vernünftige Programmiersprache benutzt. 
Meins ist mit Delphi6 geschrieben, ca. 35000 Codezeilen (nur wegen dem 
Nachmittag).

>Was kann das Ding so alles (in groben Zügen)?

Vielleicht erst mal zum LCD-Teil. Das ist 'projektorientiert'. Also ich 
kann Ausgabedateien (.asm) erzeugen und diesen Bitmaps zuordnen. Für das 
ganze Projekt gelten dann die Einstellungen wie Byte senkrecht oder 
waagerecht, Anzahl der Bits usw. Außerdem kann ein Includefile erzeugt 
werden, das alle asm-Dateien in das AVR-Programm einfügt.

Jedes Bitmap bekommt ein Label (default Dateiname). Wahlweise können 
noch Breite, Höhe und Position (X,Y) eingefügt und Assembler-Direktiven 
für bedingte Assemblierung (.if ... .endif) und eine Message erzeugt 
werden.
Invertiert kann jedes Bitmap einzeln und zusätzlich alle 
Projekt-Bitmaps.

Das gesamte Programm beinhaltet Berechnungen für serielle Schnittstellen 
(UART,SPI, I2C), Timer, einen 'Taschenrechner' mit µC-Befehlen 
(com,neg...,shl,shr..., mul,fmul...), Codegenerator für 7/14/16-Segment- 
und Matrixanzeigen, Codegenerator (Anhang hat ca. 10s gedauert), 
Disassembler, Mini-Terminal....

MfG Spess
Angehängte Dateien:
Gast #2090600
Lesenswert?

Der nächste Schritt.

Ich habe das Programm um die Möglichkeit erweitert beliebige 
Windows-Fonts einzulesen und diese Zeichen für Zeichen im schon zuvor 
verwendeten Format abzuspeichern. Dabei sind die ersten beiden Byte 
jeweils Breite und Höhe des Zeichens, anschließend Folgen die Daten in 
der gleichen Anordnung wie schon zuvor.

Keine Ahnung ob diese Vorgehensweise klug bzw. zielführend sein wird, 
stelle ich Sie euch hier zur Verfügung und freue mich über Kommentare 
und Anregungen ...

Grüße
Christian
Angehängte Dateien:
Gast #2090607
Lesenswert?

Hi

>anschließend Folgen die Daten in der gleichen Anordnung wie schon zuvor.

Beachte bitte, das der AVR-Assembler eine ungerade Anzahl von .db-Werten 
in einer Zeile mit $00 auf eine geradzahlige Anzahl ergänzt.

MfG Spess

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren