AdSense

Mittwoch, 18. September 2013

ATMega - Alles um den Faktor 8 langsamer?

(English version) Genau dieses Problem trat bei mir auf: Ich habe einen ATMega 1284-P welcher mit einem 16 MHz Quarz läuft. Allerdings lief alles um den Faktor 8 zu langsam. Die Fuses (Ich benutze AVR Studio 4, da sieht man nicht alles) waren alle korrekt eingestellt. Nach einiger Zeit auf Google kam ich endlich auf die Lösung: Das Fuse-Bit CKDIV8 ist 0, also wird die Clock durch 8 geteilt. Leider kann man auf dieses Fuse-Bit im AVR Studio 4 nicht direkt zugreifen, es gibt jedoch eine recht einfache Möglichkeit, den Clock Divider auszuschalten:

#include <avr/power.h> 

Und dann direkt am Anfang vom Programm:

clock_prescale_set(clock_div_1);

Damit war bei mir das Problem dann behoben.

2 Kommentare:

  1. Mit dem AVRBurner (http://www.soft-land.de/) kann man auf die Fuses zugreifen.

    AntwortenLöschen
    Antworten
    1. Natürlich kann man das und es gibt auch viele andere Programme die das können. Wer aber nur das AVR Studio benutzt kann das nicht so ohne weiteres.

      Löschen