Forum: Projekte & Code Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus


von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Wie der Betreff schon sagt, die Schaltung ist extrem einfach (nur ein 
mega8 und ein Spannungswandler auf -20V) und kann 40x20 Zeichen Text auf 
einem 320x240 LCD anzeigen. Für eine hohe Geschwindigkeit ist die 
Software in Assembler geschrieben.
Allerdings hat die Schaltung aber auch ihre Grenzen: Es ist nur Text 
möglich, keine Grafik, nichtmal benutzerdefinierten Zeichen.

Momentan wird eine Schriftart von 8x12 verwendet, es kann auch auf 8x10 
umgeschaltet werden (mit CSize=10), was dann 40x24 Zeichen ergibt, 
allerdings sieht diese Schriftart meiner Meinung nach nicht gut aus.
Der eingebaute Befehlssatz ist angelehnt an die Befehle der seriellen 
LCDs von Crystalfontz, da diese von vielen Programmen wie LCDsmartie 
oder LCDHype unterstützt werden. Im Moment ist 57600Baud eingestellt, 
für maximale Kompatibiliät mit anderen Programmen sollte man auf 
19200Baud umstellen.

Momentan werden die Zeichen via Uart empfangen. Um Wartezeiten zu 
vermeiden ist ein 32Byte empfangs FIFO verhanden, das im Normalfall 
eigentlich nie überlaufen sollte, außer man sendet dauerhaft solche 
Befehle wie alles löschen (Befehl 12).
Der Datenemfpang kann auch leicht auf andere Schnittstellen (SPI, I2C 
usw.) umgestellt werden, daher sind die Empfangsfunktionen in 
uart_getchar und UART_RX_int ausgelagert.
Da die LCD Ansteuerung im Interrupt erfolgt, kann man sich bei den 
Empfangsfunktionen voll austoben, ohne das man die LCD Ansteuerung stört 
(solange man nicht zuviel Zeit im Interrupt verbringt).

Zur Schaltung ist eigentlich nicht viel zu sagen, außer vielleicht zur 
VLCD Spannungsabschaltung. Über den LCD OnOff Pin schalte ich einen 
Optomosfet um die negative Spannung für das LCD zu schalten. Anstelle 
des Optomosfets kann man auch Transistoren verwenden, ist dann nur ein 
kleinwenig aufwendiger. Notfalls kann kan die Abschaltung auch ganz 
weglassen.
Die VCLD Spannung ist über PWM per Software ein wenig regelbar.

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Hier noch ein Foto von dem Aufbau. Wie man sieht: Auf der Platine ist 
wirklich fast nichts drauf.

von Numen B. (numen)


Lesenswert?

Kann man das ding nicht so umbauen, dass man auch bilder damit in 
LCDHype übertragen kann? so wie dein grosser Display controller. Am 
besten über usb.

Gruss Numen

von Christian J. (elektroniker1968)


Lesenswert?

Kannst Du Bezugsquellen und Datenblätter für das Display nennen?

von Torsten (Gast)


Lesenswert?

Das sieht ja schon mal sehr vielversprechend aus. Der genaue Displaytyp 
würde mich auch interessieren.

von Numen B. (numen)


Lesenswert?


von Kai B. (kaib) Benutzerseite


Lesenswert?

Hallo

das Blaue LCD was es momentan bei Pollin für 19Euro gibt hat übrigens 
ein Displaycontroller drauf es handelt sich um den S1D13305 das 
datenblatt was es zur Version B bei Winstar gibt ist allesdings für den 
neuen Epson Controller S1D13700 gedacht. Zum Spielen hab ich mir ein 
Pollin Programm angepasst.
Das einzige was  stört ist das flimmern des Displays beim Daten 
übertragen.
Kann heute abend bei bedarf gerne mal ein Bild von anhängen.

MfG Kai

von Benedikt K. (benedikt)


Lesenswert?

Ich fang mal oben an:

Numen B. wrote:
> Kann man das ding nicht so umbauen, dass man auch bilder damit in
> LCDHype übertragen kann? so wie dein grosser Display controller. Am
> besten über usb.

Nein. Denn dazu fehlt ganz einfach der Speicher (8kByte für 320x240). 
Das funktioniert nur mit den ganz großen AVRs, oder einem mit externem 
RAM. Dann ist man wieder bei dem großen LCD Controller.
Ich wollte die Schaltung jetzt aber so einfach wie möglich machen, und 
das geht leider nur im Text Modus. Ein serielles oder I2C 40x20 Display 
ist aber auch schon ganz nett.

Christian J. wrote:
> Kannst Du Bezugsquellen und Datenblätter für das Display nennen?

Pollin, die Links hat Numen ja schon angegeben.
Die NAN YA LCDs habe ich beide schon getestet, die sind meiner Meinung 
nach nicht schlecht (guter Kontrast).
Beide haben die gleiche Pinbelegung wie das hier:
http://www.mark-products.com/pdf/g320x240/159/159%20spec.pdf

Das Sharp LCD ist auch nicht schlecht, benötigt aber die ganzen 
Teilspannungen einzeln. Ist ein wenig aufwand mit ein paar OPs. 
Ansonsten ist es auch nicht schlecht, läuft aber mit 3,3V anstelle von 
5V.

Auch wenn ich dieses Display von Pollin nicht ausprobiert habe, die 
blau/weißen gefallen mir persönlich nicht so gut, da deren Kennlinie 
etwas komisch ist. Die Schwarz/weißen gehen von schwarz nach weiß und 
dann zu gelb (wenn man den Kontrast zu hoch einstellt), während die blau 
weißen von blau zu schwarz und dann erst nach weiß wechseln (und danach 
auch ins gelbe gehen). Man hat also quasi einen Umweg beim fabwechsel, 
und das sieht teilweise komisch aus.

Kai B. wrote:
> Das einzige was  stört ist das flimmern des Displays beim Daten
> übertragen.

Das ist diese dumme Kennlinie die ich beschrieben habe und ein "Bug" im 
13505: Sobald der CS\ Pin auf Low gezogen wird, werden keine Daten mehr 
zum Display ausgegeben, sondern nur noch 0en gesendet. Dadurch spart man 
sich ein Busy Flag wie beim T6963 oder KS0108. Ich bin daher schnell auf 
andere Controller übergewechselt. Der 13700 ist da etwas besser, dafür 
aber etwas empfindlicher gegenüber Spikes auf den Leitungen.

von Numen B. (numen)


Lesenswert?

@benedikt

wie muss man den grossen kontroller anpassen, dass er mit dem display 
funktioniert? bei mir ist es ein sp14q002.

Also damit ich grafik darstellen kann.

Gruss Numen

von Benedikt K. (benedikt)


Lesenswert?

Numen B. wrote:

> wie muss man den grossen kontroller anpassen, dass er mit dem display
> funktioniert? bei mir ist es ein sp14q002.
>
> Also damit ich grafik darstellen kann.

So:
http://www.mikrocontroller.net/attachment/8471/lcd4bit.gif
http://www.mikrocontroller.net/attachment/8489/lcdcon_ft245_4bit.asm

von Numen B. (numen)


Lesenswert?

und wie wird da usb angeschlossen? über nen ft245?

gruss numen

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ich hatte schon mal überlegt, die 8K RAM für ein quadratisches Bild, 
also etwas Oszilloskop-artiges auszunutzen und den Rest des LCD-Bilds 
aus dem EEPROM zu holen.
Da könnten neben dem schnell veränderlichen Diagramm irgendwelche 
einstrellbaren Parameter stehen, die nach jeder Änderung ins EEPROM 
übernommen werden. Damit werden die 100000 Zyklen nicht so schnell 
erreicht. Das geht am einfachsten mit LCDs die im Hochformat angeordnet 
sind, also 320 Zeilen zu je 240 Pixeln. Dann muß die Umschaltung vom 
EEPROM aufs Ram nur einmal pro Frame passieren.
Mit 8k EEPROM wären sogar 4 Grauwerte möglich für das Menü, denn QVGA 
sind ja nur 9600 Byte.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

nein, 4 K EEPROM haben die ATmega1280 oder 2560, damit sind dann aber 
wie gesagt 2 Bit pro Pixel möglich.

von Numen B. (numen)


Lesenswert?

Für was ist eigentlich der hc157? kann man das ganze nicht einfach als 
4bit version aufbauen? also nur 4 datenleitungen und 4 dann hinten den 
mux weg lassen?

Gruss numen

von Benedikt K. (benedikt)


Lesenswert?

Numen B. wrote:
> Für was ist eigentlich der hc157?

Zum Umschalten zwischen High und Low Nibble eines Bytes.

> kann man das ganze nicht einfach als
> 4bit version aufbauen? also nur 4 datenleitungen und 4 dann hinten den
> mux weg lassen?

Könnte man. Allerdings muss man dann die Software anpassen, und man 
verschwendet die Hälfte des Speichers.

von Numen B. (numen)


Lesenswert?

der speicher ist nicht das Problem

kannst du mich mal in icq kontaktieren? 199567474

Gruss Florian

von Numen B. (numen)


Lesenswert?

würdest du die software entsprechend anpassen? könnte dir dafür ein 
display geben.

Gruss

von MichiB (Gast)


Lesenswert?

Hallo zusammen,

bin gerade auf der Suche nach einem großen Display.

@Kai.B
   Welches Pollin Display meinst du? Das einzige blaue, welches ich
   gefunde habe, hat laut Beschreibung keinen Controller.

@Benedikt K.
   Hast du deine Software von anderen Sourcen abgeleitet?
   Habe keine Ahnung von AVRs und möchte mich nicht durch die
   Assembler Syntax kämpfen.

Eigentlich würde es auch ein alphanumerisches Display tun
allerdings wird es ab 8x40 Zeichen sehr sehr übersichtlich in
der Auswahl.

Habe auch schon über 4 S65-Displays nachgedacht, aber als total 
bescheuert
verworfen (sieht halt auch so aus).

von Kai B. (kaib) Benutzerseite


Angehängte Dateien:

Lesenswert?

Es ist das Grafik-LCD WINSTAR WG320240B-FMC-VZ Best.Nr. 120 565
Ein datenblatt findet man ansonsten über archive.org es sollte halt im 
Datenblatt SED1335 drinstehen. Die Belegung stimmt dann auch.
Ich habe mal ein paar Bilder angehängt vom dem Blauen Display.
Ich finde es hat so einen Guten Kontrast und funktioniert auch noch mit 
3,3Volt da ich das Display an einem Flexis HCS08 angeschlossen habe.

MfG Kai

von MichiB (Gast)


Lesenswert?

Danke KAI,

da zeigt sich mal wieder, dass man die Angaben von Pollin getrost in die 
Tonne kloppen kann.

Werde ich mal ordern, für den Preis unschlagbar.

Hast Du zufällig nen Datenbaltt (archive.org mag mich nicht) oder Code 
zur Hand?

Der Kontrast ist schon sehr gut!

von Kai B. (kaib) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hi
hab das Datenblatt mit dem SED1335 Controller angehängt die 
Anschlussbelegung stimmt soweit. Das Display hätte gerne den 8080 Modus 
ist ne Lötbrücke mit nem 0R Widerstand. Die Negative Spannung für den 
Kontrast wird mit einem DCDC vom Display bereitgestellt. Einfach ein 
Poti an GND und Vee und Mittelabzapfung an V0. Code hab ich jetzt nicht 
direkt, aber ich habe ein Pollin Testprogramm etwas angepasst um ein 
bissel rumzuspielen. Kann dieses ja gerne mal bereitstellen.

Mfg Kai

von Numen B. (numen)


Angehängte Dateien:

Lesenswert?

@benedikt

kannst du das schema mal überprüfen plz und kontrollieren, ob das so 
passt?

Danke

Vorallem die belegung des LCD's prüfen, bin mir nicht sicher ob ich die 
signale richtig zugeordnet habe.



Gruss Numen

von Numen B. (numen)


Angehängte Dateien:

Lesenswert?

und hier noch das datenblatt

von Numen B. (numen)


Angehängte Dateien:

Lesenswert?

Hier noch als Bild, für die nicht eagle benutzer

Gruss Numen

von Christian J. (elektroniker1968)


Lesenswert?

Hallo Benedikt,

