ATmega mit 16.5888 MHz Quarz

Gast #546754
Lesenswert?
• ▲
▼
Hallo Leute,

wollte nur mal wissen, ob es hier Probleme gibt.
Der Atmega32 läuft ja eigentlich mit 16 MHz.
Da ich aber eine genaue Baudrate haben möchte aber auch keinen
Geschwindigkeitsverlust, würde ich gern diesen Quarz einsetzen.

Weiss jemand, ob es bei der Überschreitung um ca. 0,5 MHz 
Schwierigkeiten
gibt?
Dies soll nicht nur für ein Einzelprojekt gedacht sein.

Oli
#546822
Lesenswert?
• ▲
▼
Oliver wrote:

> Da ich aber eine genaue Baudrate haben möchte aber auch keinen
> Geschwindigkeitsverlust, würde ich gern diesen Quarz einsetzen.

Was heißt Geschwindigkeitsverlust ?

Sehr gute Programmierer schaffen es, eine CPU bis 50% auszulasten und 
trotzdem noch zuverlässig zu sein.

Normale Programmierer sollten nicht über 10..20% gehen ohne Einbuße an 
Zuverlässigkeit.

Anders gesagt, ob 14,7456MHz oder 16,6MHz merkt keine Sau.

Bzw. wenn Du wirklich nicht mit 14,7456MHz auskommst, dann ist Dein 
Projekt schon total knirsch auf knack und Du solltes es neu überdenken 
(andere CPU oder anderer Programmablauf).


Ich nehme bei meinen Projekten generell maximal die halbe zulässige 
Frequenz, d.h. wenn ich mich mal verschätzt haben sollte, kann ich dann 
noch erhöhen.


Peter
#546847
Lesenswert?
• ▲
▼
24 MHz waren hier für einen ATMega16-16 kein Problem. Allerdings habe 
ich EEProm-Schreiben/Lesen nicht getestet. ein halbes MHz mehr ist da 
aber mit Sicherheit kein Problem.
@PeDa: Manchmal ist der Grund auch einfach: Die Capture-Unit.
Das Problem: Es kann bis maximal 0.5*CPU-Takt erfaßt werden. Und braucht 
man einen Bereich bis 8MHz, dann reichen 14.7MHz Takt eben nicht mehr 
aus. Und das ist der einzige richtige Vorteil der PIC-Controller, da 
hängt zwischen Zähler und Eingangspin eben keine zusätzliche Elektronik, 
da reicht dann ein 8MHz-Quarz für einen 50MHz-Frequenzzähler. Ich weiß 
nicht, was der Oliver vorhat, aber ich hatte dieses Problem bereits.

Gruß
Jadeclaw.
Gast #546906
Lesenswert?
• ▲
▼
> Sehr gute Programmierer schaffen es, eine CPU bis 50% auszulasten und
> trotzdem noch zuverlässig zu sein.

> Normale Programmierer sollten nicht über 10..20% gehen ohne Einbuße an
> Zuverlässigkeit.


Interessant. Kennst Du auch eine zuverlässige Methode die Auslastung der 
CPU zu testen, damit ich weiß wo ich mich bewege?
#546910
Lesenswert?
• ▲
▼
@ Gast

>Interessant. Kennst Du auch eine zuverlässige Methode die Auslastung der
>CPU zu testen, damit ich weiß wo ich mich bewege?

Pin-Toggeln und mit Scope oder DVM messen. Z.B. zum Beginn einer 
Interrupt-Routine ein Pin auf HIGH setzten, am Ende wieder auf LOW. 
Damit kann man die Dauer der Interrupt-Routine messen. Will man die 
CPU-Last der Main-loop messen gehts ähnlich.

MfG
Falk
Gast #546936
Lesenswert?
• ▲
▼
> Pin-Toggeln und mit Scope oder DVM messen. Z.B. zum Beginn einer
> Interrupt-Routine ein Pin auf HIGH setzten, am Ende wieder auf LOW.
> Damit kann man die Dauer der Interrupt-Routine messen. Will man die
> CPU-Last der Main-loop messen gehts ähnlich.

Worauf beziehen sich die 20% auf eine Sekunde?
Wenn dann zwischen den Wechseln 200ms liegen dann bedeutet das, dass 
meine CPU zu 20% ausgelastet ist?

Mfg

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.