www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STK500 und Port`s


Autor: Samy (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag

Habe mich die letzten Tage mit dem ansteuern eines LCD`s 2x20
beschäftigt. Funktioniert auch ganz gut bis auf ne Kleinigkeit!
Steuere das Display mit einem STK500 auf dem ein 90S8515 arbeitet an.
So PortA steuert DB0-DB7 des Displays an. PortD steuert RS=PD2 R/W=PD3
und E=PD4 des Displays! Funtzt prima!!!!!!

So wenn ich jetzt E auf PD0 lege (Source-Code natürlich angepasst)
spinnt das Display d.h es läßt Zeichen aus oder zeigt falsche an! Das
selbe Prob habe ich wenn ich E mit irgendeinem Bit des PortB steuern
will!
Das Ansteuern von LED`s funktioniert mit allen Ports also ist der AVR
i.O.!
Das ist doch nicht normal, oder?
Hat der Controller ne Macke oder das STK!
Habe die Vermutung das der AVR eventuell keinen sauberen Kontakt zum
Board hat da die IC-Fassungen erstens recht billig sind und zweitens
recht oxidiert (Habe das Bord seit nem Monat)!
Wenn dem so ist das es vom Board kommt ist es dann ein Garantiefall?

Autor: Markus Oberschaetzl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

also zu den Ports des STK500 habe ich mir auch schon ein paar gedanken
gemacht: Wenn ich einen PIN des AVR auf 1 setze, geht die LED aus.
Konnte mir die Ursache aber nicht aus der Anleitung erschließen.
Deshalb: Probiere es mal mit einer invertierten LCD-Ansteuerung.

gruß Markus.

Autor: Samy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Schau dir mal das Tutorial an auf dieser Seite

http://www.mikrocontroller.net/tutorial/io-basics.htm

Die LED liegt mit der Anode (+) an VCC (Betriebsspannung) und die
Kathode (-) der LED liegt am I/OPin des AVR.
Wenn der I/OPin High-Signal hat, also +5Volt kann die LED nicht
leuchten da beide Anschlüsse der LED auf +5Volt liegen.
Wenn der I/OPind Low-Signal hat, also GND leuchtet die LED da der eine
Anschluß auf GND und der andere Anschluß auf +5Volt liegt.

Autor: Uwe Arends (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samy,

wahrscheinlich 'ne blöde Frage, aber hast du die Pins, an denen du E
erzeugen willst im entsprechenden (Datenrichtungs-)Register auf
"Ausgang" gesetzt?

groetjes
-uwe

Autor: Samy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist ne blöde Frage! Na klar!!!

P.S. Habe nicht umsonst meinen Source-Code hier zum download gestellt!

Autor: Uwe Arends (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, das mit dem Sourcecode hab' ich übersehen!
Aus dem geht allerdings auch nicht hervor, wie du mit DDRB im Falle von
E auf PortB umgehst!
PD0: wenn du RXEN in UCR gesetzt hast , also Serielles empfangen
willst, ist das ein Eingang.
Zum Thema Wackelkontakt: Miss doch das erzeugte Signal mal nach.

Autor: Samy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das PortB als Eingang konfiguriert war ist ausgeschlossen, da sonst das
Display überhaupt nicht funktioniert hätte!
Habe den Verdacht das die Datensignale nicht immer sauber übertragen
werden!
Nachmesen würd ich gern aber dazu brächte ich ein Oszi weil der Fehler
anscheinend nur bei höheren Frequenzen auftritt! Bei Dauersignal
(steuern von LED`s) funktioniert PortD.
Da kein Oszi vorhanden habe ich mal Reichelt wegen dem Fehler
angeschrieben. Antwort-->Sie können es gerne zu Atmel schicken zum
prüfen bzw.Rep oder Garantie!
Werd ich wohl einsenden und nen Monat warten müssen bis das Board
wieder da ist!

Habe ne Woche nach dem Fehler in meinem Source-Code bzw. Schaltung
gesucht bis ich auf das mit PortD gekommen bin. Das tue ich mir nicht
nochmal an da sollen sie das Teil auf Herz und Nieren Prüfen.

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.