Forum: Mikrocontroller und Digitale Elektronik Pollin AddOnBoard.ist LCD defekt?


von Gerhard H. (oderlachs)


Lesenswert?

Hallo Kenner des Fachs !

Wie es oft ist, findet man sein Problem mit der Suchfunktion nicht 
beantwortet, deshalb möchte ich hier fragen.
Ich habe auch zum ersten Male mit einem LCD Modul in der Anwendung 
(Pollin-Adon-Board)zu tun.
Eigendlich , so denke ich, sollte da eine Hintergrundbeleuchtung 
existieren.
Es fallen über dem Spannungszugang ans Display dort 3,7V ab, d.h das 
messe ich am Diplay zwischen beiden Kontakten K+A (K= Masse u. A= über R 
220 Ohm gegen +5V gelegt).
Ich kann auch keine Zeichenausgabe erreichen, wenn ich den Kontrast 
erhöhe sehe ich eine Zeile von 16 Feldern, lt.Angabe sollte das aber 
2-zeilig sein.
Natürlich wie so oft ist auch keine Angabe zu dem Display mit dabei, so 
das ich mal eine Datenblatt zu Hilfe nehmen könnte.
Nun kann ja auch mir ein Fehler beim Bestücken/Löten unterlaufen sein, 
darum frage ich mal hier, wie ich grundlegende Eigenschaften eines 
Display prüfen kann, wenn es aber schon eingelötet ist.
Ich kann den Bausatz zwar tauschen, doch dann habe ich auch wieder die 
komplette Neubestückung des AddonBoards vor mir.
Ich sage mal jetzt schon Danke für eventuelle Hilfsmitteilungen.

Gruss und Dank

Gerhard

von Tom Z. (tom_z)


Lesenswert?

Gerhard Hinze schrieb:
> so denke ich, sollte da eine Hintergrundbeleuchtung
> existieren.

Hallo,
ich habe es auch.

Zur Hintergrundbeleuchtung:
Ja es existiert eine.
Die 220 Ohm sind zu groß.
Deswegen zu dunkel


MfG Tom

von Oliver J. (skriptkiddy)


Lesenswert?

>wenn ich den Kontrast erhöhe sehe ich eine Zeile von 16 Feldern
Das ist gut und bedeutet der Displaycontroller ist aktiv und muss nur 
noch initialisiert werden.

Zur Hintergrundbeleuchtung:
Es kann sein, dass die 220 Ohm zu groß sind. Mit den (5V-3.7V=1.3V) an 
dem 220Ohm  Widerstand zieht die Beleuchtung lediglich 6mA. Das sollte 
zu wenig sein. Mach mal 47 Ohm anstelle der 220 Ohm oder noch weniger 
rein.

Unter dem Strich sollte das Display funktionieren. Wie sieht dein 
Quellcode für das Display aus?

von Gerhard H. (oderlachs)


Lesenswert?

Also ich danke Euch Beiden erst mal recht schön..

Werde mir die Infos zu dem Vorwiderstand mal zu gute führen und den 
verringern..
Zum Code , da habe ich nur das was Pollin da bietet im Downloadbereich 
und einen Atmega8 als Chip im Evaluationsboard..

Ich bin ja noch "blutiger" Anfänger und habe rein Niemanden den ich mal 
real befragen könnte, bin also immer auf Forum Mail oder vielleicht auch 
wenn mal klappt per Telefon angewiesen.

Gruss + Dank Gerhard

von Oliver J. (skriptkiddy)


Lesenswert?

Das Problem bei dem Code war glaube ich, dass die Jumper auf dem Board 
nicht die Verbindungen herstellen, welche benötigt werden.

Software:
Lcd_db4 Alias Portb.0
Lcd_db5 Alias Portb.1
Lcd_db6 Alias Portb.2
Lcd_db7 Alias Portb.3
Lcd_e Alias Portb.4
Lcd_rs Alias Portb.5


Diese Verbindungen musst du selber mit Brückendraht herstellen.

