mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATTiny26 und ein Problem mit dem EEPROM


Autor: Christian Worch (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute, ich bin Anfänger was den Tiny26 angeht. Ich soll ein
Programm schreiben das einen Sensor simulieren soll. Der Sensor soll an
eine Spannungsversorgung angeschlossen werden und über den ADC soll
erkannt werden ob an positiver oder negativen Spannung. Das Ergebniss
(Positiv oder negativ) soll dann in dem EEPROM geschrienen werden. an
die Adresse 0x02.

Dort soll dann für Pos: 0xFC
und für            Neg: 0xFE geschrieben werden.
Wenn dann die Spannung weggenommen wird, soll dann der Sensor erkennen,
ob er vorher pos. oder neg. war.

Jetzt zu meinem Problem:

Wenn ich das Programm über AVR Studio 4 Programmiere und im Debug
ausprobiere läuft alles genau so wie ich es will.
Aber sobald ich den Flash und den EEPROM auf den Tiny26 schreibe,über
das STK500, und dann direkt den EEPROM auslese, bekomme ich :

:10000000FFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFF03
:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:00000001FF

Ich habe den Chip noch nicht aus dem STK500 genommen. Die Schaltung
läuft noch nicht, aber ich hab dieses FC an der Adresse 0x02.

Dadurch läuft dann auch meine ganze Schaltung nicht, da der Sensor am
anfang feststellt ob er schon mal gestartet worden ist.

Ich hab keine Ideen mehr. Habe schon geglaubt das der Chip schon in dem
STK500 los läuft, und habe deshalt versucht mal zu schauen was mein ADC
so einliest, aber der liest nix ein. Glaube ich zumindest. Ich will den
Wert auf 0x05 im EEPROM schreiben. Aber wie man sieht steht an der
Stelle 0xFF.

Bitte um hilfe. mir fällt nichts mehr dazu ein was ich machen könnte.

Gruß Chris

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Habe schon geglaubt das der Chip schon in dem
> STK500 los läuft, ...

Ja sicher, das ist doch selbstverständlich, dass das Programm sofort
nach dem Übertragen des Programms gestartet wird.

Vorschlag:
Wenn bestimmte Aktionen erst in der Zielschaltung ausgeführt werden
dürfen, dann bau doch dafür in der Resetroutine eine Portpinabfrage
(Jumper) ein, deren Bedingungen erst in der Zielschaltung erfüllt sind.
Somit bleibt das Programm in der Reset-Routine hängen, wenn der AVR
nicht in der Zielschaltung läuft.

...

Autor: Christian Worch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den super Tip. Das was der schupps der mich wieder in Bewegung
gebracht hat nachdem ich micht vollkommen festgefahren hatte. Habe jetzt
 in die RESET-Routine einen Power-on-Reset eingebaut.

Jetzt geht alles so wie es soll.

Also noch mal danke :-)

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.