Übersetzung Datenblatt

achim S.

Mitglied
Premium Benutzer
16 Jan 2010
548
8
18
Nähe Basel
Sprachen
ANSI C
Hallo
im datenblatt des Attiny 841 werden die allgemeinen Eigenschaften der 8 und 16 Bit Timer beschrieben. Habe den englischen Text durch einen übersetzer laufen lassen. Leider kommt dabei die Funktion nicht korrekt an. Teilweise sind die Angaben klar, andere wieder nicht. Stelle mal beide Versionen und die Übersetzung dazu rein. Vielleicht kann jemand zu meiner Erleuchtung beitragen.

11.1 Features (8 Bit)
 Two Independent Output Compare Units
 Double Buffered Output Compare Registers
 Clear Timer on Compare Match (Auto Reload)
 Glitch Free, Phase Correct Pulse Width Modulator (PWM)
 Variable PWM Period
 Frequency Generator
 Three Independent Interrupt Sources (TOV0, OCF0A, and OCF0B)


11.1 Merkmale
  • Zwei unabhängige Ausgangsvergleichseinheiten
  • Double Buffered Output Vergleichsregister
  • Timer löschen bei Vergleichsmatch (Auto Reload)
  • Störungsfreier, phasenkorrekter Pulsweitenmodulator (PWM)
  • Variable PWM-Periode
  • Frequenzgenerator
  • Drei unabhängige Interruptquellen (TOV0, OCF0A und OCF0B)

12.1 Features

 True 16-bit Design (i.e., Allows 16-bit PWM)
 Two independent Output Compare Units
 Double Buffered Output Compare Registers
 One Input Capture Unit
 Input Capture Noise Canceler
 Clear Timer on Compare Match (Auto Reload)
 Glitch-free, Phase Correct Pulse Width Modulator (PWM)
 Variable PWM Period
 Frequency Generator
 External Event Counter
 Four independent interrupt Sources (TOVn, OCFnA, OCFnB, and ICFn)

12. 16-Bit-Timer/Zähler (Timer/Zähler 1 & Timer/Zähler 2)
12.1 Merkmale
  • Echtes 16-Bit-Design (d.h. 16-Bit-PWM möglich)
  • Zwei unabhängige Ausgabevergleichseinheiten
  • Double Buffered Output Vergleichsregister
  • Ein Eingangserfassungsgerät
  • Eingangserfassung Rauschunterdrückung
  • Timer löschen bei Vergleichsmatch (Auto Reload)
  • Störungsfreier, phasenkorrekter Pulsweitenmodulator (PWM)
  • Variable PWM-Periode
  • Frequenzgenerator
  • Externer Ereigniszähler
  • Vier unabhängige Interruptquellen (TOVn, OCFnA, OCFnB und ICFn)
