www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BASCOM und 2*16-LCD - geht nicht?


Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe mich ganz neu an das Thema µC gewagt... Habe nun mal testweise an 
einen Atmega16 ein 2*16LCD (HD47780) gehängt und das geht irgendwie 
nicht...

Die erste Zeile enthält einen schwarzen Balken, in der zweiten kommt 
nichts...

Habe folgenden Code verwendet, den ich als Muster wo gefunden hatte:


$regfile = "m16def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 8000000
$baud = 9600


 Config Lcd = 16 * 2
 Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , 
Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6
 Config Lcdbus = 4

 Cls
 Locate 1 , 1
 Lcd "hallo welt"

End



angeschlossen ist das display wie folgt:

01 GND
02 Vcc
03 GND
04 Port B6
05 GND
06 Port B5
07 offen
08 offen
09 offen
10 offen
11 Port B1
12 Port B2
13 Port B3
14 Port B4

Wo ist mein Fehler? Hardware? Software?

Würde mich freuern, wenn mir da jemand helfen könnte...

Gruss Daniel

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so... jetzt bin ich auch ordnungsgemäss registriert ;)

Autor: Tobias G. (zer0q12)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, passen die Ports und ist der Kontrast bzw die Hintergrundbeleuchtung 
richtig angeschlossen? Sonst evtl das hier mal durchlesen: 
http://halvar.at/elektronik/kleiner_bascom_avr_kur... hat 
mir sehr geholfen

mfg Tobias G

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da finde ich auch nix was falsch wäre :(
Kontrast stimmt, sonst wäre der schwarze Balken ja nicht zu sehen ;)
Und Beleuchtung hat das LCD keine... Aber auch wenn, müsste es ja auch 
was anzeigen, wenn diese aus wäre ;)

Autor: Tobias G. (zer0q12)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi , $crystal = 8000000 8Mhz Quarz in verwendung?

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jepp!

Autor: Tobias G. (zer0q12)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was mir sonst noch einfällt ich habe die offenen Ports noch an Gnd 
gelegt und sonst schon getestet ob überhaupt der Atmega läuft sonst 
fällt mir auch nix mehr ein.

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe mal schnell die offenen auf GND -> bringt nix
und wenn ich ein Lauflicht programmiere und LEDs dranhänge, geht alles. 
Der Atmega ist also definitiv NICHT defekt...

Autor: Tobias G. (zer0q12)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
03 GND direkt an Gnd dran oder ein Poti dazwischen? Zum richtigen 
einstellen des kontrasts?

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Direkt. Hatte vorher einen Poti drin. Bester Kontrast war bei 0 Ohm ;)

Autor: Tobias G. (zer0q12)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was steht im Datenblatt drin?

Autor: Daniel H. (danielhd)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
nix... siehe anhang...

Autor: ea (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast Du vielleicht noch Deinen ISP-Programmer gleichzeitig an PortB?

Autor: Andreas M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht stimmt das timing der Initialisierung nicht

Autor: ea (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast Du > 4,5V Betriebsspannung? Schreib Doch mal ein Programm, das die 
Ausgänge wackeln läßt, und miss die Verkabelung durch.

Hast Du dir richtige Reihenfolge der Pins (also mit nicht versehentlich 
am Display mit 14 statt mit 1 angefangen)?

Klingt albern, ist aber alles schon vorgekommen.. :-)

Autor: ea (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
..und laß mal die Zeilen "config lcdbus.." und "Locate ..." weg.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sicher, dass du B1 bis B4 benutzt hast und nicht doch eher B0 bis B3?

Autor: dj4jz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hattest die Frage noch nicht beantwortet, ob du deinen ISP-Programmer 
noch am Port hast. Der belegt die MOSI (PB5) und MISO (PB6) und SCK 
(PB7) Ports. Das könnte daran liegen. Sonst sollte der Code von dir 
klappen.
Sehr hilfreich ist es, wenn du in Excel eine Tabelle mit der Belegung 
der Ports für den ATMega machst. Da siehst du dann sofort, was du 
problemfrei belegen darfst und was nicht.

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Anschlüsse sind richtig... Hatte schon falsch rum angeschlossen, da ging 
garnichts... In richtiger Reihenfolge bekomme ich immerhin den schwarzen 
Balken... Spannung ist 4,91 Volt, also denke ich okay. Anschlüsse sind 
wirklich B1-B4 und nicht 0-3. ISP ist im Betrieb abgeklemmt. Aber liegt 
der nicht sowieso auf C?

Autor: ea (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jtagen fuse ausgeschaltet?

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ea schrieb:
> jtagen fuse ausgeschaltet?

jepp

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
noch was ganz komisches... vllt. hilft das ja weiter... innerhalb des 
schwarzen balken in zwile 1 befindet sich manchmal der blinkende cursor. 
wenn ich dann reset drücke, wandert der eine stelle nach rechts?!?!?!?!?

Autor: Tobi W. (todward)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was hast de denn mit der R/W leitung gemacht?

Weil kann sein das der LCD-controller auf read steht und somit keine 
daten annimmt...

Dumme frage:
Was hast du denn als quarz/oszillator? Den internen oder einen externen? 
sonst guck doch nochmal die fuses nach.

gruß
tobi

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
r/w ist wie oben schon geschrieben auf gnd
quarz habe ich externes und auch so in den fuses... wie gesagt. andere 
sachen laufen auf dem µC problemlos...

Autor: Tobi W. (todward)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das datenblatt ist ja bei solchen sachen sehr aufschlussreich;-)

Was ist denn da für ein controller drauf?
Vll ist der ja nicht zu den Bascom routinen compatible!

gruß
Tobi

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neeeeeeeeeeeein... ich habs... ein kabel hatte nen wackler... kabel ist 
gebrochen... hab alle kabel mit dem multimeter durchgemessen und eines 
gute "morsezeichen" von sich... jetzt gehts... da soll mal einer gleich 
drauf kommen... :(

Autor: Tobi W. (todward)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann noch viel spass bei weiteren experiementen....
Woher hast du das display und wie hast du die Leitungen daran bekommen?

Autor: Daniel H. (danielhd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe von einem bekannten wegen umzug ein komplettes "hobby-labor" incl. 
bauteilen geerbt. da waren displays dabei... leitungen sind dran 
gelötet. habe das auf dem bread-board verkabelt und als jumper-kabel die 
innereien eines netzwerk-kabels genommen. das war wohl schon älter ;)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.