ich wollte mit das NÁN Ya bestellen. Weisst Du zufällig welcher Epson 
Controller da ansteuern kann? Ich glaube wir haben mal über den
S1D113705 gesprochen. Bei dem bin ich mir jedoch nicht sicher. Meine 
640x480m Displays habe ich wegen fehlender Backlight wieder 
eingestampft.

PS: Hat mal jemand versucht orginal Datenblätter für diese NANYA 
aufzutreiben? Ist ja der Horror.

Gruss,
Christian

von Benedikt K. (benedikt)


Lesenswert?

Numen B. wrote:
> @benedikt
>
> kannst du das schema mal überprüfen plz und kontrollieren, ob das so
> passt?

Sollte in etwa passen. Wenn du für den FT245 einen FT245RL einsetzt, 
brauchst du keinen Quarz.

Christian J. wrote:
> ich wollte mit das NÁN Ya bestellen. Weisst Du zufällig welcher Epson
> Controller da ansteuern kann? Ich glaube wir haben mal über den
> S1D113705 gesprochen. Bei dem bin ich mir jedoch nicht sicher.

SED1330, SED1335, S1D13305 sind die Klassiker für 320x240. S1D13700 ist 
der Nachfolger von denen und dürfte die beste Wahl sein.

> PS: Hat mal jemand versucht orginal Datenblätter für diese NANYA
> aufzutreiben? Ist ja der Horror.

Ich konnte nichtmal eine Webseite von der Firma finden.
Nach ein paar Stunden Suche hatte ich keine Lust mehr. Dann habe ich 
alle anderen NAN YA Datenblätter runtergeladen die ich finden konnte, 
und ein wenig ausprobiert. Das angegeben Datenblatt ist das einzige mit 
gleicher Pinbelegung das ich gefunden habe.

von Christian J. (elektroniker1968)


Lesenswert?

Hallo Benedikt,

dch die Firma gibt es noch aber sie stellt keine Displays mehr her.

Direkte Frage: Da ich den S1D13705 bereits gekauft habe und weiss wie er 
innen funktioniert, bzw ich Layout etc alles fertig habe, glaubst Du der 
kann das auch? Er bietet ja Support für "Passive Displays 320x240" an. 
Ich weiss jetzt nicht ob dieses NAN Dingsda ein passive Display ist oder 
TFT.

von Numen B. (numen)


Lesenswert?

@benedikt

würdest du die software an meinen schaltplan anpassen, wenn ich dir 
dafür ein farb lcd gebe?

Gruss Numen

von Christian J. (elektroniker1968)


Lesenswert?

Ichn weiss, wir ballern Dich mit Fragen tot :-) Aber Du bringst auch 
immer so nette Sachen hier ;-)

Aber auch an die anderen: Welches von den Pollin Displays der Fa NAN 
wäre denn besser hinsichtlich Ablesbarkeit: Das graue mit 
Hintergrundbeleuchtung oder das schwarze?

Drehe derzeit etwas ab, weil ich durch die Vielfalt der Displays nicht 
mehr durchblicke und meine schöne Ansteuerplatine nicht verwerfen will, 
die seinerzeit für ein altes Monochrom 640x0480 gemacht wurde.

von Benedikt K. (benedikt)


Lesenswert?

Christian J. wrote:
> dch die Firma gibt es noch aber sie stellt keine Displays mehr her.

Ist das diese Firma ?
http://www.npc.com.tw/

> Direkte Frage: Da ich den S1D13705 bereits gekauft habe und weiss wie er
> innen funktioniert, bzw ich Layout etc alles fertig habe, glaubst Du der
> kann das auch? Er bietet ja Support für "Passive Displays 320x240" an.

Das funktioniert. Damit sind dann sogar 16 Graustufen möglich (zumindest 
theoretisch.) Meine NAN YA LCDs zeigen ein deutliches Muster wenn ich 
Graustufen anzeige. Entweder sind das Reste von Druckstellen aufgrund 
der super Verpackung von Pollin, oder der Hersteller hatte ein kleines 
Qualitätsproblem bei der Fertigung. Zum Glück ist der Kontrast so gut, 
dass man diese nicht sieht, wenn man das Display ganz normal 
Schwarz/weiß ohne Graustufen betreibt.

> Ich weiss jetzt nicht ob dieses NAN Dingsda ein passive Display ist oder
> TFT.

passive Singlescan mit 4bit (oder so ähnlich heißt das in dem 
Datenblatt).

> Aber auch an die anderen: Welches von den Pollin Displays der Fa NAN
> wäre denn besser hinsichtlich Ablesbarkeit: Das graue mit
> Hintergrundbeleuchtung oder das schwarze?

Schwer zu sagen. Ich würde schwarze nehmen, das gefällt mir persönlich 
besser, und der Kontrast ist dank weiß auf schwarz meiner Meinung nacht 
nicht schlecht. Das graue hat aber den Vorteil, dass es auch bei hellem 
Umgebungslicht noch ablesbar ist, da es das Umgebungslicht ausnutzt, 
während das schwarze nur die Hintergrundbeleuchtung nutzt.


Numen B. wrote:
> @benedikt
>
> würdest du die software an meinen schaltplan anpassen, wenn ich dir
> dafür ein farb lcd gebe?

Nein. Ich hab von letztem mal noch kein Display bekommen. Da von 
angeblich 3 weggeschickten Pakten bei mir keines angekommen ist, naja...

von Numen B. (numen)


Lesenswert?

display voraus und bei erhalt passt du das zeug an?

von Christian J. (elektroniker1968)


Lesenswert?

Ja, das ist die Firma. Habe der mal ein Mail geschrieben:

http://www.eu.nanya.com/index.aspx

Danke für die Infos, werde dann mal drangehen meinen Grafikcontroller 
mit PIC18 auf ARM umzurouten und das Display Interface etwas 
universeller gestalten. Leider ist die ganze Chose mit Grafik Software 
ja doch viel Arbeit, die ich gern umgehen würde. Naja, vielleicht reicht 
ja auch erstmal Textmodus.....

Eben mal bei Pollin bestellen, am besten beide Displays...

von Benedikt K. (benedikt)


Lesenswert?

Numen B. wrote:
> display voraus und bei erhalt passt du das zeug an?

Ja, OK.

von Numen B. (numen)


Lesenswert?

gut schick mir deine adresse in icq. thx

von Numen B. (numen)


Lesenswert?

gib mir deine adresse ;) sonst reichts heute nicht mehr

gruss

von Manji (Gast)


Lesenswert?

@kaib: Könntest du das Pollin testprogramm bitte einmal hochladen? MIch 
würde das Winstar Display auch interessieren. Wäre echt nett.

von Gast (Gast)


Lesenswert?

Hallo Benedikt,
die Schaltung sieht ja wirklich einfach aus. Nur finde ich nicht den 
Schaltplan für den Nachbau und auch die Angabe für den Spannungswandler! 
Ist der in einem anderen Forum?

von Benedikt K. (benedikt)


Lesenswert?

In der zip ist der Schaltplan enthalten: lcdcon_txt.gif

von Gast (Gast)


Lesenswert?

Danke! Bei der Datei hatte sich bei mir immer nur der Texteditor 
geöffnet.

von Christian J. (elektroniker1968)


Lesenswert?

Hallo Benedikt,

hast Du vielleicht einen Schaltplan für das CCFL Backlight? Ich möchte 
das mit auf die Platine bringen. Wie hast Du das denn gemacht?

Gruss,
Christian

von Benedikt K. (benedikt)


Lesenswert?

Ich verwende entweder die Linfinity CCFL Inverter die es mal bei Pollin 
für 1,95 gab, oder andere von Hitachi (gab es glaube ich mal bei 
Oppermann), die noch besser zu dem LCD passen, und sogar den passenden 
Anschluss für den Stecker von der LCD CCFL haben. Selber bauen würde ich 
so einen Inverter nicht, dazu ist der zu aufwendig und man bekommt ihn 
zu billig als das sich das lohnen würde.

von uCler (Gast)


Lesenswert?

Ihr könnt Euch auch mal den TDK CXA-L10A anschauen. Bei Nanya heisst das 
Ding ADL-10A

Gruss Udo

von MichiB (Gast)


Lesenswert?

Hi,

kurze Frage bezüglich der Schaltung.

Auf den Winstar LCd von Pollin ist doch ein DC-DC Wandler für die -20V
LCD Driving Spannung schon drauf, oder ?

von Kai B. (kaib) Benutzerseite


Lesenswert?

Hi,
also wenn du das Blaue meinst ja, das Panel hat schon einen DCDC drauf 
für
die Negative Spannung.

MfG Kai

von MichiB (Gast)


Lesenswert?

Danke Kai,

noch ne Verständinsfrage:
- Der zweipolige Stecker dient doch der Hintergrundbeleuchtung.
  Welche Spannung wird hier benötigt?
- Läßt sich auch ohne Hintergrundbeleuchtung ausreichend die Schrift
  erkennen?

Danke

von Benedikt K. (benedikt)


Lesenswert?

Ja, der ist für das CCFL Backlight. Ohne dieses kann man nahezu nichts 
erkennen, außer man verwendet eine extrem helle Beleuchtung von vorne.

von MichiB (Gast)


Angehängte Dateien:

Lesenswert?

Hi Benedikt,

danke für die Antwort.

Habe gerade mal nach nem Inverter geschaut.

Beim großen C gibt es den im Anhang befindlichen Inverter.
Kann ich den nutzen?

Würde es eigentlich auch ein Inverter einer Billi-Kaltlichkathode tun?
http://www.conrad.de/goto.php?artikel=530016

von Benedikt K. (benedikt)


Lesenswert?

Beide sollten funktionieren. Falls es zu hell/dunkel ist, kann man 
notfalls noch die Betriebsspannung von dem Inverter variieren.

von Kai B. (kaib) Benutzerseite


Lesenswert?

Als Inverter eignen sich auch die CCFL Teile für den PC die es bei 
pollin für 4.95 gibt. Lustig ist das Der Stecker richtig gut passt.

MfG Kai

von Christian J. (elektroniker1968)


Lesenswert?

Welche denn?

Die hier: Best.Nr. 530 858

Einzeln gibt es derzeit wohl keine.

von MichiB (Gast)


Lesenswert?

Ich denke er meint diese hier:

700 637

von MichiB (Gast)


Lesenswert?

Hi,

es geht nochmal um das blaue Winstar Display:

- Wo kann ich zwischen 8080 und 6800 umschalten (welcher Widerstand) ?
- Was passiert wenn ich V0 floatend lasse ?

Danke!