achim
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3.363
61
48
Marwitz
Sprachen
BascomAVR, Assembler
Zum acht-Bit-ter:
Two Independent Output Compare Units
[…]
Zwei unabhängige Ausgangsvergleichseinheiten
Es werden nicht irgendwelche Ausgänge verglichen, sondern der Zustand einer Speicherzelle mit dem Zähler des Timers. Bei Gleichheit wird automatisch ein Fähnchen (Flag) gesetzt. Außerdem kann dadurch ein Interrupt angefordert werden. Außerdem kann ein Ausgang dadurch manipuliert werden (entweder gesetzt/gelöscht/getoggelt, oder eben (zusammen mit dem Überlauf) pulsweitenmoduliert (genau genommen sogar mehrere, da hier je bis zu vier Beine auf ein Compare-Unit geschaltet werden können).
Von diesen "Ausgangsvergleichseinheiten" hat der Timer halt zwei Stück - unabhängig voneinander sind sie insofern nicht ganz, da sie eben denselben Timer nutzen (also einerseits dasselbe Zählerregister, und andererseits dieselbe Timerreichweite und -Frequenz)
Double Buffered Output Compare Registers
[...]Double Buffered Output Vergleichsregister
Wenn der Timer in einem PWM-Modus verwendet wird, werden Veränderungen der Vergleichsregister nicht sofort wirksam, sondern erst beim nächsten "Überlauf" (genauer siehe entsprechende Tabelle zu den WGM). Bei non-PWM werden Änderungen hingegen sofort wirksam.
Timer löschen bei Vergleichsmatch (Auto Reload)
OutputCompareUnit A kann bei PWM-Modi den Maximalwert des Timers definieren. Bei Gleichheit wird dann einen Timer-Takt später der Zähler auf null gesetzt (single slope, clear Timer, quasi ein Überlauf) oder die Zählrichtung umgekehrt (dual slope, der maximale Punkt halt).
Störungsfreier, phasenkorrekter Pulsweitenmodulator (PWM)
Angenommen Du läßt den Timer im nicht invertierenden fastPWM laufen. Der Timer zählt also von null bis 255 hoch, läuft da auf null über usw...
Solange Der Zähler kleiner ist als OCR0A, ist das Bein high, danach bis zum Überlauf low.
Hast Du im OCR0A 'ne 127, ist das Pulsweitenverhältnis bei 50%. Schreibst Du 'ne 63 rein, sinkt es auf 25%.

Was ist mit störungsfrei gemeint? Die bereits erwähnte Pufferung des Zugriffes. Gäbe es die nicht, könnte folgender Fall eintreten:
PWM ist wie oben bei 50%. Jetzt willst Du auf 25% ändern, aber der Zähler ist vielleicht gerade bei 84. Die 63 landet also im OCR0A. folglich tritt bei 127 kein Compare-Match ein, das Bein bleibt weiterhin high, und zwar bis zum nächsten Compare Match. Effektiv hast Du also kurzzeitig 100%.
Der Puffer hingegen verzögert den Wechsel von 50 auf 25%, ohne daß da kurzzeitig 100% draufliegen.
Variable PWM-Periode
Frequenzgenerator
Die Überlaufsfrequenz des Timers (bzw die des erreichen des Nullpunktes im dual slope) wird durch den Takt des Timers und dessen Reichweite bestimmt. Beim Takt spielt insbesondere der verwendete Vorteiler 'ne Rolle, bei der Reichweite neben dem WGM eben auch, ob der Timer "abgeschnitten" wird (CTC). Salopp gesagt hast Du mit dem Vorteiler also ein Grobtuning der Frequenz, und mit OCR0A Feintuning.
Drei unabhängige Interruptquellen (TOV0, OCF0A und OCF0B)
Jedes Compare Unit hat ein eigenes Interrupt-Anforderungs-Flag, und für den Überlauf gibt's auch eins.

Bei den 16-Bit-tern ists weitgehend dasselbe, die haben halt sechzehn Bit breite Zähler und Vergleichsregister.
Zusätzlich besitzt jeder Timer ein Input Capture Unit. Tritt ein entsprechendes Ereignis (Flanke) am Input Capture Pin(*) ein, wird der Wert des Zählers in ein Input Capture Register übertragen (quasi 'ne Rundenzeit auf 'ner Stoppuhr) während der Timer weitertickt. Dieses Unit besitzt auch ein Interuptflag (deswegen sinds hier vier).
Alternativ kann das Input Capture Register aber auch verwendet werden, um den Maximalwert des Timers zu begrenzen (wie oben mit OCR0A) - hier würden dann allerdings beide PWM-Kanäle verwendbar bleiben (zu Lasten der Input Capture Funktion, klar)

(*) Statt des Beins kann auch der Ausgang eines Analog Comparators verwendet werden (AC0->Timer1, AC1->Timer2)


Oder hattest Du jetzt 'ne konkrete Frage??
 
Zuletzt bearbeitet:

achim S.

Mitglied
Premium Benutzer
16 Jan 2010
548
8
18
Nähe Basel
Sprachen
ANSI C
So wie es aussieht sind die Register bei den Timern in Ati 841 doch "etwas" anders aufgebaut
 

achim S.

Mitglied
Premium Benutzer
16 Jan 2010
548
8
18
Nähe Basel
Sprachen
ANSI C
Kannst du die Sachen auch kürzer fassen?
Im allgemeinen Überblick werden die Funktionen mit nur wenigen Worten angegeben. Die Funktionen kommen dann später in den einzelnen Registern. Dort will ich auch die Belegung und Funktion der einzelnen Bits erklären und das alles an Beispielen
 

Mikro23

Aktives Mitglied
2 Jan 2017
366
33
28
Großraum Hannover
Sprachen
ANSI C, Assembler
Bis auf die Wörter two, three und independent würde ich garnichts übersetzen.

Und wenn schon übersetzen dann doch bitte auch die anderen englischen und lateinischen bzw. griechischen Wörter: ;)
  • Zwei unabhängige Ausgangsvergleichseinheiten
  • Double Buffered Output Vergleichsregister
  • Timer löschen bei Vergleichsmatch (Auto Reload)
  • Störungsfreier, phasenkorrekter Pulsweitenmodulator (PWM)
  • Variable PWM-Periode
  • Frequenzgenerator
  • Drei unabhängige Interruptquellen (TOV0, OCF0A und OCF0B)
register: Verzeichnis
auto (gr.): selbst
phase (gr.): Stufe
correctio: Verbesserung
pulsus: Stoßen
modulator: Tonsetzer, Musiker
varius: scheckig, bunt, verschiedenartig
periodus (von gr. περίοδος): Satzgefüge
frequens: zahlreich
generare: erzeugen / generator: Züchter
interrumpere: unterbrechen
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3.363
61
48
Marwitz
Sprachen
BascomAVR, Assembler
Im allgemeinen Überblick werden die Funktionen mit nur wenigen Worten angegeben
...
Kannst du die Sachen auch kürzer fassen?
Was Du konkret willst, vertsteh ich nicht...
Auf Englisch hast Du die hinreichend knapp formulierte Liste, und jetzt willst Du sie nur übersetzen?
Wegen "Erleuchtung" hatte ich gedacht, die suchst entsprechende Erklärungen...
So wie es aussieht sind die Register bei den Timern in Ati 841 doch "etwas" anders aufgebaut
Anders als … wo ?
Die sind nicht nur identisch mit denen des Tiny24/44/84, sondern liegen sogar auf denselben Adressen. Lediglich Timer2 ist neu, mit neuen Adressen, aber der entspricht exakt Timer1.

