Bascom LCD Anzeige an Mega8 über 2 Ports anschliessen?

Fuzzy

Mitglied
09. Dez. 2008
60
0
6
Worfelden
Sprachen
Hallo,

ich bin gerade dabei mir eine Experimentierplatine für einen ATmega8 zu bauen. Da ich die Interrupts (PD2 u. PD3), den ICP Eingang (PB0) und einen ADC Eingang (z.B. PC0) nicht belegen möchte bleibt kein kompletter Port mehr frei der mir die benötigten 6 Pins (RS, E, DB4,DB5,DB6,DB7) liefert. Ich programmiere in BASCOM. Kann es zu Problemen kommen wenn ich z.B. die DB4 - DB7 Anschlüsse von Port B nehme und RS und E von Port C oder kann es da zu Schwierigkeiten kommen? Ich denke mal nicht, aber ich wollte es klären bevor die Platine fertig ist.
Vielleicht könnt ihr mir auch noch ein 2-zeiliges LCD empfehlen das problemlos zum Laufen zu bekommen ist. Ich hab 2 hier das eine lief sofort (DV-20208) und ein TC1602E-01 das bekomm ich irgendwie nicht zum Laufen. Vielleicht klappts ja wenn ich die Platine fertig habe :confused:

Danke schon mal.

Gruß
Roger
 
Moin,


Also von BASCOM weiß ich noch, dass die Datenbits (DB4 -7) an einem PORT hängen müssen (Wenn du die Standart Routine nimmst) bei den Steuerleitungen (EN , RS usw.) Ist es egal, welchen Port du da nutzt...
 
Hi Roger,

und ein TC1602E-01 das bekomm ich irgendwie nicht zum Laufen.

Das Ding ist glaube ich von Pollin. Kommt mir von der Bezeichnung jedenfalls sehr bekannt vor.
pollin.de - LCD-Modul TC1602A-08
pollin.de - LCD-Modul TC1602A-09
sollten alle mit HD47780-kompatiblem Controller sein und eigentlich streßfrei funktionieren. Problem ist eigentlich immer eine etwas falsche Kontrastspannung. Dann funktioniert es zwar aber man sieht nicht das es funktioniert :p

Man kann die Displays auch ohne Atmel in Betrieb nehmen. Mit Versorgung und Kontrastspannung sollte man den Kontrast so einstellen können das die Anzeige bei einer Einstellung irgendwann von Hell auf Dunkel umschlägt. An der Stelle etwas zurück so das die Pixel gegenüber dem Rand ein wenig dunkler erscheinen. Dann sollte auch was zu sehen sein wenn die Ansteuerung paßt. Bei manchen Displays ist bei richtiger Einstellung jede zweite Zeile dunkel. Da kann man auch drauf achten.

Das mit den Pins wurde ja schon gesagt. Ich lege die Datenbits (D4-7) auch gerne auf einen Port damit nicht alles kunterbunt ist. Sonst kommt man beim Programmieren schnell durcheinander.

Gruß
Dino
 
Hi Roger,

kann ich bestätigen, du kannst die Daten-Bits und Steuer-Bits auf verschiedene Ports legen, funktioniert unter BASCOM und auch unter LunaAVR.
Eine Falle lauert aber - du solltest sicherstellen, dass die verwendeten Pins auch zur Verfügung stehen. Ich hatte mal ein Problem, weil bei einem ATMega32 JTAG auf enable stand (Fuse-Bit!), da kannst du lange suchen, warum das Display nichts anzeigt. (steht natürlich auch im Datenblatt)

• TDI – Port C, Bit 5
TDI, JTAG Test Data In: Serial input data to be shifted in to the Instruction Register or Data Register
(scan chains). When the JTAG interface is enabled, this pin can not be used as an I/O pin.
• TDO – Port C, Bit 4
TDO, JTAG Test Data Out: Serial output data from Instruction Register or Data Register. When
the JTAG interface is enabled, this pin can not be used as an I/O pin.

The TD0 pin is tri-stated unless TAP states that shifts out data are entered.
• TMS – Port C, Bit 3
TMS, JTAG Test Mode Select: This pin is used for navigating through the TAP-controller state
machine. When the JTAG interface is enabled, this pin can not be used as an I/O pin.
• TCK – Port C, Bit 2
TCK, JTAG Test Clock: JTAG operation is synchronous to TCK. When the JTAG interface is
enabled, this pin can not be used as an I/O pin
.

Soweit ich mich erinnere hat der ATMega8 aber kein JTAG-Interface.

Gruß
- gp177 -
 
Janiiix3 schrieb:
Also von BASCOM weiß ich noch, dass die Datenbits (DB4 -7) an einem PORT hängen müssen (Wenn du die Standart Routine nimmst)
das verwechselst du mit C, in Bascom sind alle Pins für Dotmatrix Displays frei wählbar.

SickBoy
 
das verwechselst du mit C, in Bascom sind alle Pins für Dotmatrix Displays frei wählbar.

SickBoy


Ich weiß es nicht mehr ganz genau !
Bei den Datenbits war ich mir eigentlich sicher das es an einem Port sein muss.... Bei den Steuerleitungen, konnte man frei wählen wo man was anschließt...
 
Ich glaube ihr habt beide Recht.
Wenn ich mich richtig erinnere (meine Bascom Tage sind schon Jahre her) gab es 2 Libs für das LCD. Eine normale wo es egal war welcher D-Pin wo anlag, und eine (schnellere) wo die 4 Datenbits an einem Port liegen mussten.

Prinzipiell würde ich aber versuchen die Datenpins der Reihe nach auf einen Port zu legen, idealsterweise auf PORTx0..3 oder PORTx4..7). Das macht es in der Entwicklung einfacher, da man das (halb)Byte mehr oder weniger direkt auf den Port legen kann. Die Steuerleitungen ist egal wo die liegen.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)