Forum: Mikrocontroller und Digitale Elektronik Richtige Kombination aus Chip und Geschwindigkeit bei 3,3V und 5V


von Frank N. (Gast)


Lesenswert?

Hallo zusammen,

ich habe nun schon ein paar Tage damit verbracht zwischendurch 
verschiedene Datenblätter zu den verschiedenen Atmega-Chips durchzulesen 
und bin dann beim Atmega8 mit TQFP-Bauform gelandet. Dieser ist 
wahrscheinlich die beste Wahl für mein Projekt.

Bei meinen ganzen Recherchen bin ich auch hier im Forum auf dieses 
Projekt gestoßen: Beitrag "USB Joystick Controller mit Mega8"

Dabei geht es um einen USB-Joystick-Controller, realisiert mit einem 
Atmega8.

Ich habe ein ähnliches Projekt vor, möchte den Controller aber an 
verschiedene Endgeräte anschließen können und mich dabei nicht auf 5V 
festlegen müssen. Außerdem soll die Schaltung möglichst unkompliziert 
sein und daher den internen Oszillator nutzen.

Nun meine beiden Fragen dazu:

1. Welches ist nach Erfahrungswerten die maximale stabile Frequenz, die 
ich beim Internen Oszillator mit 3,3V nutzen kann. Ich vertraue da eher 
auf Erfahungswerte, als auf Datenblätter ;)

2. Wie verhält sich der interne Oszillator, wenn er mal 3,3V und mal 5V 
bekommt? Theoretisch sollte das an der Frequenz nichts ändern oder?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Frank N. schrieb:

> 1. Welches ist nach Erfahrungswerten die maximale stabile Frequenz, die
> ich beim Internen Oszillator mit 3,3V nutzen kann. Ich vertraue da eher
> auf Erfahungswerte, als auf Datenblätter ;)

Was hilft es dir, wenn du die Aussage bekommst, dass es meistens auch
viel schneller funktioniert?

Wenn du willst, dass es sicher funktioniert, dann solltest du dich
an die Werte im Datenblatt halten.  Alles andere ist ein „kann schon
sein, dass es klappt“.

> 2. Wie verhält sich der interne Oszillator, wenn er mal 3,3V und mal 5V
> bekommt? Theoretisch sollte das an der Frequenz nichts ändern oder?

Theoretisch nicht, praktisch trotzdem.  Beim ältlichen ATmega8 ist
die Abhängigkeit sehr viel größer als bei einem moderneren ATmega88A,
die typischen Werte findest du im hinteren Teil des Datenblatts.

von spess53 (Gast)


Lesenswert?

Hi

>1. Welches ist nach Erfahrungswerten die maximale stabile Frequenz, die
>ich beim Internen Oszillator mit 3,3V nutzen kann. Ich vertraue da eher
>auf Erfahungswerte, als auf Datenblätter ;)

Das Original von Igor braucht aber 12MHz.

MfG Spess

von Frank N. (Gast)


Lesenswert?

Jörg W. schrieb:
>> 1. Welches ist nach Erfahrungswerten die maximale stabile Frequenz, die
>> ich beim Internen Oszillator mit 3,3V nutzen kann. Ich vertraue da eher
>> auf Erfahungswerte, als auf Datenblätter ;)
>
> Was hilft es dir, wenn du die Aussage bekommst, dass es meistens auch
> viel schneller funktioniert?

Ich dachte eigentlich in die andere Richtung. Also lieber langsamer, 
aber dafür zuverlässig.

>
> Wenn du willst, dass es sicher funktioniert, dann solltest du dich
> an die Werte im Datenblatt halten.  Alles andere ist ein „kann schon
> sein, dass es klappt“.
>
>> 2. Wie verhält sich der interne Oszillator, wenn er mal 3,3V und mal 5V
>> bekommt? Theoretisch sollte das an der Frequenz nichts ändern oder?
>
> Theoretisch nicht, praktisch trotzdem.  Beim ältlichen ATmega8 ist
> die Abhängigkeit sehr viel größer als bei einem moderneren ATmega88A,
> die typischen Werte findest du im hinteren Teil des Datenblatts.

Wenn ich das in den Datenblättern richtig sehe, dann ist der ATmega88 
pinkompatibel mit dem ATmega8, hat aber ein paar mehr Funktionalitäten.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Frank N. schrieb:

> Ich dachte eigentlich in die andere Richtung. Also lieber langsamer,
> aber dafür zuverlässig.

Die Datenblattwerte sind schon extrem konservativ.  Langsamer als das
musst du nicht gehen.

Schneller geht halt meistens, garantiert nur keiner.

> Wenn ich das in den Datenblättern richtig sehe, dann ist der ATmega88
> pinkompatibel mit dem ATmega8, hat aber ein paar mehr Funktionalitäten.

Ja, pinkompatibel, aber nicht binärkompatibel.  Nichtmal 1:1
sourcecode-kompatibel, nicht nur wegen der erweiterten Funktionen
(bspw. hat Timer 2 dann OCR2A und OCR2B statt nur OCR), sondern auch,
weil die USART in den Nachfolgern USART0 heißt, entsprechend UDR dann
UDR0 etc.

Wenn du etwas extrem laufzeitkritisches (bezüglich der IO-Zugriffe)
hast, dann solltest du auch acht geben: beim ATmega8 haben die
IO-Register alle in den Bereich gepasst, wo man sie mit IN und OUT
zugreifen kann, beim ATmega88 gibt es eine ganze Reihe, die außerhalb
liegen und nur noch über Speicherbefehle adressiert werden können.

von Frank N. (Gast)


Lesenswert?

> Wenn du etwas extrem laufzeitkritisches (bezüglich der IO-Zugriffe)
> hast, dann solltest du auch acht geben: beim ATmega8 haben die
> IO-Register alle in den Bereich gepasst, wo man sie mit IN und OUT
> zugreifen kann, beim ATmega88 gibt es eine ganze Reihe, die außerhalb
> liegen und nur noch über Speicherbefehle adressiert werden können.

Vielen Dank für den wertvollen Hinweis! :)

Ich habe mir nun sowohl drei Atmega8 als auch drei Atmega88 bestellt und 
werde versuchen womit es am besten geht. Ich werde mir auch das 
Datenblatt des Atmega88 noch einmal genauer durchlesen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.