laut Datenblatt des ATtiny814 kann man im Register MCLKCTRLA mit dem Bit CLKOUT die System-Clock auf den "CLKOUT pin" legen. Allerdings finde ich weder Informationen darüber, welches dieser Pin sein soll, noch wie ich einem Pin diese Funktion zuweisen kann.
Das Internet inkl. LLMs scheinen dabei ATtiny814 und ATtiny85 in einen Topf zu werfen. Der ATtiny85 hat einen ausgewiesenen CLKO-Pin, aber anscheinend nicht der ATtiny814.
Ist diese Funktion beim ATtiny814 noch nicht implementiert (aber geplant) oder was ist das Problem?
Ich möchte letztendlich herausfinden, wie genau der System-Takt ist und ihn gegebenenfalls kalibrieren.
Faszinierend, das Datenblatt nennt mehrfach einen CLKOUT Pin, aber den gibt es scheinbar nicht. Ich habe wiederholt den Eindruck, daß Microchip mit den Datenblättern schlampig umgeht, im Gegensatz zu Atmel.
In der neueren ATTiny-Serie ist es nur in einigen Derivaten möglich, den CLKOUT nach außen zu routen - beim 814 augenscheinlich nicht. Solche Ungereimtheiten gibt es in vielen Controller-Familien - Features sind im Datenblatt "beworben", können aber nicht in jedem Package genutzt werden.
Im Attiny3216 geht es auf PB5. Es kann auch sein, dass das noch andere Bausteine aus der Familie können. Suche im jeweiligen Datenblatt nach "CLKOUT" und Du wirst fündig.
In der neueren ATTiny-Serie ist es nur in einigen Derivaten möglich, den
CLKOUT nach außen zu routen - beim 814 augenscheinlich nicht. Solche
Ungereimtheiten gibt es in vielen Controller-Familien - Features sind im
Datenblatt "beworben", können aber nicht in jedem Package genutzt
werden.
Im Attiny3216 geht es auf PB5. Es kann auch sein, dass das noch andere
Bausteine aus der Familie können. Suche im jeweiligen Datenblatt nach
"CLKOUT" und Du wirst fündig.
Das ist enttäuschend. Aber danke für die Klarstellung.
Wenn man das richtige Package annimmt dann hat er einen Port PB5.
So jedenfalls mein Datenblatt 12/2016.
Wenn man natürlich kein Package angibt kann man viel behaupten.
So wie ich das sehe, wird der ATtiny814 nur in einem einzigen Package produziert. Aber vielleicht kannst du mir da helfen. Es hilft ja nichts, wenn ich nicht in der Lage bin, Datenblätter oder die Webseite des Herstellers zu verstehen. (Datenblatt "ATtiny214/414/814" von 2017)
In welchen anderen Packages als dem 14-pin SOIC150 kommt der ATtiny814 noch, und wo finde ich diese Information?
@Peder: nimm doch den ATTiny1616MNR, kostet 88ct bei Einzelstück (lcsc.com) und wird hemmungslos vom Bestücker verarbeitet, manuell geht es mit etwas Übung auch. Wo vorher der riesige SO14 saß hast Du dann noch massig Luft zu allen Seiten.
Wenn man das richtige Package annimmt dann hat er einen Port PB5.
Peder hat gezielt vom ATtiny814 gesprochen und den gibt es nur im 14-Pin-Gehäuse (siehe Datenblatt Seite 12, 15 und Tabelle auf Seite 19). Und hier fehlt der Pin PB5.
Ich möchte letztendlich herausfinden, wie genau der System-Takt ist und
ihn gegebenenfalls kalibrieren.
Wenn das der einzige Anwendungsfall ist gebe doch eine PWM aus und messe
die. Den Faktor kannst Du ja leicht reinrechnen.
Könnte ich mal versuchen. Ich habe das gestern mal mit einem einfachen Timer gemacht und alle 100.000 mal einen Pin geflippt. Aber ein direktes Messen wäre mir tatsächlich lieber.
Ich bin ja neu hier, aber spricht etwas dagegen, den Timer0 als 50% PWM mit maximaler Geschwindigkeit den passenden Pin umschalten zu lassen?
Gibt zwar nur ein halb oder ein viertel der Taktrate, aber für eine Bewertung der Frequenz ist das genauso gut wie CLKOUT.
ich weiß nicht was ihr mit eurem Package habt. Den 814, den der TO meint, gibt es nur im 14 Pin SOIC. Siehe 38.1. Der Rest geht aus 5.1 hervor. Damit ist für den 14 Pin Typ kein PB5 verfügbar. Sobald man irgendeinen anderen Typ mit mehr Pins nimmt, spielt es keine Rolle welchen man hat. Dann hat man immer PB5 dabei. Nur hat der TO nun einmal den 814. Deswegen ist das Thema mit Packages irreführend.
Nur der Vollständigkeit halber:
Ich habe das CLKOUT-Bit im MCLKCTRLA-Register mal eingeschaltet, und es passiert auf keinem einzigen Pin etwas (alle als Ausgang geschaltet). Im Debugger kann ich sehen, dass das Bit auch im uC gesetzt ist, aber es bleibt eben ohne Funktion.
Zum Messen der Taktfrequenz funktioniert PWM tatsächlich wirklich gut. Gegenüber der Timer-Methode verzichtet dieser Mechanismus schließlich auf einen Interrupt und das manuelle Schalten von Pins, was die Messung verfälscht.
Vielleicht bin ich da etwas zu naiv, aber bisher habe ich immer volles Vertrauen in die Datenblätter gehabt. Ja – dass ich mir fehlende Infos mühsam aus AppNotes oder dem Internet zusammenklauben muss, hab ich irgendwann gelernt, aber dass irreführende Angaben in den Datenblättern stehen, enttäuscht mich schon.
Vielleicht bin ich da etwas zu naiv, aber bisher habe ich immer volles
Vertrauen in die Datenblätter gehabt
Microchip neigt zu Copy/Paste Fehlern. Das hat an dem Tag angefangen, als sie die schwarz/weißen Tabellen und Diagramme in Atmel Datenblättern bunt machten. Man sieht, wie die Prioritäten gesetzt wurden.
Zum Messen der Taktfrequenz funktioniert PWM tatsächlich wirklich gut.
Gegenüber der Timer-Methode verzichtet dieser Mechanismus schließlich
auf einen Interrupt und das manuelle Schalten von Pins, was die Messung
verfälscht.
👍
Vielleicht bin ich da etwas zu naiv, aber bisher habe ich immer volles
Vertrauen in die Datenblätter gehabt. Ja – dass ich mir fehlende Infos
mühsam aus AppNotes oder dem Internet zusammenklauben muss, hab ich
irgendwann gelernt, aber dass irreführende Angaben in den Datenblättern
stehen, enttäuscht mich schon.
Datenblätter dienen zwei Zwecken:
Vorteile deutlich hervorheben (Erste Seite)
Nachteile so gut es geht zu verwischen und tarnen (Folgeseiten)
Nur der Vollständigkeit halber:
Ich habe das CLKOUT-Bit im MCLKCTRLA-Register mal eingeschaltet, und es
passiert auf keinem einzigen Pin etwas (alle als Ausgang geschaltet).
Dann ist das Datenblatt offensichtlich korrekt: Bei den 14-Pin Varianten - und dazu gehört dein ATtiny814 - ist der CLKOUT (zumindest extern) nicht verfügbar.
q.e.d.
Mich hatte mal interessiert, ob man so etwas adaptieren könnte. Im Bild ein ATTINYxx16-MNR to SO14 Adapter mit herausgeführtem PB5. Eine LED an PC0 oder PC1 würde auch noch draufpassen... Für ein paar Euros bei JLCPCB zu haben.
Welche irreführenden Angaben? Im Datenblatt ist es doch alles genau
erklärt.
Sorry, aber wenn in 3 Kapiteln ein CLKOUT Pin genannt und detailliert beschrieben wird, dann muss der auch existieren. Sonst ist es irreführend. Da gibt es nichts schön zu reden.
Es ist schon eine große Leistung, ein acht Jahre altes, mit "Datasheet Preliminary" gekennzeichnetes Datenblatt zu verwenden!
Glaubst Du wirklich, dass alle Menschen unfehlbar sind und deshalb Fehler niemals korrigiert werden müssen?