von MichiB (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

kann mir mal jemand die Initialisierung posten.
Bekomme beim dem Einschalten nach der Initialisierung
nur das Bild oben.

Meiner Erfahrung nach sollte zu diesem Zeitpunkt eher "Kraut und
Rüben" ausgeben werden.

von MichiB (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich denke, dass immer noch einen Fehler in der Initialisierung habe.
Es geht um das blaue Winststar.

Vielleicht kann da mal jemand drüberschauen:

#define LCD_SYS_CMD    0x40
#define LCD_SYS_CMD1    0x30
#define LCD_SYS_CMD2    0x87
#define LCD_SYS_CMD3    0x07
#define LCD_SYS_CMD4    0x27
#define LCD_SYS_CMD5    0x39
#define LCD_SYS_CMD6    0xEF
#define LCD_SYS_CMD7    0x28
#define LCD_SYS_CMD8    0x00

Nachdem Initialisieren sieht der Screen wie gezeigt aus. Auf die freien 
Bereiche kann ich auch zugreifen (löschen und beschreiben). Nur auf die 
Balken kann ich nicht zugreifen.

Jemand eine Idee?

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

MichiB wrote:
> Ich denke er meint diese hier:
>
> 700 637

Kann jemand bestätigen das das Ding ne passenden Inverter für CCFL 
Röhren enthält?

von Sebastian (Gast)


Lesenswert?

Habe keinen zerlegt, aber die Chancen sind gut, denn die abgebildete 
Röhre ist eine CCFL-Röhre. Ich habe mal beim großen C (im Laden, nicht 
im Versand) mit 2 Japantransistoren, Übertrager und ein paar 
Kondensatoren bestückte Platinen gekauft, die offensichtlich das 
Innenleben der abgebildeten schwarzen Box darstellen. Diese eignen sich 
sehr gut zur Speisung einer kleinen CCFL-Röhre, wie sie in diesen 
Displays enthalten ist.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Dachte jemand hat das vieleicht mal ausprobiert :)

von Kai B. (kaib) Benutzerseite


Lesenswert?

Ich betreibe die CCFL Röhrer von dem Display mit so nem Inverter hab 
allerdings die RGB Röhren genommen.

@MichiB in was für einem Modus betreibst du dein LCD?  Wenn du es im 
Text Modus betreibst kann ich wenn du willst mal mein Testprogramm fürn 
Textmode Hochladen. Ich wollte auch mal das Umgebastelte pollin 
Testprogramm hochladen, naja ich schau mal das ich gegen später Dazu 
komme.

MfG Kai

von MichiB (Gast)


Lesenswert?

@Kai,

das wäre super wenn du es mal uploaden könntest.

von Michael (Gast)


Lesenswert?

>> Kann man das ding nicht so umbauen, dass man auch bilder damit in
>> LCDHype übertragen kann? so wie dein grosser Display controller. Am
>> besten über usb.

> Nein. Denn dazu fehlt ganz einfach der Speicher (8kByte für 320x240).
> Das funktioniert nur mit den ganz großen AVRs, oder einem mit externem
> RAM. Dann ist man wieder bei dem großen LCD Controller.


Evtl. könnte man ein serielles FRAM (von Ramtron, gibts mit 32 kBytes, 
8-pinniges Gehäuse) per SPI an den AVR anschließen. Die Schaltung wäre 
dann nur minimal größer, man könnte aber Grafik darstellen. Durch die 
Hardware-SPI im AVR könnte man das FRAM bei 16 MHz AVR-Clock mit 8 MHz 
SPI-Takt ansteuern und käme somit auf eine Zeit von 1 µs pro Byte.

von Gerhard (Gast)


Lesenswert?

Hallo,

habe mir ein Nan Ya LCD von Pollin gekauft
http://www.pollin.de/shop/detail.php?pg=OA==&a=OTM1OTc4OTk=&w=OTg4OTk4&ts=20
und möchte das mit diesem Controller verbinden.
Allerdings ist mir die Anschlußbelegung noch nicht so ganz klar.
Lt. dem weiter oben angegebenen Datenblatt sind die LCD Anschlüsse
 1 FRAME -> FLM
 2 LOAD -> ?
 3 CP -> ?
 4 VDD -> 5V
 5 VSS -> GND
 6 VEE -> VLCD
 7 D0 -> D0
 8 D1 -> D1
 9 D2 -> D2
10 D3 -> D3
11 ONOFF
12 NC

Für Pin 2+3 bleiben noch "M" und "PCLK" und der nicht beschriftete Pin16 
vom Mega8.
Kann mir da mal jemand auf die Srünge helfen.

MfG
Gerhard

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Ich habe mal noch ein paar weitere Bezeichnungen hinzugefügt.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hi Benedikt,

wenn ich das richtig sehe, beginnt die Displayausgabe links oben.
Ziehst Du ein Positionszeiger in Erwägung?
Also Text geziehlt in Zeile und Spalte beginnen zu lassen?

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Meinst du ein Setzen des Cursors ?
Das geht mit 17,Spalte,Zeile

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Ja genau,

also 17,00,00 wäre dann links oben?
muss dann eine Pause eingelegt werden, damit der eigentliche Text
vom Cursor unterschieden wird? Hab ich Protokollbeschreibung überlesen?
Würdest Du Dein Code auch für ein Grösseres Textformat erweitern.


Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> also 17,00,00 wäre dann links oben?

Ja, und 17,39,19 ganz rechts unten.

> muss dann eine Pause eingelegt werden, damit der eigentliche Text
> vom Cursor unterschieden wird?

Nein, alles < 32 wird als Befehle (eventuell gefolg von einer bestimmten 
Anzahl an Parametern) und alles ab 32 aufwärts als Daten interpretiert.

> Würdest Du Dein Code auch für ein Grösseres Textformat erweitern.

Meinst du mehr Zeichen, oder eine größere Schriftart ?

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@ Benedigt,
ich meinte grössere Schriftart für Messergebnisse. Bz: 22,2 V
Es bräuchten nur die Ziffern 0...9 und Komma; V; A; °C; W für eine 
Grossausgabe hinterlegt werden.
Würde son Teil erst mal aufbauen, und mich dann bei Dir melden.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Sollte möglich sein. Die Software ist an sich flexibel geschrieben, es 
sollte also reichen die größere Schriftart zu erzeugen und ein paar 
defines anzupassen. Das kann ich machen. An welche Schriftgröße hast du 
gedacht ?

z.B. 32x48 pro Zeichen benötigen 192Byte pro Zeichen, davon passen etwa 
40 Zeichen in den Speicher, was für alle Großbuchstaben + Zahlen + ein 
paar Sonderzeichen reicht. Notfalls müsste man auf den mega168 wechseln.
Auf dem Display könnte man dann 10x5 Zeichen darstellen.

von Gast (Gast)


Lesenswert?

Kann man auch Grafik, also Punkte und Linien darstellen, oder ist es 
nicht möglich, bzw. wie, so ähnlich wie bei einen S65, bloss 2 Farben ?

von Benedikt K. (benedikt)


Lesenswert?

Man kann auf dem Display Grafik darstellen, allerdings nicht mit dieser 
Software (da der AVR zu wenig RAM hat). An sich sind nur 2 Farben 
möglich, mit entsprechender Ansteuerung kann man aber bis zu 16 
Graustufen erreichen.

von Gast (Gast)


Lesenswert?

Könnte man Grafik mit der Schaltung aus diesen Thread machen:

LCD Controller für 640x480 LCD mit mega8515

http://www.mikrocontroller.net/attachment/8452/LCD.gif

Und das würde gehen bei den 320x240 Pixeln auch bei den obrigen Displays 
von Pollin?

von Benedikt K. (benedikt)


Lesenswert?

Ja, das geht. Es gibt dafür auch irgendwo in dem 640x480 Thread eine 
Software + angepasste Schaltung für das 320x240 LCD.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,
wenn ich das richtig sehe, sind 2 Formate in deinen Code enthalten,
ich würde mich für ein Format entscheiden und das "Grossformat" mit
zunehmen.
Es sollen wirklich im Grossformat 3 Ziffern,Komma, Masseinheit 
dargegestellt werden. Also Platz für eine 6 Stellige Anzeige
(3xZiffer,Komma,Leer,Masseinheit = 6)
Schriftgrösse: möglichst gross, sollte aber am Rand nicht "anecken"
Muss ich nach dem Testaufbau sehen.
Kursorfunktion geht im Grossformat natürlich nicht.
Die Schaltung mit dem m8 sollte beibehalten werden.
Umschaltung über Pin oder Befehl.
Wie gesagt wenn Du Interesse dazu hättest, melde ich mich dann bei Dir.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> wenn ich das richtig sehe, sind 2 Formate in deinen Code enthalten,

Das siehst du nur halb richtig.
Es wird nur eines von beidem verwendet, welches legt man beim Erstellen 
des Programms fest.

> Umschaltung über Pin oder Befehl.

Was meinst du mit Umschaltung ?

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,
>Es wird nur eines von beidem verwendet, welches legt man beim Erstellen
>des Programms fest.
ich dachte beide Formate werden im Controller geladen.

>Was meinst du mit Umschaltung?
Ich benötige 1x Normalformat mit Kursorfunktion(Ausgabe auf mehrehre 
Zeilen)
bzw umschalten auf Grossformat für die paar Zeichen.

Jetzt haben wir ein Speicherplatzproblem?

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Nicht nur Speicherplatz. Für dieses Feature ist die Software momentan 
nicht ausgelegt. Man müsste also die Software großteils anpassen um das 
Umschaltbar zu machen. Wobei, vielleicht kann ich die komplette Software 
2x reinmachen (1x normal, 1x groß), und dann per Pin umschalten.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,
wie gesagt, der Ursprung meiner Idee, war die Annahme,das 2 Formate
im Controller hinterlegt sind.
Die Idee einmal mehrehre Zeilen auszugeben bzw. ein Messergebnis
mit einer Grossanzeige anzuzeigen hat mich schon länger beschäftigt.
Leider kann ich kein Assambler.
Vielleicht konnte ich Dich mit meiner Idee anstecken, wobei wenn der
Schaltungsaufwand grosse Dimensionen annimmt, ist der Sinn einer 
kostengünstigen Ausgabe hin.

Wigbert

von Numen B. (numen)


Lesenswert?

Ich hätte noch platinen für die diplays, mit denen man auch grafik 
darstellen kann... basieren auf dem 640x480 kontroller von benedikt, 
einfach für 4bit lcds umgezeichnet.

Preis 10€ Pro platine + Porto zu euch.

Gruss Flo

von Christian J. (Gast)


Lesenswert?

Hallo,

ich setze derzeit ein Layout dieser Pollin Displays für den ARM7 
(LPC2214) um incl Epson Grafikcontroller als Programmierbeschäftigung 
für den nächsten Winter. Hat noch jemand einen dieser FPC Stecker, die 
für die NanYa passen und kann mir diesen zusenden? Glaube das sind 1mm 
Pitch Stecker.

Gruss,
Christian

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,

Du hast Post.

Wigbert

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Hier eine neue Version mit einer zusätzlichen großen 32x48 Schriftart. 
Optimal um irgendwelche Infos anzuzeigen, die auch aus größerer 
Entfernung lesbar sein sollen. Der Zeichensatz ist per Software 
umschaltbar. Da der Zeichensatz sehr viel Speicher braucht, wird jetzt 
ein mega168 benötigt, dessen Flash zu 98,2% voll ist. Trotzdem wurde der 
Zeichensatz auf 64 Zeichen (Großbuchstaben, Zahlen und ein paar oft 
benötigte Sonderzeichen wie ,:° usw.) reduziert.

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Das ganze sieht dann so aus.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hallo Benedikt,

>Hier eine neue Version mit einer zusätzlichen großen 32x48 Schriftart.

Das hatte ich schon "befürchtet".

Ein grosses Danke von mir für Deine Arbeit.
-------------------------------------------

Wigbert

von Hauke R. (lafkaschar) Benutzerseite


Lesenswert?

Sieht schick aus ;) aber seit wann ist 1+2 = 12? ;)

Das display liegt schon hier, was fehls ist mal wieder die Zeit das 
ganze aufzubauen ;)

von Avr N. (avrnix) Benutzerseite


Lesenswert?

@hauke da steht auch *4 ;)

von Benedikt K. (benedikt)


Lesenswert?

Ich weiß, mathematisch ist das nicht ganz OK, aber der Platz war dann 
doch etwas eng.
Aufgebaut ist die Schaltung doch schnell. Inklusive Spannungswandler 
sind es nichtmal 20 Bauteile. Da kostet das Spielen mit dem LCD mehr 
Zeit. Und das schlimme ist, da kann man garnichts dagegen machen...

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,
den AQV257 wo gibt es den?

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Pollin hatte den jahrelang. Jetzt gibt es den nur noch für viel Geld 
z.B. bei Conrad. Allerdings braucht man den nicht unbedingt. Der dient 
nur dazu die Displayspannung abzuschalten. Da das Pollin LCD dies aber 
intern über DispOFF\ macht, man man den AQV257 weglassen. Daher ist der 
auch gestrichelt eingezeichnet.

von Avr N. (avrnix) Benutzerseite


Lesenswert?

@ Benedikt K.: Mit welchen Programm machst du eine Fonts ?

von Benedikt K. (benedikt)


Lesenswert?

Erst ein Screenshot von den Zeichen 0-255 der Konsolenausgabe von 
Windows und dann zerlege ich die Bilder mittels eines kleinen C 
Programms, das mir die Daten entsprechend anordnet. Hier in dem Fall 
sind nämlich immer die Nibble vertauscht, und das ganze ist nicht ein 
Buchstabe am Stück, sondern immer die erste Zeile von jedem Buchstaben 
des Zeichensatzes, dann der zweiten usw. angeordnet.
Hier habe ich mal einige davon zusammengestellt:
Beitrag "LCD Schriftarten ( Fonts in veschiedenen Größen )"

von Bruno P. (bbruno)


Angehängte Dateien:

Lesenswert?

Hallo Benedikt,

eine kurze Zwischenfrage:
Würde Deine Software evtl. auch Displays mit 240x128 Pixeln ansteuern 
können?

