www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USBasp Mega8 CPU-Frequenz 16 statt 12 Mhz


Autor: Sebastian Bergt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
normalerweise hat ja der USBasp einen 12 Mhz Quarz. Dummerweise hatte 
ich nur einen 16 Mhz Quarz da und dachte dass es kein Problem sei, den 
Quarz zu ändern. In der Firmware von ulrichradig.de habe ich F_CPU auf 
16000000L verändert, das Ganze kompiliert und übertragen (sowie fuses 
richtig eingestellt). Aber ich bekomme unter Windows nur ein 
nicht-funktionierendes USB-Gerät angezeigt.

Da ich noch einen zweiten USBasp aus einem Bausatz mit 12 Mhz Quarz habe 
und der richtig erkannt wird, kann ich auch davon ausgehen, dass die 
Software auf dem PC nicht das Problem ist.

Später fiel mir auf, dass es diese waitClock-Funktion gibt, die 
scheinbar mit einem Timer arbeitet. Funktioniert der Timer noch wie 
vorgesehen, wenn ich einen anderen Quarz benutze?

Hat jemand vllt eine bereits angepasste Firmware für den Mega8 zur Hand?

Lg Sebastian

PS: Ich hab auch schon eine ganze Weile danach gegoogelt, hab aber 
nichts passendes gefunden...

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian Bergt wrote:

> normalerweise hat ja der USBasp einen 12 Mhz Quarz. Dummerweise hatte
> ich nur einen 16 Mhz Quarz da und dachte dass es kein Problem sei, den
> Quarz zu ändern. In der Firmware von ulrichradig.de habe ich F_CPU auf
> 16000000L verändert, das Ganze kompiliert und übertragen (sowie fuses
> richtig eingestellt). Aber ich bekomme unter Windows nur ein
> nicht-funktionierendes USB-Gerät angezeigt.

USB benötigt 12MHz, wegen der Bitrate. Mir ist zumindest keine Software 
bekannt, die USB verwendet und nicht mit 12MHz (bzw. einem Vielfachen 
davon) läuft.

Autor: Uwe Berger (boerge) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Benedikt K. wrote:
> USB benötigt 12MHz, wegen der Bitrate. Mir ist zumindest keine Software
> bekannt, die USB verwendet und nicht mit 12MHz (bzw. einem Vielfachen
> davon) läuft.
>
für die einfacheren USB-Implementierungen hast du mit den 12MHz recht...

Für die Implementierung von obdev (http://www.obdev.at/avrusb/) trifft 
dies aber nicht zu. Und die wird auch in der Firmware des USBasp benutzt 
(Version vom 23.10.2007).

In der Datei firmware/clock.h sollte die Anpassung des Defines F_CPU 
reichen...

Ich betreibe meinen USBasp zwar auch nur mit 12MHz, aber innerhalb eines 
anderen Projektes verwende ich obige Bibliothek mit 16Mhz ohne Probleme. 
Damit sollte es also beim USBasp funktionieren.

Uwe

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.