Forum: Mikrocontroller und Digitale Elektronik Lcd Ansteuerung


von Richard (Gast)


Lesenswert?

Hallo liebe Mikrocontroller Community,

ich habe vor kurzen ein Projekt gestartet. Ich möchte zuerst mal ein Lcd 
mit einem Atmega328 ansteuern. Ich hab mir dafür das Arduino/Genuino Uno 
Board besorgt. Mein Problem liegt jetzt darin, dass ich die Pins 
D0/D1(PD0 und PD1) nicht toggeln kann. Wäre im Prinzip kein Problem, 
aber ich habe meine Platine bereits nach dem Tutorial:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung 
gefertigt.
Ich würde nur ungern eine neue Platine fertigen, da diese schon fix und 
fertig gelötet ist. Hättet ihr einen anderen Lösungsvorschlag für mich?

Vielen Dank!
Lg,
Richard

: Verschoben durch Moderator
von Karl M. (Gast)


Lesenswert?

Hallo Richard,

ja programmieren, so eine LCD Bib. ist sehr einfach aufgebaut und man 
kann jeden beliebigen Anschluss (Pin) verwenden.

http://www.avrfreaks.net/forum/tutc-lcd-tutorial-1001

von Richard (Gast)


Lesenswert?

Danke für die schnelle Antwort.
Ich hab die nächsten Tage leider keine Zeit das auszuprobieren. Hab ich 
richtig verstanden, dass ich meinen Pin PD0 und PD1 als Variable 
ansprechen und somit dann z.B. eine LED blinken lassen kann, was jetzt 
ja noch nicht möglich ist.

von Alex R. (itaxel)


Lesenswert?

Programmier dir doch eine Routine die dir die 2 pins tauscht

von Michael U. (amiga)


Lesenswert?

Hallo,

PD0 und PD1 sind beim Mega328 TxD und Rxd, also die serielle 
Schnittstelle. Diese sind beim Uno und Nano direkt mit dem 
USB/TTL-Wandler verbunden und dienen damit speziell zum Programmieren 
über den Bootloader des Arduino.

Man kann die beiden Pins also nicht ohne Eingriff in die Hardware des 
Arduino Uno/Nano frei nutzen.

Das hätte dir ein Blick auf den Schaltplan eines Arduino Uno sofort 
verraten.

Entweder einen AVR und das Drumrum selber zusammenbasteln und dann über 
ISP programmieren oder die Software UND Deine Leiterplatte so anpassen, 
daß Du andere Pins nutzt oder die Verbindung auf dem Uno trennen und 
dann den AVR per ISP programmieren oder zum Programmieren über den 
Bootloader jedesmal umbauen...

Oder z.B. einen ProMini nehmen, da sind PD0 und PD1 zumindest nicht fest 
verdrahtet.

Gruß aus Berlin
Michael

: Bearbeitet durch User
von Nxitimi (Gast)


Lesenswert?

Hallo,

ich habe eine Frage im Bezug auf LCD (2X20) Steuerung und die 
Vorwiderstände.

Ich sehe in vielen Foren, dass LCD nicht direkt an Mikrocontroller 
angeschloßen werden, sondern durch Vorwiderstände uns Busstreiber.

Die Frage ist braucht man immer Vorwiderstände und wenn ja warum?
Als schutz wegen strom?

Oft sehe ich auch schaltpläne wo Bustreiber angeschloßen werden. Muss 
überhaupt ein Busstreiber wie der 74HC245 angeschloßsen werden?

Ich verwende STM32F401 aks Mikrocontroller und hab ein LCD direkt 
angeschloßen und es funktioniert aber hab keine Ahnung wie lang halten 
wird?

Gruß

Nxitimi

von m.n. (Gast)


Lesenswert?

Nxitimi schrieb:
> Ich verwende STM32F401 aks Mikrocontroller und hab ein LCD direkt
> angeschloßen und es funktioniert

Das kannst Du so machen, wenn die Datenleitungen an Portpins 
angeschlossen sind, die eingangsseitig 5 V tolerant sind; das sind fast 
alle.
Beitrag "LCD-Modul 2x16 am STM32F4Discovery-Board"

von Nxitimi (Gast)


Lesenswert?

Hi,

Danke. Das heißt ohne den Busstreiber? und ohne Vorwiderstände?

von Nxitimi (Gast)


Lesenswert?

Nxitimi schrieb:
> Hi,
>
> Danke. Das heißt ohne den Busstreiber? und ohne Vorwiderstände?

Also laut datenblatt sind die Pins 5V tolerant. Aber wie gesagt in einer 
Schaltung sehe ich auch den Bustreiber vorgeschaltet, warum wenn die 
Pins 5v tolerant sind?

von holger (Gast)


Lesenswert?

>Aber wie gesagt in einer Schaltung sehe ich auch den Bustreiber
>vorgeschaltet, warum wenn die Pins 5v tolerant sind?

Das fragst du am besten mal jemanden der die Schaltung gesehen hat;)

von Wolfgang (Gast)


Lesenswert?

Richard schrieb:
> Ich hab mir dafür das Arduino/Genuino Uno
> Board besorgt. Mein Problem liegt jetzt darin, dass ich die Pins
> D0/D1(PD0 und PD1) nicht toggeln kann.

Warum kannst du sie nicht toggeln?

Was genau ist an deinem Board "Arduino"?
Da gehört auch ein SW-Framework dazu.

Und was für ein LCD verwendest du?

Zumindest in der Arduino Bibliothek für HD44780 kompatible LCD-Treiber 
wird der Arduino Abstraktionslayer für die Pin-Belegung verwendet und 
man kann folglich die Pinbelegung (weitgehend) frei festlegen. Es ist 
nur die passende Boardbeschreibungsdatei nötig.

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.