Grund:
Ich sitze seit 2006 auf mindestens 100 LCDs, die doch irgendwie zu 
schade zum Entsorgen sind. Ein Bastler Namens Sven machte sich damals an 
die Arbeit und entwarf einen Displaycontroller, der sogar schon ein paar 
sinnvolle Worte auf eines meiner Displays zauberte.
Leider hat sich Sven seit dem nicht mehr um die Elektronik und seine 
Website gekümmert, weil er weitere Mysterien des Lebens entdeckt hat -> 
die Frauen ;)
Sei es ihm herzlich gegönnt!

Wie auch immer - ich wäre sehr froh, wenn ein paar meiner Displays zum 
Leben erwachen..

Viele Grüße,
Bruno

PS: Ein von Sven erstelltes Datenblatt meiner Disyplays als Datei-Anhang 
(Die Version ohne eigenen Controller).

von Benedikt K. (benedikt)


Lesenswert?

Theoretisch könnte es gehen. Es wird aber alles andere als einfach, da 
das Display 1bit Daten haben möchte, und das zweimal, einmal für die 
obere und einmal für die untere Hälfte. Das ist etwas aufwendiger, da 
beide Daten parallel errechnet werdne müssen.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Oder man hängt zwei Parralle zu Seriell IC davor :)
Dann könnte man doch zwei bytes laden, und dann gemütlich reintakten 
oder spricht etwas dagegen?

von Benedikt K. (benedikt)


Lesenswert?

Ja, das würde gehen.
Es würde sogar ein IC reichen: Für einen Kanal könnte man SPI verwenden, 
für den anderen ein HC165. Dann könnte man auch den SPI Takt verwenden.
Aber die Software müsste man trotzdem anpassen, und auch trotzdem zwei 
Buchstaben gleichzeitig laden und verarbeiten. Also ein wenig Arbeit.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hi,
vielleicht mal noch ein paar Worte zum Inverter:
Ich habe das o.g. Teil von Pollin heute bekommen.
Schön ist, das der Inverter in ein Gehäuse steckt.
Und funktionier sogar!
 Ich beteibe den Inverter statt 12V mit 6V, bei 5V würde das Pollin GLCD 
die Beleuchtung halten , zündet aber nicht.
Anschlusschnur mit Stecker ist dabei, statt der "Röhre" kann auch eine 
3pol Buchse, wie für Computerlüfter vorgesehen raufgesteckt werden.

Übrigens ich hab son Teil bei Eb.. für 1 Euro gesehen.


Wigbert

von Bruno P. (bbruno)


Lesenswert?

Benedikt K. wrote:
> Theoretisch könnte es gehen. Es wird aber alles andere als einfach..

Hallo Benedikt,

danke Dir für die Antwort!
Dann werde ich mir mal ein vernünftiges Display besorgen und meine 
"Sammlung" für nen "Appel und ein Ei" vertickern - was solls..
Zumindest haben meine Displays wunderbare EL-Folien als Backlight - 
schön zum basteln ;)

Viele Grüße,
Bruno

von Hauke R. (lafkaschar) Benutzerseite


Lesenswert?

Naja so schnell würd ich die Displays nicht aufgeben.
Er sagt nur, dass es mit seinem code nicht so einfach ist, generell ist 
es auf jeden fall möglich die Displays anzusteuern denke ich.

von Christian J. (Gast)


Lesenswert?

hallo,

Macht es Sinn, die negative Spannung an den Displays regelbar zu machen, 
zB Kontrast? Und wenn ja in welchem Bereich? Wie man den einstellt weiss 
ich noch nicht. Erzeuge die neg. Spannung derzeit mit fertign -24V DC/DC 
Wandlern, die müssen aber noch einen LM317 etc dran kriegen zur 
Regulierung.

Gruss,
Christian

von Benedikt K. (benedikt)


Lesenswert?

Der LM317 ist für den positiven Bereich, mit einem LM337 könnte es 
funktionieren, allerdings benötigt dieser einen relativ hohen Ruhestrom.
Ich regele den Kontrast per Software über PWM, indem ich den Bezugspunkt 
für den Spannungsteiler des Spannungswandlers zwischen 0V und 5V 
verschiebe. Das Pollin Display hat eine relativ steile Kennlinie, daher 
reichen die 5V aus um zwischen nichts auf dem Display bis alles schwarz 
einstellen zu können. Den optimalen Kontrast erreiche bei meinem Display 
mit etwa -18V, was ziemlich genau den 23V aus dem Datenblatt entspricht.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hallo Benedikt,
benutzt Du für die neg.Spannungserzeugung mit MC34063 eine normale
Drosselspule (Foto)? In irgendeinen anderen Thread hab ich eine ander 
Aussage gelesen ...

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Die Stromaufnahme von dem Display ist so gering, dass man nahezu alles 
als Spule verwenden kann. Die andere Schaltung die du meinst ist im 
640x480 Thread. Diese Displays benötigen oft eine höhere Spannung von 
bis zu -25V. Dann kommt man schon in die Nähe von dem theoretischen 
Maximum, das der 34063 auf den 5V erzeugen kann.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hallo Benedikt,

noch mal zur negativen Spannungserzeugung:
Laut DBL des MC34063 sollte bei externen PNP Transistor Pin 2 auch mit 
angeschlossen werden (Leuchtet mir ein ,da sonst die int. Transistoren 
nicht Funktionieren). Du lässt Pin 2 offen, ist das richtig?


Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Schwer zu sagen. Dem Ersatzschaltbild aus dem Datenblatt nach 
funktioniert meine Lösung (in der Praxis geht es natürlich auch.)
Der Grund für diese etwas unkonventionelle Beschaltung ist einfach:
Der Basisstrom für den externen PNP Transistor wird von dem internen 
Transistor des 34063 aus der aufwendig erzeugten negativen Spannung 
gewonnen. Da die Einschaltdauer des Transistors ziemlich hoch ist, wird 
die negative Spannung ziemlich stark belastet, was den Wirkungsggrad 
massiv verschlechtert. Meine erste Idee um das zu umgehen war, den 
Emitter des internen Transistors nicht an die negative Spannung, sondern 
an Masse zu legen. Allerdings wird die Basis dann negativer als der 
Emitter, was zu einem Durchbruch der Basis-Emitterdiode führt.
Daher jetzt diese Schaltung: Der Basisstrom des PNPs wird nur noch von 
dem Treibertransistor des 34063 geliefert, und fließt über die als Diode 
zweckentfremdete Basis-Kollektor Diode des Schalttransistors des 34063. 
Schaltet der Transistor ab, kann der interne Treibertransistor auf ein 
Potential der negativen Spannung gezogen werden, da die Basis-Kollektor 
Diode sperrt.
Da ich nicht genau weiß, ob der reale Aufbau des 34063 identisch mit der 
Prinzipschaltung aus dem Datenblatt ist, bin ich nicht absolut sicher, 
ob das so passt. Meine Messungen haben jedoch gezeigt, dass der 
Wirkungsgrad deutlich besser als bei der Orginalversion ist, und dass 
der Emitter des Schalttransistors zwischen negativer Spannung und 
Massepotential pendelt. Das ganze scheint also so zu funktionieren wie 
geplant.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Benedikt K.
>Da ich nicht genau weiß, ob der reale Aufbau des 34063 identisch mit der
>Prinzipschaltung aus dem Datenblatt ist

seltsamerweise funktioniert das Orginlbeispiel ohne Transistor, wobei 
bei Deiner Variante der Transistor sich verabschiedet.
Ich nehme mal an, es wird kein interner Takt erzeugt, und der 
Gleichstromwiderstand L2 ist dann für den BC... zu viel.
MC34063 ist garantiert OK.
Wenn ich an R1 statt PWM ein Poti (GND, +5, Schleifer R1) müsste doch
auch geregelt werden?
Wieso ist R5 so hoch , welchen Takt nimmat Du als Grundlage?

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> @Benedikt K.
>>Da ich nicht genau weiß, ob der reale Aufbau des 34063 identisch mit der
>>Prinzipschaltung aus dem Datenblatt ist
>
> seltsamerweise funktioniert das Orginlbeispiel ohne Transistor, wobei
> bei Deiner Variante der Transistor sich verabschiedet.

Interessant. Ich habe die Schaltung bestimmt schon 10x aufgebaut, und es 
hat bei mir jedesmal problemlos funktioniert (sowohl mit Orginal MC34063 
als auc mit der schlechten Kopie TS34063)

> Wenn ich an R1 statt PWM ein Poti (GND, +5, Schleifer R1) müsste doch
> auch geregelt werden?

Ja.

> Wieso ist R5 so hoch , welchen Takt nimmat Du als Grundlage?

R5 bildet zusammen mit R4 den Spannungsteiler der die Ausgangsspannung 
festlegt.
Der Bezugspunkt dieser Spannung wird per RC Glied R1/C1 und PWM zwischen 
etwa 0V und 5V verschoben, und dementsprechend auch die 
Ausgangsspannung.
Ein Poti anstelle von R1/C1 oder auch eine Veränderung des Widerstandes 
R5 verändert die Ausgangsspannung.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Benedikt K.
>Ich habe die Schaltung bestimmt schon 10x aufgebaut
"Gut Ding will wohl Weile haben".
Jetzt funtioniert sie bei mir auch. Hab den Kond. 1nF ausgetauscht.
Dank Dir für die erklärende Worte.

Wigbert

von Florian K. (makrocontroller)


Lesenswert?

Ich habe eine Frage zu den beiden Displays
http://www.pollin.de/shop/shop.php?cf=detail.php&pg=OA==&a=ODI1OTc4OTk=&w=OTg4OTk4&ts=0
http://www.pollin.de/shop/shop.php?cf=detail.php&pg=OA==&a=OTM1OTc4OTk=&w=OTg4OTk4&ts=20

Das eine ist weiß, das andere schwarz. Stimmt es, dass bei dem weißen 
dann die gesetzten Pixel schwarz erscheinen und man die Schrift zur Not 
auch ohne die Hintergrundbeleuchtung lesen könnte ?

Ist als Anschluss einfach ein Flachbandkabel ohne Stecker da ? Ich kenne 
mich mit den Stecker-Typen nicht so aus. Wie heißt den so ein Stecker 
und die zugehörende Buchse, mit dem man eine Verbindung von einem 
Flachbandkabel zu einer 2,5 mm Lochrasterplatine herstellen kann ? Und 
wo bekommt man so was (Pollin, Reichelt, Conrad, ???).

von Benedikt K. (benedikt)


Lesenswert?

Florian K. wrote:

> Das eine ist weiß, das andere schwarz. Stimmt es, dass bei dem weißen
> dann die gesetzten Pixel schwarz erscheinen und man die Schrift zur Not
> auch ohne die Hintergrundbeleuchtung lesen könnte ?

Ja. Sogar sehr gut, wenn ausreichend Licht da ist.

> Ist als Anschluss einfach ein Flachbandkabel ohne Stecker da ?

Ja.
>  Wie heißt den so ein Stecker
> und die zugehörende Buchse, mit dem man eine Verbindung von einem
> Flachbandkabel zu einer 2,5 mm Lochrasterplatine herstellen kann ?

Sowas gibt es nicht (habe ich zumindest nie gesehen). Da es sich um ein 
1mm Raster handelt, sind die meisten Buchsen (meist als FPC bezeichnet) 
entweder SMD oder mit 2 reihigem Lötanschluss im 2mm Raster.

> Und wo bekommt man so was (Pollin, Reichelt, Conrad, ???).

digikey hat die ganz sicher. Ansonsten bin ich überfragt. Ich ersetzte 
das Kabel immer durch ein Flachbandkabel mit 1,27mm. Ist zwar eng, geht 
aber.

von Wigbert P. (wigbert) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hi Florian K.

>Wie heißt den so ein Stecker

Das angeschlossene Flachbandkabel hat nach meinem Ausmessen ein Raster
von 1mm.
Wenn Du schnell "arbeitsfähig" sein willst, würde ich von Pollin
die FFC Buchse 450 975 (22pol) oder die SMD 450 969 (14 
pol.)ausprobieren.
Beide sind zwar von der Pinanzahl breiter, da aber das Kabel steckbar 
ist, spielt das für ein Experimentierboard keine Rolle und preiswert. 
Eine Adapterplatine brauchst Du in beiden Fällen.
Bei Digikay hatte ich den Stecker 609-1939-ND (12pol, 1mm Raster) 
ausgesucht. Vielleicht Sammelbestellung nutzen.
Oder nach "Molex" FFC/FPC Connector 1mm googeln.
Ich hab etliche Stecker auf ein altes Lexmark-Druckerboard gefunden,
ein SMD sogar in eine Computerfestplatte.
Anbei mal eine Brd. Datei einer 30 pol. Adapterplatine für Stecker
für Printmomtage. Lässt sich schnell umzeichnen.