Der einzige Unterschied vom Tinyx4 zum Tinyx41 ist der, daß bei ersteren die Output Compare Units mit festen Beinen (den OCPins) verdrahtet sind, und deren Standardfunktion übersteuern können, bei letzteren landen sie aufmehreren Demultiplexern, die sie an wählbare Beine (die Timer Output Compare Channels) verschaltet. Für die Übersteuerung der Standardfunktion ist jetzt das "Timer/Counter Output Compare Pin Mux Channel Output Enable Register" (TOCPMCOE) verantwortlich.
 
Zuletzt bearbeitet:

achim S.

Mitglied
Premium Benutzer
16 Jan 2010
548
8
18
Nähe Basel
Sprachen
ANSI C
Es stimmt, ich suche nach Erklärungen einzelner Register. Dachte es so wie im Datenblatt. Zu Beginn der Timer sind die Funktionen genannt. Hatte es auch so kopiert. Wollte es so auch für mich machen. Dabei gab es leider das Problem mit der übersetzung. Da steht z.B.

Two Independent Output Compare Units
Double Buffered Output Compare Registers

Das ergibt

Zwei unabhängige Ausgangsvergleichseinheiten
Double Buffered Output Vergleichsregister

Diese übersetzung hilft aber zum Verständnis so richtig weiter. Wie kann man diese Fuktion ins deutsche übersetzen und die Funktion mit wenigen Wörtern nennen?
Deie Erklärungen sind super. Hatte auch mit dem Atm 8 und 32 bereits verglichen. Viele Register und Funktionen sind gleich. Da der Ati 841 aber nur 14 Beine hat sind neue Register dazu gekommen, um z.B. die Ausgangspins zu setzen. Dadurch unterscheiden sich einiges in der Anwendung.
achim
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3.363
61
48
Marwitz
Sprachen
BascomAVR, Assembler
Hatte auch mit dem Atm 8 und 32 bereits verglichen. Viele Register und Funktionen sind gleich.
Früher hatten die Controller weniger interne Peripherie, und diese war weniger komplex. Es gab Timer ohne Output Compare Units, oder welche mit nur einem...
Deswegen konnten zB alle Interrupt-Flags aller Timer in einem Register untergebracht werden und die dazugehörigen Enable-Bits in einem zweiten.
Damals kamen die Controller noch mit 64 I/O-Registern aus (bzw mußten das - für diese 64 Register gibt es spezielle, schnelle Zugriffsinstruktionen - auf extendet I/Os muß wie auf SRAM zugegriffen werden).
Beim 441/841 hat jeder der drei Timer zwei OC-IRQs und einen TOV-IRQ, die beiden 16-Bit-ter zusätzlich je einen IC-IRQ. Das sind zusammen 11 Bits. Konsequenterweise hat man also irgendwann (ist zB bereits beim beim 24/44/84 der Fall) entschieden, jedem Timer ein eigenes Interrupt Mask und ein eigenes Interrupt Flag Register zu spendieren.

Das ganze ist also nichts spezielles beim 441/841 - Du vergleichst lediglich einen … betagten Controller mit wenig konfigurierbaren Timern mit denen eines deutlich … moderneren Controllers (ohne da jetzt irgendwas werten zu wollen, beim 441/841 kann mehr konfiguriert werden, folglich ist das Thema da komplexer und es werden mehr Konfigurationsbits benötigt).

WAS den 441/841 in seiner "Klasse" besonders macht ist die Möglichkeit jedes der sechs Output Compare Units auf bis zu vier von acht Beinen zu schalten.
Da der Ati 841 aber nur 14 Beine hat sind neue Register dazu gekommen,
Nein, er hat mehr Register weil die Peripherie mehr Konfigurationsmöglichkeiten bietet - die geringere Anzahl der Beine führt stattdessen dazu, daß bestimmte Funktionen nicht gleichzeitig genutzt werden können, weil sie um dieselben Beine konkurrieren (ok, einige Funktionen können remapped werden, das betrifft hier aber nur SPI und UART0)
 

achim S.

Mitglied
Premium Benutzer
16 Jan 2010
548
8
18
Nähe Basel
Sprachen
ANSI C
Da habe ich wohl noch einiges zu tun und zu lesen bis ich es verstanden habe. Möchte das ganze ja auch anwenden. Danke
achim
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)