Bedenke aber, dass Pollin so bescheuert war(ist) aus PA0...PA7 --> 
PA1..PA8 zu machen. Das gilt für die anderen Ports übrigens auch.

Edit:
Entferne bitte die Jumper am LCD.



Gruß Skriptkiddy.

von Gerhard H. (oderlachs)


Lesenswert?

Also leute ich  weiss gar nicht wie ich Euch danken soll für solch gute 
und schnelle Hilfe. Ich war ja nun auch solch Dummchen und habe das 
Display eingelötet weil ich keine verwendbaren Stecckerleisten gefunden 
hatte.

Jedenfalls habe ich erst mal parallel zum 220 Ohm R 100 Ohm gelötet 
(Rges.68 Ohm) und das Display ist leicht beleuchtet (Freude !!) soll ja 
keine Zimmerlampe werden ;).

Nun muss ich mal sehen ob ich das andere noch hinbekomme, ja mit den 
ganzen Verbindungssteckern/Jumper da schau ich noch rein wie "Schwein in 
Uhrwerk" ;)

Ich weiss nicht ob ich den Link(Code) vom Download bei Pollin einfach 
hier reinsetzen darf, ich habe ja sonst nix weiter vorerst bin ja noch 
beim Lernen.

Die Ports PA0...PA7(Atmega) gehen an DB0...DB7(LCD) und sind mit Jumper 
verbunden (PA0..7 wird auf der Lpl schon verwendet in der 
Schaltzeichnung allerdings noch PA1..8)
PB0 = E, PB1= R/W PB2= RS (ChipPort <-> LCD-Pin)...

Na mal sehen, bin ja schon beruhigt das es erst mal soweit geht..muss 
mich mal in Ruhe damit weiterbefassen und mich hier auch weiter belesen 
im Forum.

Gruss und Danke !!

Gerhard

von Oliver J. (skriptkiddy)


Lesenswert?

Gerhard Hinze schrieb:
> Ich weiss nicht ob ich den Link(Code) vom Download bei Pollin einfach
> hier reinsetzen darf, ich habe ja sonst nix weiter vorerst bin ja noch
> beim Lernen.
Brauchst den Code nicht reinsetzen. Habe ihn hier vor mir.


> Die Ports PA0...PA7(Atmega)
Der ATMEGA8 hat keinen PORTA. Deshalb hat Pollin mal ordentlich Scheiße 
gebaut mit der Schaltung für das LCD. Man muss zwingend beim Tiny2313 
und beim Atmega8 neu verdrahten, um das LCD in Funktion zu setzen. Beim 
Mega16 und beim Mega32 reicht es die Software anzupassen.

Du hast doch Präzissionsleisten für alle Ports und für das LCD auf dem 
Addon-Board. Stelle über diese Leisten folgende Verbindungen her und 
entferne zumindest die 3 Jumper am LCD, die PORTB betreffen. Dann sollte 
das Demohexfile das LCD dazu bewegen etwas anzuzeigen.

  LCD    |   PB
---------+----------
  DB4    |   PB1
  DB5    |   PB2
  DB6    |   PB3
  DB7    |   PB4
  E      |   PB5
  RS     |   PB6

(funktioniert bei Bascomdemo für Tiny2313  Mega8  Mega16 / Mega32)

PS. Das sind die Bezeichnungen, wie sie Pollin auf das Board gedruckt 
hat.

Gruß Skriptkiddy

von Gerhard H. (oderlachs)


Lesenswert?

Danke Skriptkiddy, danke, ich werde mir Mühe geben das zu vollbringen. 
Ich werde mal die SteckJumper  von der langen reihe alle entfernen und 
dann wie Du geschrieben hast die Buchsenreihe von portB mit der vom LCD 
entsprechend mit Draht verbinden...

Muss ich am Hauptboard noch was extra machen oder genügt es nur das 
Hex-File in den Chip zu schreiben, Entschuldige das ich mich  so BLÖDE 
anstelle , aber ich muss erst mal hier was kapieren was ich noch nie 
getan habe und auch noch keiner vorher mir erklärte...