von Florian K. (makrocontroller)


Angehängte Dateien:

Lesenswert?

Hallo,
vielen Dank für eure Antworten.
Leider kann ich mit der Brd Datei nichts anfangen, da ich bislang noch 
nicht mit Layoutprogrammen gearbeitet habe. Wenn ich die Beschreibungen 
auf der Pollin-Webseite zu den Teilen FFC Buchse 450 975 (22pol) bzw. 
SMD 450 969 und zum Digikey 609-1939-ND richtig verstanden habe, haben 
die Pins einen 1 mm Abstand, so dass man das Teil noch nicht direkt in 
eine Lochrasterplatine einlöten kann.
@Wigbert Picht: Hast du mit Adapterplatine eine Platine gemeint, mit der 
man eine "Brücke" zwischen dem Rastermaß 1 mm zu 2,54 mm herstellen kann 
?

Ich habe mal das oberste Bild dieses Threads genommen, und zwei Teile 
mit 1 und 2 beschriftet. In Teil 1 ist wohl das Flachbandkabel 
eingespannt. Vielleicht sind am Teil 1 die Pins dann im 1 mm Abstand, 
und Teil 2 stellt die Verbindung zum 2,54 mm Rastermaß her, oder ? 
Leider konnte ich im Internet noch nichts finden, was dem Teil 2 
entspricht.

>  Wie heißt den so ein Stecker
> und die zugehörende Buchse, mit dem man eine Verbindung von einem
> Flachbandkabel zu einer 2,5 mm Lochrasterplatine herstellen kann ?
>> Sowas gibt es nicht (habe ich zumindest nie gesehen).
Da verstehe ich nicht ganz. Im obigen Bild wird doch über das Teil 1 + 2 
eine Verbindung zu eine 2,54 mm Rasterplatine hergestellt.

Schöne Grüße
Florian

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Florian K.

>richtig verstanden habe, haben
>die Pins einen 1 mm Abstand, so dass man das Teil noch nicht direkt in
>eine Lochrasterplatine einlöten kann.

richtig

> Hast du mit Adapterplatine eine Platine gemeint, mit der
>man eine "Brücke" zwischen dem Rastermaß 1 mm zu 2,54 mm herstellen kann

Ja,
Die Adapterplatiene dient nur den Zweck das Orginalkabel(1mm Raster) zu
beschalten, um kein lastiges Umlöten zu machen. Die Platine hat ein 
Stecker für das Displaykabel und gibt alle Pins auf eine Kontaktbuchse 
im 2,5 mm Raster aus. Ich hab ein 30 pol. Variante aufgebaut,
um für spätere Zeiten universell zu sein.
So was baut man einmal und nimmt immer wieder.

>Da verstehe ich nicht ganz. Im obigen Bild wird doch über das Teil 1 + 2
>eine Verbindung zu eine 2,54 mm Rasterplatine hergestellt.

wie Benedikt schon oben erwähnte, hat er ein anderes Kabel
(1,25 mm Raster) ans Display gelötet

>Teil 2 stellt die Verbindung zum 2,54 mm Rastermaß her

Such mal bei Conrad nach "Pfostensteckverbinder" bzw. 
"Leiterplatten-Verbinder"

Wigbert

von Florian K. (makrocontroller)


Lesenswert?

Danke. Ich glaube, nun weiß ich was ich kaufen muss.

von Gast (Gast)


Lesenswert?

Hallo Zusammen,

Bei LC-Displays sieht man ja nach Anschluss der Betriebspannung und der 
negativen Spannung durch drehen am Kontrast Poti, alle Pixel, ist das 
auch hier der Fall, oder geht das nur wenn man die Ansteuerung 
angschlossen hat ?

von Benedikt K. (benedikt)


Lesenswert?

Das geht nur wenn das LCD angesteuert wird (die 44780 kompatiblen haben 
die Ansteuerung schon mit drauf, daher geht das bei denen).

von Xter Gast (Gast)


Lesenswert?

@Benedikt:

Im ASM Code steht was von M drin das am Display angeschlossen werden 
soll, das Display hat kein M Pin - ist das Display LCD-Modul NAN YA 
LTBE9T372G1K

Kann ich das einfach weg lassen bzw nicht anschliessen und dann klappt 
alles?

Xter Gast

von Benedikt K. (benedikt)


Lesenswert?

Ja, kann man weglassen. Die Software ist nicht speziell für das 
LTBE9T372G1K geschrieben, andere LCDs benötigen das Signal, daher ist es 
drin.

von Wigbert P. (wigbert) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hi,
hab zum Displaytest mit ein m8 ein Testboard "geschraubt".
Funktionierte auch gleich auf Anhieb.
Hab das mal "Modulo" gemacht.
Vorn der RS232 Pegelwandler.
Daninter das Board für die -22V Kontrast- Einstellung. Als Speicherspule 
fand ein Ferrit-Übertrager aus einem EVG für LS-Lampen seine letzte 
Daseinsberechtigung. Da das Display wirklich ein "steilen" Kontrast hat, 
wurde die neg.Spannung mit ein Poti eingestellt.
Das Controllerboard hat noch Platz für evtl. Erweiterungen und ist aus
ein Lochrasterboard hergestellt. Das Display wird mit der o.g.
Adapterplatine versorgt. Hinterm Display der Inverter von Pollin.
Die gesamte Schaltung + Inverter wird mit ca 7,5V eingespeist. Wobei der 
7805 auf der Lochrasterplatine die 5V bereitstellt.


@ Benedikt K.
kann die Befehlsliste nicht für die m8 Version finden.

Wigbert

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Hier der Befehlssatz für den mega8.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Dank Dir Benedikt, schon die m8 Version ist beeindruckend. Toll.
Wechsle demnächst auf m168 über...

Wigbert

von Avr N. (avrnix) Benutzerseite


Lesenswert?

@benedikt

beim 640x400/480 Display kann man über einen Code Area/Text und 
Grafikmodus umschalten. Geht das auch mit diesen Display hier?
Was müsste man tun um ein Pixel in x,y darzustellen? Gibts auch dafür 
einen Code zur Umschaltung in den Modis? mein Display LCD-Modul NAN YA
LTBE9T372G1K

von Benedikt K. (benedikt)


Lesenswert?

Avr Nix wrote:
> @benedikt
>
> beim 640x400/480 Display kann man über einen Code Area/Text und
> Grafikmodus umschalten. Geht das auch mit diesen Display hier?

Mit dem Display an sich ja, aber nicht mir diesem Code.

> Was müsste man tun um ein Pixel in x,y darzustellen?

9,6kByte SRAM hinzufügen...

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Ist den der Code für Area, Textmodus (0x08) und Grafilmodus (0x09) der 
gleiche für dieses Display?

von Benedikt K. (benedikt)


Lesenswert?

Ich weiß jetzt nicht welches 640x480 Display mit Text/Grafikumschalung 
du meinst.

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Also von dieser Seite 
http://www.mehto.roboterbastler.de/?Projekte:Display_Controller:Entwicklung

TOSHIBA - TLX-1181-13

Tutorial und die Modis: 
http://mehto.roboterbastler.de/?Projekte:Display_Controller:Downloads_%28Tutorials%2CDatenblatt...%29

Gibts solle Modis auch auf ein 320x240 , denke mal die sind sich 
ähnlich?

von Benedikt K. (benedikt)


Lesenswert?

Ja, das geht mit meiner anderen Software (interessanterweise ist meine 
Schaltung verblüffend ähnlich, bzw. nahezu identisch zu der von mehto):
Beitrag "LCD Controller für 640x480 LCD mit mega8515"
Da gibt es irgendwo auch eine Version für 320x240 Displays.
Ich verwende grundsätzlich den Grafikmodus. Die Software beinhaltet aber 
einen Zeichensatz und schreibt daher auch Text auf das Display.

von Avr N. (avrnix) Benutzerseite


Lesenswert?


von Benedikt K. (benedikt)


Lesenswert?

Ja.

von Thomas H. (merlin63)


Lesenswert?

hallo benedikt

lese diesen beitrag nun das erste mal und bin schwer beeindruckt und 
interessiert. nicht zuletzt aus dem grund, weil ich hier zwei NAN YA 
displays zu liegen habe und seit tagen versuche daten dazu zu bekommen. 
von der größe her müßten es auch 320x240iger sein. die bezeichnung 
lautet

LTBHBT357 H2CK die kontrollerplatine hat wohl einen SID13704 drauf. die 
versorgungsspannung und wenn ich das richtig gesehen habe einen 
SP491.....der hat wohl was mit RS485 zu tun. das display i8st in einem 
gehäuse und hat eine sechsadrige zuleitung. zwei sind die 
betriebsspannung und die vier restlichen dann wohl die RS485......keinen 
plan wie man das anschließt. ach ja und im gegensatz zu deinem LCD hat 
es eine 16 adrige folienleitung.

@all kennt jemand vlt dieses display und könnte mir weiterhelfen.
wenn es hilft könnte ich noch bilder einstellen.
danke schonmal

LG thomas

von Otto53 (Gast)


Lesenswert?

Hallo Benedict,
Ich habe mir Deinen Comtroller einmal angeschaut, gefällt mir gut. 
Lediglich
den Teil mit dem M34063 habe ich nach der Original-Schaltung nach 
National
Semiconductors gebaut.
Was ich nicht hinbekommen habe ist CR (carriage return  - Dezimal -13). 
Der
Befehl ist deinem Command-Bereich nicht decodiert. Ich habe mal versucht
den CR Befehl zu implementieren, der Cursor geht auch auf den 
Zeilenanfang, jedoch auf die vorhergehende Zeile und nicht in die 
gleiche Zeile.
Frage: Wie setzt Du den Spaltenzähler zurück, ohne den Zeilenzähler zu
dekementieren?

Gruß  Otto53

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Stimmt, den Carrige Return Befehl habe ich wirklich vergessen 
einzubauen. Ich habs mal nachgeholt.
Das Problem an dem Befehl ist, dass man quasi Modulo Zeilenbreite 
rechnen muss.
Dazu beginne ich am Anfang der untersten Zeile und ziehe solange eine 
Zeilenbreite ab, bis ich kleiner als die aktuelle Cursorposition bin.

von Otto53 (Gast)


Lesenswert?

Danke für Deine Hilfe!

Ich habe eine Platine für den Controller in Target entworfen, mit
zusätzlichem Anschluß an eine echte V24 Schnittstelle. Sobald sie
komplett fertig ist wird sie veröffentlicht.

Otto53

von Benedikt K. (benedikt)


Angehängte Dateien:

Lesenswert?

Hier eine neue Version für den mega8.
Nun ist endlich ein Cursor verfügbar. Da die ganze Software nur mit 
Buchstaben und nicht mir Grafik umgehen kann, wird der volle Block aus 
dem Zeichensatz als Cursor zweckentfremdet.
Der Cursor ist in 2 Varianten verfügbar: Dauerhaft an oder Blinkend 
(abwechselnd der Block/das eigentliche Zeichen, Blinkfrequenz im Code 
einstellbar).
Eventuell baue ich irgendwann auch noch einen echten Cursor ein, der 
grafisch über den Text gelegt wird.

von Martin (Gast)


Lesenswert?

@ Benedikt K. (benedikt),

eine kleine Frage,

warum nimmst du für den MC34063 im Schaltbild einen externen Transistor?
Bei der kleinen Leistung sollte der Interne Darlington doch reichen, 
oder hat das andere Gründe?
Bitte um Aufklärung :D

von Benedikt K. (benedikt)


Lesenswert?

Der Darlington hat etwa 1,5V Spannungsabfall. Bei 5V Betriebsspannung 
bleiben daher nur noch etwa 3,5V übrig. Damit auf mehr als -20V zu 
kommen ist etwas knapp, daher der externe Transistor.

