8MHz <-> 16MHz MiniPro unterscheiden

Gast #3750616
Lesenswert?
• ▲
▼
Tach!

vom Chinesen meines Vertrauens (lol) habe ich diese Woche einen 8MHz/3V3 
Mini Pro (Arduino mit atmega328p) erhalten. Leider hat er keine 
Beschriftung und sieht haargenau so aus wie das hier herumliegende 
Modell 16MHz/5V, auch die üblichen Marker auf der Unterseite fehlen. 
Klar werde ich den jetzt kennzeichnen, aber mir kam gerade die Frage: 
Wie könnte ich herausfinden, welchen Typ ich hier vorliegen habe?
Afaik unterscheiden die sich nur im Quarz und in der eingestellten 
Taktrate (/prescale) im AVR, oder?
Die Quarze kann ich nicht entziffern bzw. da sehe ich keine 
Unterschiede.

Habt ihr irgendwelche Ideen, wie man (einfach) den Unterschied 
herausfinden kann? Evtl. gehts ja ohne Oszi(?).

Danke und Grüße,
Tobias
#3750637
Lesenswert?
• ▲
▼
T_K schrieb:
> Habt ihr irgendwelche Ideen, wie man (einfach) den Unterschied
> herausfinden kann? Evtl. gehts ja ohne Oszi(?).

Du läßt Dir in einem Arduino-Sketch den Stand des Millisekunden-Zählers 
ausgeben:
1
  Serial.println(millis()/1000.0);

Wenn Du den Sketch mit der Board-Einstellung "16 MHz Board" tatsächlich 
auf ein 16 MHz Board hochlädst, läuft der Zähler im richtigen Takt.

Der Zähler zählt genau so richtig, wenn Du mit der Board-Einstellung "8 
MHz Board" auf ein mit 8 MHz getaktetes Board hochlädst.

Und wenn der Sketch die Zeit doppelt oder halb so schnell zählt, dann 
weicht die Boardeinstellung von der tatsächlichen Taktrate ab.
Gast #3750659
Lesenswert?
• ▲
▼
Jens-Uwe schrieb:
> Nur das er dann nix lesen kann, weil die Baudrate der seriellen
> Schnittstelle auch nicht stimmt...

Dann wird man wohl beim Terminalprogramm die Baudrate passend umstellen 
müssen, damit das Lesen klappt ;-)

Der klassische Test läuft deshalb auch über On-Board LED und 1s-Takt.
#3750664
Lesenswert?
• ▲
▼
Jens-Uwe schrieb:
> Jürgen S. schrieb:
>> Und wenn der Sketch die Zeit doppelt oder halb so schnell zählt, dann
>> weicht die Boardeinstellung von der tatsächlichen Taktrate ab.
> Nur das er dann nix lesen kann, weil die Baudrate der seriellen
> Schnittstelle auch nicht stimmt...

Stimmt!
Dann sieht er aber am "wie sie sehen, sehen sie nichts", dass er bei der 
Boardauswahl nicht die richtige Taktfreqzenz getroffen hat.

Da es sein Board nur in zwei Taktfrequenzen gibt, sollte es per 
Try-and-Error mit der Boardauswahl im Höchstfall zwei Uploadversuche mit 
zwei verschiedenen Boardeinstellungen erfordern, um die funktionierende 
Konfiguration herauszufinden.

Außerdem ist es ihm freigestellt, seinen seriellen Monitor umzustellen: 
Falls das Board mit der halben oder doppelten Taktrate taktet als mit 
der, für die er sein Programm geschrieben hat, braucht er bei einer 
Baudrate im Programm von 9600 Baud ja im seriellen Monitor im 
Bedarfsfall nur 4800 oder 19200 Baud einzustellen, um dann doch die 
serielle Ausgabe des Programms zu sehen.

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.