mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega16 PortC, Bit0 leuchtet nur so halb


Autor: Michael Scherner (michael81nrw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen! Vorweg: Mein Problem ist nicht der JTAG (der ist 
deaktiviert)

Folgendes Problem:

Ich verwende einen ATMega16 auf dem STK500. An PortC habe ich die LEDs 
angeschlossen.

Hier mein noch primitiver Quelltext:

.include  "C:\Programme\Atmel\AVR 
Tools\AvrAssembler2\Appnotes\m16def.inc"


ldi  r16,  low(ramend)
out  SPL,  r16

ldi  r16,  high(ramend)
out  SPH,  r16

;_____Definitionen
ldi  r16,  255          ;
out  DDRC,  r16          ;Port C als Ausgang

;_____Hauptprogramm

ldi  r16,  0          ;
out  PortC,  r16          ;PortC LEDs an

Start:
rjmp  Start



Das Ganze kompiliert und auf den Prozessor übertragen hat zum Ergebnis, 
dass die LEDs an PortC, Bit 1-7 voll leuchten.

Die LED an PortC, Bit 0 leuchtet nur so halb. Woran kann das liegen?

Ich freue mich schon auf eure Antworten!

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Michael Scherner (michael81nrw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also der JTAG liegt doch laut Datenblatt auch auf ganz anderen Pins, 
daran kanns doch nicht liegen!? Außerdem hab ich den mittels Fusebit 
deaktiviert.

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und im Ernst, wird an der Hardware liegen.

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stecke das Flachbandkabel um und verwende einen anderen Port im Programm 
- leuchtet die LED immer noch mit halber Helligkeit, ist es die HW

Autor: Michael Scherner (michael81nrw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Komisch komisch!

Hab die LEDs an PortA angeschlossen und den Quelltext entsprechend 
geändert... Hab auch den Wert mal geändert (auf 100 statt 255).

Umgerechnet wird am Port aber was anderes (77) ausgegeben und 
programmieren kann ich auch nicht mehr solange die LEDs dran sind.

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Wert für das DDR darfst Du nicht auf 100 ändern - 255 bedeutet: alle 
Pin Ausgang

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und: wie hoch hast Du Vtarget eingestellt ?

Autor: Michael Scherner (michael81nrw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal!
Vtarget steht auf 5,1V.

Ich habe nicht den Wert von DDR sondern vom Port geändert.

ABER:

Ich habe den Controller getauscht. Leider hatte ich keinen Mega16 mehr 
sondern nur noch einen 8515. Quelltext entsprechend angepasst - Programm 
läuft! Dann scheints wohl am Controller zu liegen.

Da muss ich mir dann nächste Woche wohl mal nen Neuen besorgen!

Vielen Dank für eure Hilfe - ich komm bestimmt nochmal drauf zurück ;-)

Schönen Abend noch, Gruß

Michael

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In welchem Sockel steckte der MEGA 16 - im selben wie der 8515?

Das wäre falsch....

Autor: Michael Scherner (michael81nrw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aha!

Wer lesen kann ist klar im Vorteil :-) An sowas hatte ich auch schonmal 
gedacht aber bei der ersten Überprüfung hab ich mich wohl verguckt - im 
richtigen Sockel geht dann auch der 8515.

Vielen vielen Dank! Das kehrt den Abend doch noch in einen arbeitsvollen 
:-)

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.