von Wigbert P. (wigbert) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hi,
hab durch das verlängerte Wochenende mal Zeit gefunden
Benedikts Projekt auf eine Platine aufzubauen. Das Board hat eine
Grösse von 50mm x 60mm. Es wurde eine Lochrasterplatine verwendet.
Es lohnt sich wohl wirklich nicht eine Platine zu entwerfen.
Eine Adapterplatine mit SMD-Flachbandstecker bildet die Verbindung
zum Display.
Erwähnenswert wäre die hochkant aufgelötete "Kontrasttablette"
Ein Board zur Erzeugung der neg. Kontrastspannung. Teilweise in SMD,
aber gross genug um eine grössere Speicherspule aufzunehmen zu können(in 
dieser Anwendung reichte ja eine Ind. in Widerstandsform).

Wigbert

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Hallo Benedikt,

ASM ist nicht gerade meine Welt und ich möchte nur die Ausgabe der ASCII 
zeichen haben ohne die COM Schnittstelle.

der Timer-IRQ ist das mit dem definiert über den Vector -> .org OC2addr 
?

Welche Teile muss ich haben um nur die ASCII Zeichen darzustellen?

.dseg -> DDRAM: .byte XSize*YSize   wird da die Anfangs Adresse vom 
DDRAM
zurück geliefert bei z.B. sbr tempi,low(DDRAM)  ...,high(DDRAM) oder der 
Inhalt der Adresse?

die hloop -> gibt die die ASCII Zeichen auf den GLCD aus, also im IRQ 
vom Timer2 ?

was wird mit mit Xsize*ysize+DDRAM angegeben Endadresse oder Inhalt der 
Adresse von DDRAM?

Du hast ja im ersten Post 2 Zeichensätze drinne 8x10 und 12x10
font:   Warum taucht nicht font sondern nur DDRAM auf ?

Ich versuche deinen ASM zu verstehen.

Welche Teile würde ich brauchen um nur die ASCII zeichen auszugeben?

Danke

von Benedikt K. (benedikt)


Lesenswert?

Avr Nix wrote:
> der Timer-IRQ ist das mit dem definiert über den Vector -> .org OC2addr
> ?

Ja.

> Welche Teile muss ich haben um nur die ASCII Zeichen darzustellen?

Du müsstest eigentlich nur den richtigen Text in den Speicher schreiben.
Dieser Code hier füllt den Speicher Standardmäßig mit fortlaufenden 
Werten, so dass der komplette Zeichensatz dargestellt wird:
ldi temp, 32
clrloop:
st Y+, temp
inc temp
ldi temp2, high(XSize*YSize+DDRAM)
cpi YL, low(XSize*YSize+DDRAM)
cpc YH, temp2
brne clrloop

> .dseg -> DDRAM: .byte XSize*YSize   wird da die Anfangs Adresse vom
> DDRAM zurück geliefert

Ja.

> bei z.B. sbr tempi,low(DDRAM)  ...,high(DDRAM) oder der
> Inhalt der Adresse?

Keine Ahnung. Dieser Ausschnitt kommt nämlich nicht in meinem Code vor. 
(Er macht auch so keinen Sinn). Falls du nur das low(DDRAM)/high(DDRAM) 
meinst, damit wird die Adresse auf 2 8bit Werte aufgeteilt, da der AVR 
nur ein 8bit µC ist und den 16bit Wert daher in 2 Teilen laden muss.

> die hloop -> gibt die die ASCII Zeichen auf den GLCD aus, also im IRQ
> vom Timer2 ?

Ja. Genauer gesagt jeweils eine Pixelzeile.

> was wird mit mit Xsize*ysize+DDRAM angegeben Endadresse oder Inhalt der
> Adresse von DDRAM?

Endadresse: XSize*YSize ist dei Größe und die wird zus Startadresse 
addiert.

> Du hast ja im ersten Post 2 Zeichensätze drinne 8x10 und 12x10
> font:   Warum taucht nicht font sondern nur DDRAM auf ?

Ich schreibe den Text in das RAM (daher DDRAM: Display Data RAM) und 
gebe bei der Ausgabe anhand von den Buchstaben im RAM die Bilder der 
Buchsteben auf das LCD aus. font sind daher die Bilder von jedem 
einzelnen Buchstaben.

> Welche Teile würde ich brauchen um nur die ASCII zeichen auszugeben?

Alles bis auf den Bereich rx_uart bis einschließlich UART_RX_int.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Hi Benedikt,
damit ich es verstehe:
Clockh = r4 ,
wo wird denn register 4 mit 1 geladen.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> Hi Benedikt,
> damit ich es verstehe:
> Clockh = r4 ,
> wo wird denn register 4 mit 1 geladen.

Clockh ist nur ein anderer Name für r4.
Zwisch LCD_Line und hloop:
cbr tempi, 1<<CLOCK
mov clockL, tempi
sbr tempi, 1<<CLOCK
mov clockH, tempi

Damit wird in clockH das Bit gesetzt, das eben den entsprechenden Pin 
auf 1 setzt. Bei clockL dasselbe, nur wird hier das Bit gelöscht.
Ich könnte theoretisch auch sbi/cbi verwenden, aber die sind um 1 Takt 
langsamer. Klingt nach wenig, aber die 4 Takte mehr sind immerhin 26% 
innerhalb der hloop Schleife.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

unter:
>.org OC2addr ;Bildbeginn

wer lesen kann .....

Dank Dir Benedikt

Wigbert

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Benedikt K.
>Ich schreibe den Text in das RAM (daher DDRAM: Display Data RAM) und
>gebe bei der Ausgabe anhand von den Buchstaben im RAM die Bilder der
>Buchsteben auf das LCD aus. font sind daher die Bilder von jedem
>einzelnen Buchstaben.

Jetzt kommt der m8 in meinem Testprogramm an seine Grenzen.
Ladest Du jede Zeile neu aus dem Ram, oder wieviel Byte kann ich laden.
ich wollte mal einfach abgelegte Testzeichen ausgeben.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Das was im RAM ist wird angezeigt.
Neue Daten kann man zwischen den einzelnen Zeilen laden.

von Kay B. (newbie)


Lesenswert?

hallo,
was für einen inverter benötigt das display von pollin,
mfg kay

von Thomas H. (merlin63)


Lesenswert?

hallo leute

ich sehe schon, da habe ich ja ein exotisches display erwischt, wenn 
nicht mal ansatzweise ne antwort kommt.....schade. na ja fals einer 
interesse hat sich mit dem ding zu beschäftigen, einfach melden. für die 
tonne zu schade und zur arbeit zurückbringen geht schlecht ;-).
bis denne
gruß thomas

von Benedikt K. (benedikt)


Lesenswert?

Kay B. wrote:
> hallo,
> was für einen inverter benötigt das display von pollin,
> mfg kay

Irgendeinen CCFL Inverter. Ich habe einen INVC329 von Hitachi an meinem 
dran. Der hat die passende Buchse am Ausgang und passt auch von den 
Strom/Spannungswerten wunderbar.

Thomas H. wrote:
> ich sehe schon, da habe ich ja ein exotisches display erwischt, wenn
> nicht mal ansatzweise ne antwort kommt.....schade.

Ja, das scheint in der Tat irgendwas kundenspezifisches zu sein.
Der 13704 ist ja eingermaßen Standard, aber RS485 an einem LCD nicht. Da 
muss noch irgendein µC drauf sein, der als Schnittstelle zwischen RS485 
und 13704 dient. Aber ohne Kenntniss von dessen Software wird es schwer.

> na ja fals einer
> interesse hat sich mit dem ding zu beschäftigen, einfach melden. für die
> tonne zu schade und zur arbeit zurückbringen geht schlecht ;-).

Könntest du mal ein Foto machen ? Ein Dispay mit 13704 onboard klingt 
interessant. Wenn man irgendwie an die Pins des 13704 kommt, könnte man 
dies durchaus sinnvoll verwenden.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Kay B.
>was für einen inverter benötigt das display von pollin

Pollin 37-700 637 wird statt 12V mit 7V betrieben.

Wenn Du noch ein paar Tage wartest, habe ich Pollin 75-530 858
getestet, hat den Vorteil 5V Nennspannung.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:

> Pollin 37-700 637 wird statt 12V mit 7V betrieben.

ist leider ausverkauft

> Wenn Du noch ein paar Tage wartest, habe ich Pollin 75-530 858
> getestet, hat den Vorteil 5V Nennspannung.

Habs gerade mal getestet:
Dieser ist für größere Röhren ausgelegt. Es funktioniert zwar, aber die 
Leistung ist etwas hoch: 5V, 0,49A, also rund 2,5W. Laut Datenblatt 
werden 1,4W empfohlen. Dafür leuchtet bereits ab 1,3V (!!!) etwas. Bei 
etwa 3,3V hat man 0,4A, also etwa 1,3W. Für den Betrieb an 3,3V (was das 
Display übrigends auch kann), ist dieser also optimal.
Durch Anpassen des Kondensators am Ausgang, kann man die Leistung aber 
anpassen. Momentan habe ich 18pF drin (das müsste der Orginale sein, 
wenn ich mich nicht irre), mit etwa 10pF sollte der Inverter also auch 
für 5V brauchbar sein.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@Benedikt K.

>ist leider ausverkauft

dann eben die 37-700 638, da ist eine "bunte" Röhre zu.
Eben waren noch welche da.


Dank dir für die Hinweise. Mir geht es um eine Spannungsversorgung
des Inverters und Controllers.

Wigbert

von Kay B. (newbie)


Lesenswert?

hallo,
also würde der inverter 700 638 dafür auch passen??


kay

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

>also würde der inverter 700 638 dafür auch passen
Jup,
die Röhrenfarbe der beigelegten Röhre für andere Projekte ist wohl
Geschmackssache.

Wigbert

von Kay B. (newbie)


Lesenswert?

danke,
so jetz gehts ans bestellen

kay

von Avr N. (avrnix) Benutzerseite


Lesenswert?

@benedikt:

ldi temp, (1<<wgm21) | 2
out TCCR2,temp

-> was bedeutet das: | 2 ?
heisst das Bit WGM12 und Bit 2 auf 1 gesetzt wird und dann ab ins TCCR2 
Register vom Timer2 ?

von Benedikt K. (benedikt)


Lesenswert?

Ja, so in etwa. Bit WGM21 und Bit 1 (2 hoch 1 = 2). 2 ist der Wert für 
den Prescaler für den Timer, hier also 8. Also 16MHz/8=2MHz.

