Wie hoch ist ein AVR für reine Schaltaufgaben übertaktbar.

Gast #209142
Lesenswert?
• ▲
▼
Hallo,

ich möchte für eine einfache Zählschaltung einen AVR übertakten. Hat
schon jemand Erfahrungen mit AVR's übertakten gesammelt. Es geht nur
um reine Schaltaufgaben, kein A/D, EEPROM usw.

Es soll so ablaufen. Im Pollig wird ständig ein Pin abgefragt sobald
der High wird ein 16bit Register um eins erhöht und das ganze über 2
Port auf ein RAM ausgegeben um es zu adressieren.

Dachte an eine 20 MHZ Typen der dann auf 40 MHz gepuscht wird. Meint
ihr das Ding raucht ab oder könnte das klappen?
Gast #209143
Lesenswert?
• ▲
▼
Mit 40MHz kannst es vergessen.
33MHz gehen mit speziellen 8051 von Maxim die intern einen 4-fach
Multiplikator haben und extern bis 8,33MHz Taktbar sind.
So 20 bis vielleicht 24MHz geht ein AVR.
Wie viele Impulse je Sekunde willst Du zählen?

MfG
Andi
Gast #209144
Lesenswert?
• ▲
▼
Abrauchen wird er vermutlich nicht, aber funktionieren wird er
höchstwahrscheinlich auch nicht.
Das geschwindigkeitsbegrenzende Element an der Geschichte ist das
Flash-ROM, das Daten halt nur bis zu einer bestimmten Geschwindigkeit
liefern kann. Darüber gibt's Lesefehler und daraus folgend äußerst
spaßige Programmfunktionalität ...

Da man Programme bei normalen AVRs auch nur aus dem Flash-ROM laufen
lassen kann, kannst Du da auch nichts gegen unternehmen.

Allerdings sind von Atmel zwei AVR-Varianten angekündigt, bei denen das
anders ist. Diese haben kein Flash-ROM, sondern verwenden RAM auch als
Programmspeicher. Der Programmcode wird per USB heruntergeladen
(USB-Bootloader) oder aber aus einem externen ROM geladen.
Danach verhält sich das RAM wie ein ROM, mit dem winzigkleinen
Unterschied, daß es bedeutend schneller ist und daher bis zu 48 MHz
Takt ermöglicht.

Ich rede vom AT76C712/713
http://www.atmel.com/dyn/products/product_card.asp?part_id=3579
http://www.atmel.com/dyn/products/product_card.asp?part_id=3556

- ob man die mittlerweile irgendwoherbekommt?
Gast #209145
Lesenswert?
• ▲
▼
Hallo Thomas

Wenn ich dich richtig verstehe willst du den Takt fuer deinen Zaehler
von aussen zuführen?
Dazu musst du nicht so hoch takten und staendig den PortPin abfragen.
dafuer gibt es Counter die zaehlen selbst hoch (sind auch 16 Bit
breit).
und du wirst auch eine höhere Frequenz erreichen als wenn du ständig
den PortPin abfragst.
Gast #209146
Lesenswert?
• ▲
▼
Hallo,

dachte mir den AVR als Zähler zu verwenden. Aber so wie du sagst kann
ders ja von sich aus. Müsste dann einfach den Timerwert ausgeben und
spare den einen Takt um vom Port zu lesen. Und den Teiler kann man dann
auch komfortabel nutzen um den Zähler zu verlangsammen.

Dann müsste man ja nur wiederholt
out porta, R16
out portb, R17
durchführen, wenn die 2 Bytes des Timers jetzt in R16 und R17 landen
würden.
Gast #209147
Lesenswert?
• ▲
▼
Böse Falle -das mit dem Polling- selbst der counter ist auch
nicht das wahre, da laut Spec auch nur gesampelt wird.

Ich würde dir empfehlen, die Externen interrupts zu nehmen.
Da wird nix gesampelt. Einfach nur der Interrupt ausgelöst
(musst du nur steigende flanke einstellen) und das wars.

Dann kannst du sogar dem µC im Idle lassen oder noch ein anderes
Süpchen kochen.


Gruß
Gast #209148
Lesenswert?
• ▲
▼
Hallo,

es ist halt die Frage ob das in diesem kurzen Program mit dem Poling
schneller geht als mit den Interrupts, da es auch eine paar Takte
dauert bis zur Interruptroutine gesprungen wird.

Wie schnell ich zählen will. Das kommt ganz drauf an was für ein
Speicherbaustein verwendet werden soll. Habe mich da noch nciht
entschieden aber ein Protokoll wie ein 28C.. wäre nicht schlecht weil
ich sowas schon parat habe, weil ich letztens mit einen EEPROM
experimentiert habe.
Gast #209160
Lesenswert?
• ▲
▼
Was du da bauen willst nenn ich 16bit Zähler. Zwei 8bit Zähler
kaskadieren (hintereinander schalten). 4 bit Zähler etwas sind
einfacher zu bekommen. Asynchrone Zähler könnten evtl. Probleme machen.
Ich würde ne CPLD nehmen. Dafür brauchst du auch kein VHDL zu können, so
etwas einfaches kannst du z.B. mit Xilinx WebPack schnell als Schematic
machen das geht wie Schaltpläne erstellen. In VHDL ein Template
(Beispielmodul) umzuschreiben ist aber auch schnell zu verstehen und
braucht kaum 1 Minute.
Gruß

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.