mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STK500, ATMega16 Taktprobleme


Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

irgendwas stimmt nicht mit meinem Takt vom STK500. Wenn ich den
dazugehörigen AT90S8515 einstecke und in einem Programm alle 50ms
(_delay_ms(50) aus der avr/delay.h-lib) einen PIN toggle, kann ich die
Frequenz am Oszi wunderbar ablesen.

Verwende ich nun den ebenfalls dabeigewesenen ATMega16 mit den selben
Einstellungen (der MCU steckt aber in dem anderen 40pol Sockel)
funktioniert das ganze nicht mehr richtig. Das Oszi zeigt mir eine
Pause von 190 ms an.

Sowas lässt doch vermuten, dass irgendetwas nicht mit dem Takt stimmt.
Allerdings messe ich am Pin XTAL1 3.7 MHz, also so wie es sein soll.
Die Fuses und Lockbits sind laut AVRStudio so eingestellt:

Fuses
*****
Boot Flash section size=128
Brown out detection level at VCC=2.7V
Ext. Crystal/Resonator High Freq.; 16K + 64ms

LockBits
********
Mode 1
Application Protection Mode 1
BootLoader  Protection Mode 1

Ich habe auch schon einen externen Quarz versucht. Genau dasselbe
Problem. Wenn ich ein bisschen mit der Definition der Taktfrquenz
(F_CPU) herumspiele kann ich das Signal schon so hinbiegen, dass am
Oszi eine Pause von 50ms zu messen ist. Aber
1. kann das nicht der richtige weg sein
2. die Kommunikation über die uart schnittstelle funktioniert trotzden
nicht(es werden komische Zeichen gesendet)

Ich probier hier schon seit Stunden rum. So langsam gehen mir die Ideen
aus. Meine erste Vermutung war, dass der interne Takt des ATMega
verwendet wird. Dann würden aber die Einstellungen der Fusebits nicht
stimmen.

Woran kann es denn sonst noch liegen?

Gruß
Andreas

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok
hat sich erledigt. Irgendwie wurden die fuses nicht richtig ausgelesen.
Nachdem ich den MCU mal raus und wieder reingemacht hatte ging es auf
einmal. Da stand dann halt da, dass der interne Oszi verwendet wird
:-)

Auf extern umgestellt und schon funktioniert alles. Tja, kaum macht man
es richtig ...

Aber warum die fuses falsch gelesen wurden ist mir ein Rätsel.
Vielleicht lag es auch am AVRStudio.

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.