von otto53 (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Benedikt,
 wie versprochen eine Platine für Deinen AT Mega 8 Entwurf. Die Platine 
ist in Target entworfen und kann auch für andere Displays verwendet 
werden. Der Controller kann über V24 (K6) oder über einen Port (K7) 
angeschlossen werden. Hierzu die passende Verbindung an K5 
konfigurieren. Das Layout, der Schaltplan,  sowie die Bestückung und 
eine Datei mit den entsprechenden Signalnamen, Pin, Ports etc. sind als 
.pdf Dateien angehängt.

Noch ein Wort zum Layout: Ich habe es so gestaltet, daß K1 zum 
Konfigurieren verwendet werden kann. Steckerleiste K2 dient zum 
modifizierten Anschluß des Display's, wenn das Flexkabel abgelötet 
wurde. Falls das Flexkabel verwendet wird, kann an der rechten Seite der 
Anschlußstecker (1 mm Raster) direkt angelötet werden. Alle anderen 
Steckverbindungen sind im Schaltplan aufgeführt.
Zum Thema CCFL Inverter: Ich verwende den Inverter für Case Modding von 
Revoltec, gibts bei Reichelt für ein paar Euro. Der funktioniert schon 
ab 6 -7 Volt zuverlässig (benötigt 12 Volt für die volle Leistung)

von Benedikt K. (benedikt)


Lesenswert?

Den SWE vom 34063 würde ich nicht an Masse legen. Die Basis-Emitterdiode 
kann dabei nämlich kaputt gehen, da diese nur etwa 7V verträgt. Keine 
Ahnung ob der 34063 eine antiparalleler Schutzdiode eingebaut hat, aber 
die Stromaufnahme ist auf jedenfall um einiges höher und der 
Wirkungsgrad daher um einiges schlechter als bei meiner Schaltung. Wenn 
schon, dann an GND vom 34063. Oder so wie ich das mache.

von otto53 (Gast)


Lesenswert?

Hallo Benedikt,
 ich habe die Schaltung aus den Original Datenblätter von ST. Hier wird 
der SwE (Pin 2) ebenfalls auf GND gelegt . Siehe Link auf Seite 10 Bild 
2

http://www.datasheetcatalog.net/de/datasheets_pdf/M/C/3/4/MC34063.shtml

Die beiden internen Transistoren Q1 und Q2 sind in dieser Darstellung 
parallel geschaltet und müssen die Basis von T1 auf GND ziehen, der max. 
Strom, der hier fließen kann ist 5V/680 Ohm = 7.35 mA. Da sollte der 
34063 verkraften. Laut Datenblatt schafft der MC 34063 1.5A max. Das ist 
zwar der Absolutwert, mit dem man nicht arbeiten sollte, aber bis jetzt 
(4 Tage Dauertest) läuft die Schaltung einwandfrei. Die Stromaufnahme 
ist gering, der IC wird etwa 35 Grad C warm.

von Benedikt K. (benedikt)


Lesenswert?

otto53 wrote:
> Hallo Benedikt,
>  ich habe die Schaltung aus den Original Datenblätter von ST. Hier wird
> der SwE (Pin 2) ebenfalls auf GND gelegt . Siehe Link auf Seite 10 Bild
> 2

Meinst du Seite 11 ?
Das wundert mich jetzt aber, dass die so eine Schaltung ins Datenblatt 
abdrucken.
Ich hatte es früher auch den Emitter auf GND, aber da die Basis des 
Treibertransistors dann negativer wird als die Basis, geht entweder der 
Transistor kaputt, oder (was ich eher glaube) fließt ein ordentlicher 
Strom da antiparallel eine Schutzdiode liegt. Ich konnte zumindest den 
Stromverbrauch gegenüber der Emitter auf GND Lösung halbieren (bei 
gleicher Last). Wenn also vom Emitter nach GND eine Diode eingebaut 
wird, verdoppelt sich der Wirkungsgrad !

Hier wird es richtig gemacht.
http://www.onsemi.com/pub_link/Collateral/MC34063A-D.PDF
Seite 8, Fig. 13b

von GastTX (Gast)


Lesenswert?

@Benedikt: Was ist ClockL und ClockH und für was sind diese?

In deiner CLRLOOP dient es zum Löschen des Bildschirms?

Was ich auch nicht verstanden habe Wie kommt sagen wir wenn ich "ABC" in 
zeile 2 Spalte 30 darstellen möchte wie das berechnet wird bzw 
dargestellt wird und wo wird das gemacht?

kann ich sagen das Buchstabe an x, y  -> 320*y+x ist? Oder fängt jede 
Zeile bei 1 an wo wird das gemacht?

Wenn ich jetzt ABC Darstellen möchte, wird A dargestellt B und dann C ?
Und wie geschied das genau ? Es wird ja im IRQ nur eine Zeile 
geschrieben?

Muss ich die nicht gesetzen Pixel auch darstellen, damit es 240 Pixel 
pro Zeile werden und wo wird das gemacht?

Was ich auch nicht verstanden habe wenn Zeichen wie ein Bild ist und 
warum kann ich den nicht Pixel einzel setzen, wie müsste das ausehen, 
man kann ja den ganzen zeichensatz doch darstellen ?

Danke für deine Erläuterungen hierzu, mir ist das Prinzip nicht ganz 
klar wie die Buchstaben bzw. Pixels auf den Display landen, wenn jede 
Zeile geschrieben wird und vom Buchstaben nur immer ein Teil ist, also 
eine Pixelbreite des Buchstabens.

GastTX

von Otto53 (Gast)


Lesenswert?

Ja,
Seite 11, 2tes Schaltbild,  anstelle Seite 10, Sorry!

von Wigbert P. (wigbert) Benutzerseite


Angehängte Dateien:

Lesenswert?

@Benedikt K.

>Da kostet das Spielen mit dem LCD mehr Zeit.
>Und das schlimme ist, da kann man garnichts dagegen machen...

da sind der Phantasie wirklich kaum noch Grenzen gesetzt....

Wigbert

von GastTX (Gast)


Lesenswert?

Wigbert, meinste was das erst die Zeit drauf geht wenn du mit Grafik 
arbeitest  und du mit deine Diagramme spielst. ;)

von Benedikt K. (benedikt)


Lesenswert?

GastTX wrote:
> @Benedikt: Was ist ClockL und ClockH und für was sind diese?

Das sind die Werte die an PortB angelegt werden, mit jeweils dem 
Shiftclock Pin auf Low bzw. auf High.

> In deiner CLRLOOP dient es zum Löschen des Bildschirms?

Eigentlich ja. Ich schreibe allerdings den Zeichensatz auf das Display.

> Was ich auch nicht verstanden habe Wie kommt sagen wir wenn ich "ABC" in
> zeile 2 Spalte 30 darstellen möchte wie das berechnet wird bzw
> dargestellt wird und wo wird das gemacht?

Y ist der Pointer der auf das nächste zu schreibende Zeichen zeigt. Bei 
jedem Zeichen wird der um eins erhöht.
Bereichnet wird Y u.a. bei com16: Set Cursor.

> kann ich sagen das Buchstabe an x, y  -> 320*y+x ist? Oder fängt jede
> Zeile bei 1 an wo wird das gemacht?

Nicht 320 sondern 40, da ich nur Buchstaben verwende, und ein Buchstabe 
8 Pixel breit ist: Speicheradresse = Startoffset + x + 40*y
Und das wird auch genauso berechnet:
ldi temp2, XSize
mul RX, temp2
mov YH, r1
mov YL, r0
subi YL, low(-DDRAM)  ;Offset aufaddieren
sbci YH, high(-DDRAM)
add YL, temp    ;Spalte aufaddieren

> Wenn ich jetzt ABC Darstellen möchte, wird A dargestellt B und dann C ?
> Und wie geschied das genau ? Es wird ja im IRQ nur eine Zeile
> geschrieben?
Der gesamte Text (40x20 = 800 Zeichen) steht im SRAM. Jede Textzeile 
wird 12x ausgelesen und jeweils die entsprechende Pixelzeile ans Display 
geschrieben, da ein Buchstabe 12 Pixel hoch ist. Das ganze passiert 20x, 
dann ist ein Bild fertig.

> Muss ich die nicht gesetzen Pixel auch darstellen, damit es 240 Pixel
> pro Zeile werden und wo wird das gemacht?

320 Pixel pro Zeile. Es müssen alle übertrafen werden. Das passiert 
alles in dem Bereich zwischen LCD_Line: und reti. Alles andere an Code 
ist nur für das Laden von neuen Daten zuständig.

> Was ich auch nicht verstanden habe wenn Zeichen wie ein Bild ist und
> warum kann ich den nicht Pixel einzel setzen, wie müsste das ausehen,
> man kann ja den ganzen zeichensatz doch darstellen ?

An sich ist das möglich, aber dazu bräuchte man 320x240Bits. Der mega8 
hat aber nur 1k und keine 9,6kByte. Daher verwende ich Text, was den 
Speicherbedarf auf 40x20 reduziert.

> Danke für deine Erläuterungen hierzu, mir ist das Prinzip nicht ganz
> klar wie die Buchstaben bzw. Pixels auf den Display landen, wenn jede
> Zeile geschrieben wird und vom Buchstaben nur immer ein Teil ist, also
> eine Pixelbreite des Buchstabens.

Ganz grob betrachtet betrachtet, besteht die Software aus mehreren, 
verschachtelten Schleifen, hier mal der entsprechende Pseudo C Code

for textzeile=0; textzeile<20; textzeile++
  for zeichen_pixelzeile=0; zeichen_pixelzeile<12; zeichen_pixelzeile++
    for textspalte=0; textspalte<40; textspalte++
      displaybyte=schriftart[text[textzeile][textspalte]][zeichen_pixelzeile];

Die innerste Schleife ist im Code die hloop, die anderen beiden sind 
Zähler die in jedem Interruptdurchlauf erhöht werden.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

@ Benedikt K.
>mit etwa 10pF sollte der Inverter also auch
>für 5V brauchbar sein.

Also ich hab ein 10pF Kond. eingelötet. Habe bei 5V (genaugenommen 
4,95V)
260mA jetzt bei Displayanschluss, also knappe 1,3 W. Sollte gehen.
Aber! der orginale Kond. ist für 3KV ausgelegt. 2KV bei Oppermann kein
Problem. Sind denn wirklich mehr als 2KV zu erwarten? Ich dachte das
Ding läuft mit ein paar hundert Volt. Und dann C für doppelte Ua Spitze 
ausgelegt.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Schwer zu sagen. Es hängt stark vom Inverter ab.
2kV werden vermutlich funktionieren, aber keine Ahnung ob das 
zuverlässig sein wird.
Ich habe mal einige Datenblätter überflogen. Bei anderen Invertern für 
ähnlich große CCFL Röhren (wie die die orginal an dem Inverter von 
Pollin hängt) wird meist um die 1-1,5kVeff Leerlaufspannung angegeben. 
Also bis zu 2kVss. Es wird also knapp.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Das hab ich befürchtet das beim Start bis zum Nennbetrieb Spitzen 
auftreten, trau mir mit meinen bescheidenen Messmitteln auch nicht
ein Oszi ranzuhängen.
Dank Dir.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Messen funktioniert da sowiso nicht mit den üblichen Geräten, denn 
alleine schon die Kapazität eines Tastkopfs belastet das Signal so 
stark, dass die gemessene Spannung nicht mehr viel mit der Realität zu 
tun hat.
Das kann man leicht ausprobieren, wenn man z.B. die Kabel vom Inverter 
zum LCD anfasst. Dann wird das Display um einiges dünkler.
Ein 100:1 oder 1000:1 Tastkopf mit einer Kapazität im unteren 1 
stelligen Bereich (oder weniger) sollte man schon verwenden. Ich messe 
immer den Abstand den ein Funke überspringt wenn ich beide Pins 
annähere. Das ergibt einen groben Anhaltswert zur Spannung.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

und als Richtwert 1KV/mm oder wie geht das? Noch nie gemacht.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Ja, so in etwa. Es ist noch etwas von der Elektrodenform, Frequenz usw. 
abhängig, aber als ganz grober Anhaltswert reicht das. Zumindest zum 
Vergleich von verschiedenen CCFL Invertern.
Man sollte dies aber nicht allzulange/oft machen. Ich habe zwar noch nie 
einen CCFL Inverter zerstört, aber ausschließen dass nicht dochmal einer 
kaputt geht, kann man nie (da sich der Kondensator dann über den Trafo 
entläd und so eventuell einen hohen Strom in der Primärwicklung 
induziert und die Transistoren zerstört.) Vor allem der Kondensator wird 
dabei maximal belastet (hohe Blindleistung von etlichen VA).

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Na,ja ich hab da in erster Linie angst, das ich bei solchen Experimenten 
zufällig die Leiter berühre und mir den "Weidezauneffekt" antue.

Dank Dir aber für die Info.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Da kann man eigentlich relativ gefahrlos dranlangen. Man wird keinen 
Stromschlag bekommen, sondern sich nur den Finger verbrennen. Es stinkt 
dann ziemlich am Finger... Davon abgesehen spürt man aber kaum etwas.

Das ist teilweise ziemlich gemein. Aufgrund von parasitären Kapazitäten 
ist nämlich nich nur am Ausgang eine Spannung drauf, sondern auch am 
Feritkern von dem Übertrager. Wenn man den berührt vebrennt man sich 
also auch den Finger. Meistens spürt man das garnicht, sondern 
irgendwann stinkt es nur verbrannt, und dann merkt man erst, dass es der 
Finger ist.
Da sich die Energie auf einen sehr kleinen Punkt konzentriert, sieht man 
am Ende nur einen kleinen, schwarzbraunen Punkt auf dem Finger.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

>Aufgrund von parasitären Kapazitäten
>ist nämlich nich nur am Ausgang eine Spannung drauf, sondern auch am
>Feritkern von dem Übertrager

schön zu wissen, da hab ich natürlich beim Testen angefasst.
Wohl Glück gehabt.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Oder es einfach nicht gemerkt bzw. nicht gerochen...

von GastTX (Gast)


Lesenswert?

Ich hoffe das sind schöne Brandings gewesen ;)