So dann werde ich mal Drähte vorbereiten und dann stecken wie 
beschrieben und das Ergebnis mitteilen

Ich danke Dir nochmals Skriptkiddy , das Du Dich mit mir dummen Anfänger 
so viel Mühe gibst.

Gerhard

von Oliver J. (skriptkiddy)


Lesenswert?

Gerhard Hinze schrieb:
> Muss ich am Hauptboard noch was extra machen oder genügt es nur das
> Hex-File in den Chip zu schreiben
Wenn das Hexfile zu dem Quellcode passt, dann solles es einfach so 
klappen.


Gerhard Hinze schrieb:
> Ich danke Dir nochmals Skriptkiddy , das Du Dich mit mir dummen Anfänger
> so viel Mühe gibst.
Auch ich war mal Anfänger ;). Und der Mist, den Pollin mit den beiden 
Boards verzapft hat, hat mir den Einstieg damals sinnlos schwer gemacht.

Gruß Skriptkiddy

von Gerhard H. (oderlachs)


Lesenswert?

Also , nun habe ich erst mal den "mist" begriffen den Pollin bei der 
Beschriftung gemacht hat..habe nun alle Jumper entfernt auf beiden 
Board's.
Nur den für die Summerverbindung habe ich gelassen.
Habe mir das BAS-Listing zu Gemühte geführt und danach die AdOnPlattine 
verdrahtet..LED's, LCD, und auch die Taste 1.

Habe dann die Pollin-Bascom Datei compiliert und in den Atm8 
geschrieben, es tut sich nix, weder LCD, noch LED auch kein Summer gibt 
einen Ton von sich. Nun bin ich echt am Zweifeln an mir selber, aber 
irgentwie kann ich das nicht begreifen...

Was ich allerdings am Listig sah, das dort 1.000.000 Hz also 1MHz als 
Q-Freqenz angegeben ist, auf der Platte ist aber ein 16MHz Q drinnen.
Auch kenne ich mich noch nicht so mit den Fuse-Bits aus, vieleicht ist 
da auch der Grund für mein Misserfolg zu suchen...
Bin schon richtig entmutigt...

Ich werde jetzt mal ein altes Blinkprgramm reinbrennen und mal sehen ob 
das über das AdOnBoard dann auch funzt.

Vorerst nochmals vielen Dank für die Unterstützung.

Gruss Gerhard

von Gerhard H. (oderlachs)


Lesenswert?

Ich glaube was gefunden zu haben, habe nochmals den Hex-Code von Pollin 
genommen für den Atm8 nun pfeift es kurz und die Led's blitzen..im 
BAS-Listing ist ja 1MHz und nicht wie ich habe ein 16MHc Crystall 
angegeben...ich hatte es ja etwas umgeschrieben auf 16Mc, aber da der 
Hex-Code grösser als 2k ist macht meine Bascom-Demo-Version das nicht 
mehr mit(??)
..ich denke weil das da mit der Taktfrequenz nicht stimmt bekomme ich 
das auf dem LCD auch gar nicht mit wenn da was geschrieben steht..oder 
auch nicht steht.
Da muss nun wen finden der für mich das umstricken kann auf 16MHz und 
als Hex compiliert...

Gerhard

von Oliver J. (skriptkiddy)


Angehängte Dateien:

Lesenswert?

Gerhard Hinze schrieb:
> ber da der
> Hex-Code grösser als 2k ist macht meine Bascom-Demo-Version das nicht
> mehr mit(??)

Schmeiß doch ein bisschen Code weg. Siehe Anhang.

Gruß Skriptkiddy

von Tom Z. (tom_z)


Lesenswert?

Hallo,

ich habe mein Board ein bisschen umgebaut:
Das LCD kann man ja mit Jumperleiste oder durch Drähte anschliessen.
Ich hab bei der Jumperleiste (von der Lötseite) die PINS DB0-DB3 und R/W 
fest auf GND gelegt. So betreibe ich es immer im 4 bit mode.

MfG Tom

von Gerhard H. (oderlachs)


Lesenswert?

Skript Kiddy schrieb:

