Initialisierung M50530 LCD Display

OP #3061079
Lesenswert?
• ▲
▼
Hallo Gemeinde

Habe leider auch Probleme mit dem M50530 LCD Display und der 
Initialisierung.
Ich habe die (durchaus verstandene) Software an meine Schaltung 
angepasst, aber außer den alt bekannten Balken tut sich nichts.

Routingbedingt musste ich die CTR-Leitungen auf einen anderen Port legen 
als die Daten-Leitungen.

Durchgeklingelt habe ich alles schon 10x
F_CPU ist richtig.
CKDIV8 ist auh gelöscht.

Im Schaltplan ist noch ein ATMega8 vermerkt, aber es hängt ein 
pingleicher ATMega328P dran.
Compiler weiß darüber bescheid.


Vielleicht kann jemand kurz mal reingucken.

Danke
Torsten
Angehängte Dateien:
Gast #3061422
Lesenswert?
• ▲
▼
Meiner Meinung nach stimmt die PIN-Belegung nicht.

Deine Belegung:
PIN  PORT
2  PD4
9  PD5
10  PD6
11  PD7
23  PC0
24  PC1
25  PC2
26  PC3

Belegung laut Datenblatt:
PIN  PORT
2  PD0
9  PB6
10  PB7
11  PD5
23  PC0
24  PC1
25  PC2
26  PC3

Thomas
#3061468
Lesenswert?
• ▲
▼
Moin Torsten,

interessant, dass mein alter Code noch Verwendung findet :-)

Prüfe bitte mal die Anschlussbelegung des Displays an JP2. Meine 
Pinbelegung sagt nämlich, dass Display-seitig an Pin 11 R/W liegt und an 
Pin 13 OC1. Das ist bei Dir im Schaltplan genau andersrum eingezeichnet. 
Eventuell ist hier ein Fehler, falls das Display 1:1 mit JP2 verbunden 
ist.

Ohne jetzt durch den kompletten Code geschaut zu haben... aber darf ich 
fragen, warum Du in der Software einige Delays verändert bzw 
auskommentiert hast (z.B. in der Funktion LCD_execute())? Längere Delays 
sind in der Regel unproblematisch, auskommentieren unter Umständen 
schon.

@Thomas: Die Belegung scheint sich in den verschiedenen Bauformen des 
AVRs zu unterscheiden. Evtl. verwendet Torsten PDIP statt TQFP?

Gruß,
 Daniel J.
OP #3061707
Lesenswert?
• ▲
▼
Hallo Daniel

Ja, Danke für den Code :-)) Ist sehr weit rumgekommen ...

Das mit der Anschlussbelegung werde ich prüfen.
Delays habe ich aber keine verändert oder gestrichen, sondern den Code 
von hier probiert und nur die Ports angepasst:
Beitrag "Re: LCD Display 8x24 mit M50530"

Timing könnte aber DER Hinweis sein, da ich bei einem anderen Code aus 
dem Netz, der aber scheinbar auch auf Deinem basiert mal das CLKDIV8 
Fuse gesetz hatte und dann ging was.

Verwende auch TQFP.

Ist Dein Code von hier:
Beitrag "Re: LCD Display 8x24 mit M50530"
Das Original mit original Delay Werten ?


Melde mich, wenn alles geht.

Danke
Torsten
#3061764
Lesenswert?
• ▲
▼
Hi Torsten,

ja, dein zweiter Link führt zu meinem originalen Code. Dort habe ich 
kurz reingeschaut und sehe z.B. in der LCD_execute()-Funktion Aufrufe 
von delay_short(). In deinem Code stehen hingegen auskommentierte 
delay(1).
Das muss nicht in jedem Fall gleich ein Problem sein (je nach Takt usw.) 
- es war mir halt aufgefallen. Mein Code ist sicherlich nicht perfekt, 
vielleicht ist das Delay gar nicht erforderlich.

Wenn Du meinst Deine Pinbelegung sei richtig, kannst Du das Timing ja 
mal testen. Einfach mal den Takt stark reduzieren (der Clock-Prescaler 
kann beim ATmega328P zur Laufzeit per Software geändert werden) oder 
signifikante Delays einbauen.

Viel Erfolg bei der Fehlersuche!

Gruß,
 Daniel J.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.