Benedikt - Welche Ausgaben haben den die Pointer Z und X?
Y Zeigt auf das nächste ASCII-Zeichen im Speicher,OK

Und Z und X wo zeigen die hin und was machen diese?

Wie ist Alphabet eigentlich organnisiert (.db Zeile)
ich sehe mehr Nullen als Zeichen ( entsprechende HEX Werte ).

Wo ist da ein A oder ein O etc. codiert ( Beispiel? ) ?

GastTX

von Benedikt K. (benedikt)


Lesenswert?

GastTX wrote:
> Benedikt - Welche Ausgaben haben den die Pointer Z und X?
> Y Zeigt auf das nächste ASCII-Zeichen im Speicher,OK
>
> Und Z und X wo zeigen die hin und was machen diese?

Y: Schreibpointer
X: Lesepointer
Z: Pointer auf die Schriftart (ZL: ASCII Code, ZH Pixelzeile)

> Wie ist Alphabet eigentlich organnisiert (.db Zeile)

Ziemlich zerstückelt. Es beginnt mit der ersten Pixelzeile von Zeichen 0 
und geht bis zum Zeichen 255. Danach kommt die zweite Pixelzeile usw.

> ich sehe mehr Nullen als Zeichen ( entsprechende HEX Werte ).

Das ist normal. Bei Buchstaben sind weniger Pixel an als ausgeschaltet.

> Wo ist da ein A oder ein O etc. codiert ( Beispiel? ) ?

Das Bild für jedes Zeichen ist 8x12 Pixel groß, also 1x12Byte. Das für A 
liegt z.B. an Position 65 (erstes Byte), 65+256 (zweites Byte) usw.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Benedikt,
damit ich das auch verstehe:
>Das Bild für jedes Zeichen ist 8x12 Pixel groß, also 1x12Byte. Das für A
>liegt z.B. an Position 65 (erstes Byte), 65+256 (zweites Byte) usw.

Empfange "A"
1.Zeile hole Byte 65
2. Zeile jetzt müsste doch im Code irgendwo +256 stehen, wo wäre das,
oder wie?

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> Empfange "A"
> 1.Zeile hole Byte 65
> 2. Zeile jetzt müsste doch im Code irgendwo +256 stehen, wo wäre das,
> oder wie?

Das heißt, A (65) landet im SRAM an der Position auf die Y zeigt.

Irgendwann steht X in der Interruptroutine auf dem selben Wert. Dann 
wird 65 ausgelesen und nach ZL geschrieben. Z zeigt daher auf die erste 
Pixelzeile des Bildes eines A.
ZH ist ein Offset (Beginn der Zeichentabelle) + die Zeile. Daher wird 
nach jeder Zeile ZH um eins erhöht, was dem +256 entspricht. X wird um 
40 erniedrigt und zeigt wieder auf den Anfang der Zeile. Nun kommt X 
wieder zu der Stelle mit dem A, es wird wieder 65 nach ZL geschrieben, 
aber ZH ist jetzt um 1 größer, Z also um 256. Jetzt wird die zweite 
Pixelzeile ausgegeben. Das ganze läuft 12x so ab. Danach wird ZH wieder 
auf die erste Pixelzeile gesetzt, und X ganz normal erhöht um die 
nächste Textzeile zu verarbeiten.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Sorry Benedikt,
 irgendwie tu ich mir schwer.

Deine GCRom Daten 8x10 hat
-10 Blöcke
-jeder Block hat 32x8 = 256 Hexzahlen.

Wenn ich aus jeden Block die 65 abzähle müsste ich doch die
dort vorgefundene Hexzahl in Dual untereinander geschrieben ein "A" 
malen können.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Wigbert Picht wrote:
> Deine GCRom Daten 8x10 hat

Oder 8x8 oder 8x12 usw. je nach Höhe eines Zeichens.

> -jeder Block hat 32x8 = 256 Hexzahlen.

Nein, jedes Zeichen hat 8x10 bzw. 8x12 Pixel, also 10x1Byte bzw. 
12x1Byte also 10 bzw 12Bytes.

Die Zeichentabelle ist daher 10x 256Bytes bzw 12x 256Bytes groß.
Für jedes Pixel Zeichenhöhe werden daher 256 Bytes benötigt.
Um alles einfach zu machen, ist die Zeichenbreite auf 8Pixel = 1Byte 
beschränkt, so dass ich mit 256 Zeichen auf genau die 256 Bytes komme.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

Ja das verstehe ich ja,
ich versuch in der Font  mein "A" wiederzufinden, das gelingt mir nicht.
müsste doch abzuzählen gehen.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Das steht an Stelle 65, 65+256, 65+512 usw bis 65+2816
Diese Bytes als 8x12 bzw. 8x10 Grafik angeordnet ergeben ein A.

Achso, jetzt versteh ich was du als Block meinst. Die Anordnung als 32x8 
dient nur der Breite. Alle 256 Werte in einer Zeile wären doch etwas 
lang geworden.
Jeder Block ist also eine Pixelzeile.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

>Jeder Block ist also eine Pixelzeile
also brauch ich in jeden "Block" nur 65 abzählen
wenn ich jetzt aber abzähle
hab mit 1 angefangen(evtl falsch)
hab ich je Block 3.Zeile 1.Zahl (32+32+1)
0x00
0xC3
0x24
0x99
0x9A
0x9A
0x69
0x04
0xC3
0x00
sollte ein A? werden
kann da kein Muster erkennen.

Irgendwie zähle ich nicht richtig.

Wigbert

von Benedikt K. (benedikt)


Lesenswert?

Binär wären die Werte das hier:
00000000
11000011
00100100
10011001
10011010
10011010
01101001
00000100
11000011
00000000

Es sieht merkwürdig aus, ich weiß. Es gibt da noch einen Trick in der 
Software: Die unteren und oberen 4bits sind getauscht:
00000000
00111100
01000010
10011001
10101001
10101001
10010110
01000000
00111100
00000000

OK, man erkennt immer noch nix. Daher mal alle 0 durch ein Leerzeichen 
ersetzt:

  1111
 1    1
1  11  1
1 1 1  1
1 1 1  1
1  1 11
 1
  1111


Das sieht doch mal gut aus. Du hast dich also verzählt, da die Zählung 
bei 0 beginnt. Du hast also das Zeichen 64 gelesen.

von Wigbert P. (wigbert) Benutzerseite


Lesenswert?

>unteren und oberen 4bits sind getauscht

1:0 an Dich

Ich hatte das auf Papier aufgemalt mit Nullen konnte echt nichts 
erkennen.
Beim H wäre das einfacher gewesen.

Nun ist das Prinzip wohl klar.
Dank Dir für Deine Geduld.

Wigbert

von Kay B. (newbie)


Lesenswert?

hallo,
habe mir den inverter von pollin 700638 zugelegt nun meine frage 
bezüglich des anschlusses am lcd,im datenblatt vom lcd steht 1=gnd 2=hv 
aber am inverter steht nix dran ist das nun egal wie ich die kabel 
anschliesse?

mfg kay

von Benedikt K. (benedikt)


Lesenswert?

Mess mal am Inverter:
Ein Ausgang sollte Verbindung zur Eingangsseite haben. Das ist GND.
Ansonsten ist es aber (zumindest bei diesem LCD) weitestgehend egal, da 
die CCFL Röhre und die Zuleitungen symmetrisch sind.

von Kay B. (newbie)


Angehängte Dateien:

Lesenswert?

hallo,
so hab mal ein paar bilder vom inverter gemacht rechts ist der eingang 
links der ausgang.

ich glaube das bild mit der unterseite der oberste pin links oben ist 
wohl masse


danke erstmal für die antworten

mfg

kay

von Benedikt K. (benedikt)


Lesenswert?

Der Pin der über den Kondensator geht ist HV, der wo direkt am Trafo 
hängt, dass ist GND.
Eventuell reichen sogar 5V Betriebsspannung aus, wenn beide Ausgänge 
parallel geschaltet werden.

von Kay B. (newbie)


Lesenswert?

danke erstmal


werds nacher ausprobieren

von Kay B. (newbie)


Lesenswert?

hallo,
der inverter läuft bei 5volt,

aber das display bleibt dunkel nur beim reset des mega8 wirds kurz weis 
bleibt dann wieder dunkel habs genauso aufgebaut habe alle bauteile 
jetzt schon 3 mal getauscht keine besserung
an was könnte es  liegen

mfg
kay

von Benedikt K. (benedikt)


Lesenswert?

Mess mal die Spannung am VLCD Pin. Hier sollten etwa -18V anliegen.

von Kay B. (newbie)


Lesenswert?

hallo,


die spannung am VLCD Pin ist ungefähr 17,5Volt.

so wenn ich alles einschalte dann ist das ganze display gefüllt mit 
zeichen zahlen buchstaben.
gebe ich zb. hallo in mein terminal programm ein drücke enter dann wirds 
auch angezeigt oben links,so wenn ich einen text an einer bestimmten 
stelle haben will dann gebe ich 17,x5,y10 dann meinen text ber es wird 
dann 17,x5,y10 angezeigt.

verwende HTerm als terminalProgramm

mfg
kay

von Benedikt K. (benedikt)


Lesenswert?

Für die Position darfst du nicht 17,5,10 als ASCII (also als Ziffern) 
senden, sondern die Werte müssen als Dezimalwert gesendet werden.

von Avr N. (avrnix) Benutzerseite


Lesenswert?

@Benedikt:

Habe mal die AVR Studio dein Programm Simuliert- ist das normal das die 
Ausgabe die im Speicher steht clrloop Ausgabe des Zeichensatz  öfters im 
SRAM auftaucht? Y wird nicht zurück gesetzt ?

von Avr N. (avrnix) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hallo Benedikt,

ich wollte mal nur die Zeichenausgabe am Anfang haben und habe alles 
Rausgeschmissen was nicht gebraucht wurde.

Es wird nur ein Teil der Ausgabe gemacht und das LCD Flimmern ganz 
schön.

Anbei das ASM für AVR Studio und ein Foto der Ausgabe.


Kennt sich einer aus mit ASM in Bascom, möchte die Displayroutinen in 
BASCOM übertragen bzw den ASM Code ?


Thx

von Benedikt K. (benedikt)


Lesenswert?

Esetze mal das ret im Hauptprogramm durch
main:
rjmp main

ret springt aus der Funktion zurück, nur gab es nie einen Funktionsauf, 
daher gibt das dann irgendwann einen Stack undeflow.

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Danke das geht!

jetzt Beitrag "Re: Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus"

Warum steht dein Zeichensatz ( !ABC... ) mehrmals im Speicher ?

von Benedikt K. (benedikt)


Lesenswert?

Wo steht was mehrmals im Speicher ?

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Wenn ich dein Code im AVR Studio simultan ausführe wird Ab 0x60 
(Dataspeicher) der Zeichensatz, also  !ABCDEF etc. gespeichert und das 
mehrmals hintereinander weg.

Sieht am wenn man Menmory -> Data sich anschaut und runter scrollt.

Wo wird eigentlich Y auf Anfang gesetzt, wenn alle zeichen geschrieben 
sind ?

von Benedikt K. (benedikt)


Lesenswert?

Avr Nix wrote:
> Sieht am wenn man Menmory -> Data sich anschaut und runter scrollt.

Eigentlich sollte da  !"#$%&'( usw. stehen, das ganze sollte sich erst 
nach 6,4 Zeilen wiederholen.

> Wo wird eigentlich Y auf Anfang gesetzt, wenn alle zeichen geschrieben
> sind ?

Nirgends. Da aber der Cursor automatisch von Ende wieder auf Anfang 
zurück springt, ist das auch garnicht notwendig. Schadet aber auch 
nicht, wenn man es einbaut.

von Avr N. (avrnix) Benutzerseite


Lesenswert?

Benedikt K. wrote:
> Avr Nix wrote:
>> Sieht am wenn man Menmory -> Data sich anschaut und runter scrollt.
>
> Eigentlich sollte da  !"#$%&'( usw. stehen, das ganze sollte sich erst
> nach 6,4 Zeilen wiederholen.
>

 ja die zeichen kommen wie du die beschrieben hast - warum müssen den 
die Zeichen sich im SRAM wiederholen?

Reicht das nicht das diese Zeichen nur einmal im Speicher sind bzw 
welchen Grund hat das das die mehrmals da sind ?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.