>> Hex-Code grösser als 2k ist macht meine Bascom-Demo-Version das nicht
>> mehr mit(??)
>
> Schmeiß doch ein bisschen Code weg. Siehe Anhang.
>
> Gruß Skriptkiddy

Mit dem Anhang nur Compilierfehler ?? irgendwas mit endif (??)

Zitat @Tom:
Ich hab bei der Jumperleiste (von der Lötseite) die PINS DB0-DB3 und R/W
fest auf GND gelegt. So betreibe ich es immer im 4 bit mode.

Müssen die denn im 4-BitModus auf GND ?? sind hier offen...


Also ich habe mal so alle Componenten auf dem AdOn gestestet, lässt sich 
alles ansprechen, nur eben keine Ausganbe auf dem LCD..weil eben alles 
nur so durchpfeift mit den 16MHz anstatt der 1MHz... ich bekomms einfach 
nicht in den Griff mit dem LCD, weil ich für eigenen Code dafür(LCD) 
noch zu "blöd" bin.. ;)
Wo kann ich denn erfahren wie die FuseBits gesetzt werden müssen, falls 
die auch nicht stimmen... Habe damal auf ext. 16Mh Oszillator gesetzt 
aber nur für einfache Testschaltungen

Gerhard

von Oliver J. (skriptkiddy)


Lesenswert?

#if _chip <> 0
'**************************************
'*** 3x Test-Tonausgabe auf Summer ****
'**************************************


lösche das #if _chip <> 0

von Hans M. (Firma: mayer) (oe1smc) Benutzerseite


Lesenswert?

hallo gerhard

> Wo kann ich denn erfahren wie die FuseBits gesetzt werden müssen, falls
> die auch nicht stimmen... Habe damal auf ext. 16Mh Oszillator gesetzt
> aber nur für einfache Testschaltungen

die anderen fuse-bits sollten eigentlich passen, sodass du sie nicht 
umstellen musst. wenn du nicht den ext 16 mhz oszillator eingestellt 
hast, dann verwendet das system den internen 1 mhz, auch wenn ein 16 mhz 
quarz drann haengt. bei einem vorgefertigten hex file muss das 
natuerlich schon passen.

nicht aufgeben, am anfang ist es viel information, die man da auf einmal 
braucht. da muss man einfach durch, sprich man muss sich durch lesen und 
dieses forum gibts ja auch noch.

schoene gruesse
hans

--

von Gerhard H. (oderlachs)


Lesenswert?

Allen netten Helfern nochmals herzlichen Dank für alle Anregungen, heute 
habe ich nun ein neues LCD Modul und auch Unterlagen dazu + Testprogramm 
erhalten.
Nun muss ich mal sehen wie ich das jetzt hinbekomme, altes LCD vom 
AdOnBoard löten und neues per Kabel/Stecker verbinden. Sollte ich 
Erfolge haben werde ich das hier posten, damit der Grund aufgedeckt wird 
warum das alte LCD  nicht ging.

Gerhard

von Tom Z. (tom_z)


Lesenswert?

Gerhard Hinze schrieb:
> Zitat @Tom:
> Ich hab bei der Jumperleiste (von der Lötseite) die PINS DB0-DB3 und R/W
> fest auf GND gelegt. So betreibe ich es immer im 4 bit mode.
>
> Müssen die denn im 4-BitModus auf GND ?? sind hier offen...

Ja,
so wär es normal richtig. Auf GND legen und nicht irgendwie in der Luft 
hängent. Aber es geht bei manchen auch "in der Luft hängend".
Naja Die Pins auf GND legen und es geht sicher.



MfG Tom

von spess53 (Gast)


Lesenswert?

Hi

>Ja, so wär es normal richtig. Auf GND legen und nicht irgendwie in der Luft
>hängent. Aber es geht bei manchen auch "in der Luft hängend".
>Naja Die Pins auf GND legen und es geht sicher.

Da die Datenleitungen interne Pull-Up-widerstände haben ist GND eher 
kontroproduktiv.

MfG Spess

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.